.elementor-1510 .elementor-element.elementor-element-6b21e19{--display:flex;--padding-top:00px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-6b21e19.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-1510 .elementor-element.elementor-element-54260205{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-46592343 img{width:100vw;height:60vh;object-fit:cover;object-position:center center;border-radius:15px 15px 15px 15px;}.elementor-1510 .elementor-element.elementor-element-7d3ff229{--display:flex;}.elementor-1510 .elementor-element.elementor-element-2b11c42c{font-family:var( --e-global-typography-fe3b774-font-family ), Sans-serif;font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1510 .elementor-element.elementor-element-e5071a0{--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;--padding-top:60px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-c378d2b{--divider-border-style:solid;--divider-color:#000;--divider-border-width:2px;--e-transform-rotateZ:-3deg;padding:20px 0px 40px 0px;}.elementor-1510 .elementor-element.elementor-element-c378d2b .elementor-divider-separator{width:100%;}.elementor-1510 .elementor-element.elementor-element-c378d2b .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-1510 .elementor-element.elementor-element-28f9d01{--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:space-between;--align-items:center;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:1;--border-radius:0px 0px 20px 20px;}.elementor-1510 .elementor-element.elementor-element-28f9d01::before, .elementor-1510 .elementor-element.elementor-element-28f9d01 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-28f9d01 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-28f9d01 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-28f9d01 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-28f9d01 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-d23d847{--display:flex;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-63996f3{text-align:left;}.elementor-1510 .elementor-element.elementor-element-63996f3 img{width:100%;height:90px;}.elementor-1510 .elementor-element.elementor-element-61ac09a{--display:flex;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-1510 .elementor-element.elementor-element-4ef73e9{--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;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-4ef73e9.e-con{--align-self:flex-start;}.elementor-1510 .elementor-element.elementor-element-e35b059{--e-transform-translateY:2px;}.elementor-1510 .elementor-element.elementor-element-e35b059.elementor-element{--align-self:center;}.elementor-1510 .elementor-element.elementor-element-e35b059 .elementor-icon-wrapper{text-align:center;}.elementor-1510 .elementor-element.elementor-element-e35b059.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-text );}.elementor-1510 .elementor-element.elementor-element-e35b059.elementor-view-framed .elementor-icon, .elementor-1510 .elementor-element.elementor-element-e35b059.elementor-view-default .elementor-icon{color:var( --e-global-color-text );border-color:var( --e-global-color-text );}.elementor-1510 .elementor-element.elementor-element-e35b059.elementor-view-framed .elementor-icon, .elementor-1510 .elementor-element.elementor-element-e35b059.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-text );}.elementor-1510 .elementor-element.elementor-element-e35b059 .elementor-icon{font-size:12px;}.elementor-1510 .elementor-element.elementor-element-e35b059 .elementor-icon svg{height:12px;}.elementor-1510 .elementor-element.elementor-element-e4200a9 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-2abbec5 .elementor-heading-title{font-family:"Rethink Sans", Sans-serif;font-size:16px;line-height:25px;color:#000000;}.elementor-1510 .elementor-element.elementor-element-98114aa{--display:flex;}.elementor-1510 .elementor-element.elementor-element-d55e315{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-d55e315::before, .elementor-1510 .elementor-element.elementor-element-d55e315 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-d55e315 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-d55e315 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-d55e315 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-d55e315 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-6b00444{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-6b00444::before, .elementor-1510 .elementor-element.elementor-element-6b00444 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-6b00444 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-6b00444 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-6b00444 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-6b00444 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-c73decf .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-f8c038a .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-b3706a7{--display:flex;}.elementor-1510 .elementor-element.elementor-element-9c5902b{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-9c5902b::before, .elementor-1510 .elementor-element.elementor-element-9c5902b > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-9c5902b > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-9c5902b > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-9c5902b > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-9c5902b > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-123bde7{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-123bde7::before, .elementor-1510 .elementor-element.elementor-element-123bde7 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-123bde7 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-123bde7 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-123bde7 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-123bde7 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-c6c69e9 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-d1beb40 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-eb3ddae{--display:flex;}.elementor-1510 .elementor-element.elementor-element-f3276aa{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-f3276aa::before, .elementor-1510 .elementor-element.elementor-element-f3276aa > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-f3276aa > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-f3276aa > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-f3276aa > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-f3276aa > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-fd534fc{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-fd534fc::before, .elementor-1510 .elementor-element.elementor-element-fd534fc > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-fd534fc > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-fd534fc > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-fd534fc > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-fd534fc > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-49abaa8 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-45fd7be .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-1f4c374{--display:flex;}.elementor-1510 .elementor-element.elementor-element-a4e34a8{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-a4e34a8::before, .elementor-1510 .elementor-element.elementor-element-a4e34a8 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-a4e34a8 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-a4e34a8 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-a4e34a8 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-a4e34a8 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-9c6fda4{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-9c6fda4::before, .elementor-1510 .elementor-element.elementor-element-9c6fda4 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-9c6fda4 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-9c6fda4 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-9c6fda4 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-9c6fda4 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-04c6087 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-2367f97 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-d6c95e5{--display:flex;}.elementor-1510 .elementor-element.elementor-element-8267b91{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-8267b91::before, .elementor-1510 .elementor-element.elementor-element-8267b91 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-8267b91 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-8267b91 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-8267b91 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-8267b91 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-b9028dd{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-b9028dd::before, .elementor-1510 .elementor-element.elementor-element-b9028dd > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-b9028dd > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-b9028dd > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-b9028dd > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-b9028dd > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-12ec445 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-517427f .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-182d313{--display:flex;}.elementor-1510 .elementor-element.elementor-element-fbe8aae{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-fbe8aae::before, .elementor-1510 .elementor-element.elementor-element-fbe8aae > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-fbe8aae > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-fbe8aae > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-fbe8aae > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-fbe8aae > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-714aef2{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-714aef2::before, .elementor-1510 .elementor-element.elementor-element-714aef2 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-714aef2 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-714aef2 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-714aef2 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-714aef2 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-ed9b3ec .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-06a3ed3 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-fe3eed6{--display:flex;}.elementor-1510 .elementor-element.elementor-element-aedb171{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-aedb171::before, .elementor-1510 .elementor-element.elementor-element-aedb171 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-aedb171 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-aedb171 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-aedb171 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-aedb171 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-42bed02{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-42bed02::before, .elementor-1510 .elementor-element.elementor-element-42bed02 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-42bed02 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-42bed02 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-42bed02 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-42bed02 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-2020659 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-6992a01 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-9daaf13{--display:flex;}.elementor-1510 .elementor-element.elementor-element-f8e36e1{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-f8e36e1::before, .elementor-1510 .elementor-element.elementor-element-f8e36e1 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-f8e36e1 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-f8e36e1 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-f8e36e1 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-f8e36e1 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-4a4bda5{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-4a4bda5::before, .elementor-1510 .elementor-element.elementor-element-4a4bda5 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-4a4bda5 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-4a4bda5 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-4a4bda5 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-4a4bda5 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-e2cbd2a .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-2dc3cf0 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-61050fa{--display:flex;}.elementor-1510 .elementor-element.elementor-element-9333bcd{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-9333bcd::before, .elementor-1510 .elementor-element.elementor-element-9333bcd > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-9333bcd > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-9333bcd > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-9333bcd > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-9333bcd > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-90e978c{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-90e978c::before, .elementor-1510 .elementor-element.elementor-element-90e978c > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-90e978c > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-90e978c > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-90e978c > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-90e978c > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-95f2872 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-c53f4d8 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-e60bd85{--e-n-carousel-swiper-slides-to-display:4;--e-n-carousel-swiper-slides-gap:10px;--e-n-carousel-slide-height:auto;--e-n-carousel-slide-container-height:100%;--e-n-carousel-arrow-prev-left-align:0%;--e-n-carousel-arrow-prev-translate-x:0px;--e-n-carousel-arrow-prev-left-position:0px;--e-n-carousel-arrow-prev-top-align:50%;--e-n-carousel-arrow-prev-translate-y:-50%;--e-n-carousel-arrow-prev-top-position:0px;--e-n-carousel-arrow-next-right-align:0%;--e-n-carousel-arrow-next-translate-x:0%;--e-n-carousel-arrow-next-right-position:0px;--e-n-carousel-arrow-next-top-align:50%;--e-n-carousel-arrow-next-translate-y:-50%;--e-n-carousel-arrow-next-top-position:0px;--e-n-carousel-arrow-size:40px;}.elementor-1510 .elementor-element.elementor-element-9f53458{--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:flex-end;--align-items:center;}.elementor-1510 .elementor-element.elementor-element-cf1ea59 .elementor-heading-title{font-family:var( --e-global-typography-fe3b774-font-family ), Sans-serif;font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1510 .elementor-element.elementor-element-b30bd9c .elementor-icon-list-item:not(:last-child):after{content:"";height:35%;border-color:var( --e-global-color-text );}.elementor-1510 .elementor-element.elementor-element-b30bd9c .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child):after{border-block-start-style:solid;border-block-start-width:2px;}.elementor-1510 .elementor-element.elementor-element-b30bd9c .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-style:solid;}.elementor-1510 .elementor-element.elementor-element-b30bd9c .elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-width:2px;}.elementor-1510 .elementor-element.elementor-element-b30bd9c .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1510 .elementor-element.elementor-element-b30bd9c .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1510 .elementor-element.elementor-element-b30bd9c{--e-icon-list-icon-size:50px;--e-icon-list-icon-align:center;--e-icon-list-icon-margin:0 calc(var(--e-icon-list-icon-size, 1em) * 0.125);--icon-vertical-align:center;}.elementor-1510 .elementor-element.elementor-element-b30bd9c .elementor-icon-list-icon{padding-inline-end:0px;}.elementor-1510 .elementor-element.elementor-element-b30bd9c .elementor-icon-list-text{transition:color 0.3s;}.elementor-1510 .elementor-element.elementor-element-8767ac1{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-583aa58{--divider-border-style:solid;--divider-color:#000;--divider-border-width:2px;--e-transform-rotateZ:3deg;padding:40px 0px 40px 0px;}.elementor-1510 .elementor-element.elementor-element-583aa58 .elementor-divider-separator{width:100%;}.elementor-1510 .elementor-element.elementor-element-583aa58 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-1510 .elementor-element.elementor-element-b78412d{--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:space-between;--align-items:center;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:1;--border-radius:0px 0px 20px 20px;}.elementor-1510 .elementor-element.elementor-element-b78412d::before, .elementor-1510 .elementor-element.elementor-element-b78412d > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-b78412d > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-b78412d > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-b78412d > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-b78412d > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-4f5d8b4{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-deccd04{text-align:left;}.elementor-1510 .elementor-element.elementor-element-deccd04 img{width:100%;}.elementor-1510 .elementor-element.elementor-element-12eb8b0{--display:flex;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-1510 .elementor-element.elementor-element-c67b761{--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;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-c67b761.e-con{--align-self:flex-start;}.elementor-1510 .elementor-element.elementor-element-adbef0f{--e-transform-translateY:2px;}.elementor-1510 .elementor-element.elementor-element-adbef0f.elementor-element{--align-self:center;}.elementor-1510 .elementor-element.elementor-element-adbef0f .elementor-icon-wrapper{text-align:center;}.elementor-1510 .elementor-element.elementor-element-adbef0f.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-text );}.elementor-1510 .elementor-element.elementor-element-adbef0f.elementor-view-framed .elementor-icon, .elementor-1510 .elementor-element.elementor-element-adbef0f.elementor-view-default .elementor-icon{color:var( --e-global-color-text );border-color:var( --e-global-color-text );}.elementor-1510 .elementor-element.elementor-element-adbef0f.elementor-view-framed .elementor-icon, .elementor-1510 .elementor-element.elementor-element-adbef0f.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-text );}.elementor-1510 .elementor-element.elementor-element-adbef0f .elementor-icon{font-size:12px;}.elementor-1510 .elementor-element.elementor-element-adbef0f .elementor-icon svg{height:12px;}.elementor-1510 .elementor-element.elementor-element-7144ca3 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-a9d93ae .elementor-heading-title{font-family:"Rethink Sans", Sans-serif;font-size:16px;line-height:25px;color:#000000;}.elementor-1510 .elementor-element.elementor-element-8d74adb{--display:flex;}.elementor-1510 .elementor-element.elementor-element-31af908{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-31af908::before, .elementor-1510 .elementor-element.elementor-element-31af908 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-31af908 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-31af908 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-31af908 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-31af908 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-29527d2{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-29527d2::before, .elementor-1510 .elementor-element.elementor-element-29527d2 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-29527d2 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-29527d2 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-29527d2 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-29527d2 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-2836006 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-49763e9 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-2cf5d3b{--display:flex;}.elementor-1510 .elementor-element.elementor-element-6cef77f{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-6cef77f::before, .elementor-1510 .elementor-element.elementor-element-6cef77f > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-6cef77f > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-6cef77f > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-6cef77f > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-6cef77f > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-7bedc67{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-7bedc67::before, .elementor-1510 .elementor-element.elementor-element-7bedc67 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-7bedc67 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-7bedc67 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-7bedc67 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-7bedc67 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-a295136 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-817792b .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-cb4aa04{--display:flex;}.elementor-1510 .elementor-element.elementor-element-de6670f{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-de6670f::before, .elementor-1510 .elementor-element.elementor-element-de6670f > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-de6670f > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-de6670f > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-de6670f > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-de6670f > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-5409148{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-5409148::before, .elementor-1510 .elementor-element.elementor-element-5409148 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-5409148 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-5409148 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-5409148 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-5409148 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-aeedf84 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-2212ddb .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-ff59c24{--e-n-carousel-swiper-slides-gap:10px;--e-n-carousel-slide-height:auto;--e-n-carousel-slide-container-height:100%;--e-n-carousel-arrow-prev-left-align:0%;--e-n-carousel-arrow-prev-translate-x:0px;--e-n-carousel-arrow-prev-left-position:0px;--e-n-carousel-arrow-prev-top-align:50%;--e-n-carousel-arrow-prev-translate-y:-50%;--e-n-carousel-arrow-prev-top-position:0px;--e-n-carousel-arrow-next-right-align:0%;--e-n-carousel-arrow-next-translate-x:0%;--e-n-carousel-arrow-next-right-position:0px;--e-n-carousel-arrow-next-top-align:50%;--e-n-carousel-arrow-next-translate-y:-50%;--e-n-carousel-arrow-next-top-position:0px;--e-n-carousel-arrow-size:40px;}.elementor-1510 .elementor-element.elementor-element-a96870f{--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:flex-end;--align-items:center;}.elementor-1510 .elementor-element.elementor-element-5347d21 .elementor-heading-title{font-family:var( --e-global-typography-fe3b774-font-family ), Sans-serif;font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1510 .elementor-element.elementor-element-181557c .elementor-icon-list-item:not(:last-child):after{content:"";height:35%;border-color:var( --e-global-color-text );}.elementor-1510 .elementor-element.elementor-element-181557c .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child):after{border-block-start-style:solid;border-block-start-width:2px;}.elementor-1510 .elementor-element.elementor-element-181557c .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-style:solid;}.elementor-1510 .elementor-element.elementor-element-181557c .elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-width:2px;}.elementor-1510 .elementor-element.elementor-element-181557c .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1510 .elementor-element.elementor-element-181557c .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1510 .elementor-element.elementor-element-181557c{--e-icon-list-icon-size:50px;--e-icon-list-icon-align:center;--e-icon-list-icon-margin:0 calc(var(--e-icon-list-icon-size, 1em) * 0.125);--icon-vertical-align:center;}.elementor-1510 .elementor-element.elementor-element-181557c .elementor-icon-list-icon{padding-inline-end:0px;}.elementor-1510 .elementor-element.elementor-element-181557c .elementor-icon-list-text{transition:color 0.3s;}.elementor-1510 .elementor-element.elementor-element-9f0acbd{--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;--padding-top:60px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-2d3fd6f{--divider-border-style:solid;--divider-color:#000;--divider-border-width:2px;--e-transform-rotateZ:-3deg;padding:40px 0px 40px 0px;}.elementor-1510 .elementor-element.elementor-element-2d3fd6f .elementor-divider-separator{width:100%;}.elementor-1510 .elementor-element.elementor-element-2d3fd6f .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-1510 .elementor-element.elementor-element-21206f2{--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:space-between;--align-items:center;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:1;--border-radius:0px 0px 20px 20px;}.elementor-1510 .elementor-element.elementor-element-21206f2::before, .elementor-1510 .elementor-element.elementor-element-21206f2 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-21206f2 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-21206f2 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-21206f2 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-21206f2 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-ec0637c{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-d454483{text-align:left;}.elementor-1510 .elementor-element.elementor-element-d454483 img{width:100%;}.elementor-1510 .elementor-element.elementor-element-a0652f3{--display:flex;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-1510 .elementor-element.elementor-element-08a2cef{--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;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-08a2cef.e-con{--align-self:flex-start;}.elementor-1510 .elementor-element.elementor-element-0eb0994{--e-transform-translateY:2px;}.elementor-1510 .elementor-element.elementor-element-0eb0994.elementor-element{--align-self:center;}.elementor-1510 .elementor-element.elementor-element-0eb0994 .elementor-icon-wrapper{text-align:center;}.elementor-1510 .elementor-element.elementor-element-0eb0994.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-text );}.elementor-1510 .elementor-element.elementor-element-0eb0994.elementor-view-framed .elementor-icon, .elementor-1510 .elementor-element.elementor-element-0eb0994.elementor-view-default .elementor-icon{color:var( --e-global-color-text );border-color:var( --e-global-color-text );}.elementor-1510 .elementor-element.elementor-element-0eb0994.elementor-view-framed .elementor-icon, .elementor-1510 .elementor-element.elementor-element-0eb0994.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-text );}.elementor-1510 .elementor-element.elementor-element-0eb0994 .elementor-icon{font-size:12px;}.elementor-1510 .elementor-element.elementor-element-0eb0994 .elementor-icon svg{height:12px;}.elementor-1510 .elementor-element.elementor-element-b33c576 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-b335061 .elementor-heading-title{font-family:"Rethink Sans", Sans-serif;font-size:16px;line-height:25px;color:#000000;}.elementor-1510 .elementor-element.elementor-element-755ff4c{--display:flex;}.elementor-1510 .elementor-element.elementor-element-4066d72{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-4066d72::before, .elementor-1510 .elementor-element.elementor-element-4066d72 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-4066d72 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-4066d72 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-4066d72 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-4066d72 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-a845cb3{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-a845cb3::before, .elementor-1510 .elementor-element.elementor-element-a845cb3 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-a845cb3 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-a845cb3 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-a845cb3 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-a845cb3 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-09a213c .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-4a7c81d .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-5b75773{--display:flex;}.elementor-1510 .elementor-element.elementor-element-c5de2a2{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-c5de2a2::before, .elementor-1510 .elementor-element.elementor-element-c5de2a2 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-c5de2a2 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-c5de2a2 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-c5de2a2 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-c5de2a2 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-d141ea9{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-d141ea9::before, .elementor-1510 .elementor-element.elementor-element-d141ea9 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-d141ea9 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-d141ea9 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-d141ea9 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-d141ea9 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-1f4b621 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-6eeeb14 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-87f29b5{--display:flex;}.elementor-1510 .elementor-element.elementor-element-1b7cdfb{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-1b7cdfb::before, .elementor-1510 .elementor-element.elementor-element-1b7cdfb > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-1b7cdfb > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-1b7cdfb > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-1b7cdfb > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-1b7cdfb > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-498ce1a{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-498ce1a::before, .elementor-1510 .elementor-element.elementor-element-498ce1a > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-498ce1a > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-498ce1a > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-498ce1a > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-498ce1a > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-f2c1f54 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-c27922f .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-e49e43a{--display:flex;}.elementor-1510 .elementor-element.elementor-element-9d06671{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-9d06671::before, .elementor-1510 .elementor-element.elementor-element-9d06671 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-9d06671 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-9d06671 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-9d06671 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-9d06671 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-db62d74{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-db62d74::before, .elementor-1510 .elementor-element.elementor-element-db62d74 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-db62d74 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-db62d74 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-db62d74 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-db62d74 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-fd6fa97 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-eb296f9 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-33eb1c5{--display:flex;}.elementor-1510 .elementor-element.elementor-element-4c4e6b1{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-4c4e6b1::before, .elementor-1510 .elementor-element.elementor-element-4c4e6b1 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-4c4e6b1 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-4c4e6b1 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-4c4e6b1 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-4c4e6b1 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-0964cee{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-0964cee::before, .elementor-1510 .elementor-element.elementor-element-0964cee > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-0964cee > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-0964cee > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-0964cee > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-0964cee > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-2f9172d .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-7b5e20b .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-4bb7bb5{--display:flex;}.elementor-1510 .elementor-element.elementor-element-797f1b5{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-797f1b5::before, .elementor-1510 .elementor-element.elementor-element-797f1b5 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-797f1b5 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-797f1b5 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-797f1b5 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-797f1b5 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-269b662{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-269b662::before, .elementor-1510 .elementor-element.elementor-element-269b662 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-269b662 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-269b662 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-269b662 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-269b662 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-281b4ae .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-5121a6b .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-2bf44d3{--display:flex;}.elementor-1510 .elementor-element.elementor-element-5c7e572{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-5c7e572::before, .elementor-1510 .elementor-element.elementor-element-5c7e572 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-5c7e572 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-5c7e572 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-5c7e572 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-5c7e572 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-268b5c9{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-268b5c9::before, .elementor-1510 .elementor-element.elementor-element-268b5c9 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-268b5c9 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-268b5c9 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-268b5c9 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-268b5c9 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-6318401 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-a1c021c .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-37cd9e3{--display:flex;}.elementor-1510 .elementor-element.elementor-element-6505d1b{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-6505d1b::before, .elementor-1510 .elementor-element.elementor-element-6505d1b > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-6505d1b > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-6505d1b > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-6505d1b > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-6505d1b > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-03fcdaa{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-03fcdaa::before, .elementor-1510 .elementor-element.elementor-element-03fcdaa > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-03fcdaa > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-03fcdaa > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-03fcdaa > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-03fcdaa > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-da85297 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-5ea6430 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-dd19a90{--display:flex;}.elementor-1510 .elementor-element.elementor-element-22fbc1f{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-22fbc1f::before, .elementor-1510 .elementor-element.elementor-element-22fbc1f > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-22fbc1f > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-22fbc1f > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-22fbc1f > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-22fbc1f > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-cd20ec6{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-cd20ec6::before, .elementor-1510 .elementor-element.elementor-element-cd20ec6 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-cd20ec6 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-cd20ec6 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-cd20ec6 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-cd20ec6 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-88a49ac .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-5482ae2 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-7d96ec9{--display:flex;}.elementor-1510 .elementor-element.elementor-element-08809c2{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-08809c2::before, .elementor-1510 .elementor-element.elementor-element-08809c2 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-08809c2 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-08809c2 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-08809c2 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-08809c2 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-c8a5737{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-c8a5737::before, .elementor-1510 .elementor-element.elementor-element-c8a5737 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-c8a5737 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-c8a5737 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-c8a5737 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-c8a5737 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-54d1b52 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-c3c2e2b .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-a509334{--e-n-carousel-swiper-slides-to-display:4;--e-n-carousel-swiper-slides-gap:10px;--e-n-carousel-slide-height:auto;--e-n-carousel-slide-container-height:100%;--e-n-carousel-arrow-prev-left-align:0%;--e-n-carousel-arrow-prev-translate-x:0px;--e-n-carousel-arrow-prev-left-position:0px;--e-n-carousel-arrow-prev-top-align:50%;--e-n-carousel-arrow-prev-translate-y:-50%;--e-n-carousel-arrow-prev-top-position:0px;--e-n-carousel-arrow-next-right-align:0%;--e-n-carousel-arrow-next-translate-x:0%;--e-n-carousel-arrow-next-right-position:0px;--e-n-carousel-arrow-next-top-align:50%;--e-n-carousel-arrow-next-translate-y:-50%;--e-n-carousel-arrow-next-top-position:0px;--e-n-carousel-arrow-size:40px;}.elementor-1510 .elementor-element.elementor-element-bd737cc{--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:flex-end;--align-items:center;}.elementor-1510 .elementor-element.elementor-element-4e6e63d .elementor-heading-title{font-family:var( --e-global-typography-fe3b774-font-family ), Sans-serif;font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1510 .elementor-element.elementor-element-4b21757 .elementor-icon-list-item:not(:last-child):after{content:"";height:35%;border-color:var( --e-global-color-text );}.elementor-1510 .elementor-element.elementor-element-4b21757 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child):after{border-block-start-style:solid;border-block-start-width:2px;}.elementor-1510 .elementor-element.elementor-element-4b21757 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-style:solid;}.elementor-1510 .elementor-element.elementor-element-4b21757 .elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-width:2px;}.elementor-1510 .elementor-element.elementor-element-4b21757 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1510 .elementor-element.elementor-element-4b21757 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1510 .elementor-element.elementor-element-4b21757{--e-icon-list-icon-size:50px;--e-icon-list-icon-align:center;--e-icon-list-icon-margin:0 calc(var(--e-icon-list-icon-size, 1em) * 0.125);--icon-vertical-align:center;}.elementor-1510 .elementor-element.elementor-element-4b21757 .elementor-icon-list-icon{padding-inline-end:0px;}.elementor-1510 .elementor-element.elementor-element-4b21757 .elementor-icon-list-text{transition:color 0.3s;}.elementor-1510 .elementor-element.elementor-element-7822d32{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-c20716e{--divider-border-style:solid;--divider-color:#000;--divider-border-width:2px;--e-transform-rotateZ:3deg;padding:40px 0px 40px 0px;}.elementor-1510 .elementor-element.elementor-element-c20716e .elementor-divider-separator{width:100%;}.elementor-1510 .elementor-element.elementor-element-c20716e .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-1510 .elementor-element.elementor-element-4c8a65e{--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:space-between;--align-items:center;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:1;--border-radius:0px 0px 20px 20px;}.elementor-1510 .elementor-element.elementor-element-4c8a65e::before, .elementor-1510 .elementor-element.elementor-element-4c8a65e > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-4c8a65e > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-4c8a65e > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-4c8a65e > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-4c8a65e > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-612327d{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-b1b4a13{text-align:left;}.elementor-1510 .elementor-element.elementor-element-b1b4a13 img{width:100%;}.elementor-1510 .elementor-element.elementor-element-bcdbfcd{--display:flex;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-1510 .elementor-element.elementor-element-b4b49d7{--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;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-b4b49d7.e-con{--align-self:flex-start;}.elementor-1510 .elementor-element.elementor-element-18738e2{--e-transform-translateY:2px;}.elementor-1510 .elementor-element.elementor-element-18738e2.elementor-element{--align-self:center;}.elementor-1510 .elementor-element.elementor-element-18738e2 .elementor-icon-wrapper{text-align:center;}.elementor-1510 .elementor-element.elementor-element-18738e2.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-text );}.elementor-1510 .elementor-element.elementor-element-18738e2.elementor-view-framed .elementor-icon, .elementor-1510 .elementor-element.elementor-element-18738e2.elementor-view-default .elementor-icon{color:var( --e-global-color-text );border-color:var( --e-global-color-text );}.elementor-1510 .elementor-element.elementor-element-18738e2.elementor-view-framed .elementor-icon, .elementor-1510 .elementor-element.elementor-element-18738e2.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-text );}.elementor-1510 .elementor-element.elementor-element-18738e2 .elementor-icon{font-size:12px;}.elementor-1510 .elementor-element.elementor-element-18738e2 .elementor-icon svg{height:12px;}.elementor-1510 .elementor-element.elementor-element-dedbd4e .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-8fa4d09 .elementor-heading-title{font-family:"Rethink Sans", Sans-serif;font-size:16px;line-height:25px;color:#000000;}.elementor-1510 .elementor-element.elementor-element-c7b80eb{--display:flex;}.elementor-1510 .elementor-element.elementor-element-1836f19{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-1836f19::before, .elementor-1510 .elementor-element.elementor-element-1836f19 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-1836f19 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-1836f19 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-1836f19 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-1836f19 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-e366307{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-e366307::before, .elementor-1510 .elementor-element.elementor-element-e366307 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-e366307 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-e366307 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-e366307 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-e366307 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-6548273 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-4895799 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-04d1ea4{--display:flex;}.elementor-1510 .elementor-element.elementor-element-8435a1d{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-8435a1d::before, .elementor-1510 .elementor-element.elementor-element-8435a1d > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-8435a1d > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-8435a1d > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-8435a1d > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-8435a1d > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-0a20b31{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-0a20b31::before, .elementor-1510 .elementor-element.elementor-element-0a20b31 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-0a20b31 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-0a20b31 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-0a20b31 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-0a20b31 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-0764f31 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-fdb2afe .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-46beba9{--display:flex;}.elementor-1510 .elementor-element.elementor-element-dfe958d{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-dfe958d::before, .elementor-1510 .elementor-element.elementor-element-dfe958d > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-dfe958d > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-dfe958d > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-dfe958d > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-dfe958d > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-22f0197{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-22f0197::before, .elementor-1510 .elementor-element.elementor-element-22f0197 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-22f0197 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-22f0197 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-22f0197 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-22f0197 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-9af568c .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-482207e .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-a49652c{--display:flex;}.elementor-1510 .elementor-element.elementor-element-dfbc89e{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-dfbc89e::before, .elementor-1510 .elementor-element.elementor-element-dfbc89e > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-dfbc89e > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-dfbc89e > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-dfbc89e > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-dfbc89e > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-3cd0ec8{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-3cd0ec8::before, .elementor-1510 .elementor-element.elementor-element-3cd0ec8 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-3cd0ec8 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-3cd0ec8 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-3cd0ec8 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-3cd0ec8 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-ad47d49 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-ef103cf .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-fc44565{--display:flex;}.elementor-1510 .elementor-element.elementor-element-18b4b3b{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-18b4b3b::before, .elementor-1510 .elementor-element.elementor-element-18b4b3b > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-18b4b3b > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-18b4b3b > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-18b4b3b > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-18b4b3b > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-5e41637{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-5e41637::before, .elementor-1510 .elementor-element.elementor-element-5e41637 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-5e41637 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-5e41637 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-5e41637 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-5e41637 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-6d6b1a5 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-cc3975f .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-d635ee9{--display:flex;}.elementor-1510 .elementor-element.elementor-element-71be3be{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-71be3be::before, .elementor-1510 .elementor-element.elementor-element-71be3be > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-71be3be > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-71be3be > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-71be3be > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-71be3be > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-80a92a4{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-80a92a4::before, .elementor-1510 .elementor-element.elementor-element-80a92a4 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-80a92a4 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-80a92a4 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-80a92a4 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-80a92a4 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-2409d5a .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-a4bd680 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-d5a00c7{--display:flex;}.elementor-1510 .elementor-element.elementor-element-bcf4c44{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-bcf4c44::before, .elementor-1510 .elementor-element.elementor-element-bcf4c44 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-bcf4c44 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-bcf4c44 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-bcf4c44 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-bcf4c44 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-bf811da{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-bf811da::before, .elementor-1510 .elementor-element.elementor-element-bf811da > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-bf811da > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-bf811da > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-bf811da > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-bf811da > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-8b1a5d1 .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-f19f818 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-274fe5a{--display:flex;}.elementor-1510 .elementor-element.elementor-element-3be6e03{--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;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-3be6e03::before, .elementor-1510 .elementor-element.elementor-element-3be6e03 > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-3be6e03 > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-3be6e03 > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-3be6e03 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-3be6e03 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-46132eb{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1510 .elementor-element.elementor-element-46132eb::before, .elementor-1510 .elementor-element.elementor-element-46132eb > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-46132eb > .e-con-inner > .elementor-background-video-container::before, .elementor-1510 .elementor-element.elementor-element-46132eb > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-46132eb > .e-con-inner > .elementor-background-slideshow::before, .elementor-1510 .elementor-element.elementor-element-46132eb > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1510 .elementor-element.elementor-element-944949d .elementor-heading-title{font-family:var( --e-global-typography-9dfc487-font-family ), Sans-serif;font-size:var( --e-global-typography-9dfc487-font-size );font-weight:var( --e-global-typography-9dfc487-font-weight );}.elementor-1510 .elementor-element.elementor-element-d704230 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1510 .elementor-element.elementor-element-155a748{--e-n-carousel-swiper-slides-to-display:4;--e-n-carousel-swiper-slides-gap:10px;--e-n-carousel-slide-height:auto;--e-n-carousel-slide-container-height:100%;--e-n-carousel-arrow-prev-left-align:0%;--e-n-carousel-arrow-prev-translate-x:0px;--e-n-carousel-arrow-prev-left-position:0px;--e-n-carousel-arrow-prev-top-align:50%;--e-n-carousel-arrow-prev-translate-y:-50%;--e-n-carousel-arrow-prev-top-position:0px;--e-n-carousel-arrow-next-right-align:0%;--e-n-carousel-arrow-next-translate-x:0%;--e-n-carousel-arrow-next-right-position:0px;--e-n-carousel-arrow-next-top-align:50%;--e-n-carousel-arrow-next-translate-y:-50%;--e-n-carousel-arrow-next-top-position:0px;--e-n-carousel-arrow-size:40px;}.elementor-1510 .elementor-element.elementor-element-0d59281{--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:flex-end;--align-items:center;}.elementor-1510 .elementor-element.elementor-element-5f57730 .elementor-heading-title{font-family:var( --e-global-typography-fe3b774-font-family ), Sans-serif;font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1510 .elementor-element.elementor-element-e286e16 .elementor-icon-list-item:not(:last-child):after{content:"";height:35%;border-color:var( --e-global-color-text );}.elementor-1510 .elementor-element.elementor-element-e286e16 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child):after{border-block-start-style:solid;border-block-start-width:2px;}.elementor-1510 .elementor-element.elementor-element-e286e16 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-style:solid;}.elementor-1510 .elementor-element.elementor-element-e286e16 .elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-width:2px;}.elementor-1510 .elementor-element.elementor-element-e286e16 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1510 .elementor-element.elementor-element-e286e16 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1510 .elementor-element.elementor-element-e286e16{--e-icon-list-icon-size:50px;--e-icon-list-icon-align:center;--e-icon-list-icon-margin:0 calc(var(--e-icon-list-icon-size, 1em) * 0.125);--icon-vertical-align:center;}.elementor-1510 .elementor-element.elementor-element-e286e16 .elementor-icon-list-icon{padding-inline-end:0px;}.elementor-1510 .elementor-element.elementor-element-e286e16 .elementor-icon-list-text{transition:color 0.3s;}@media(min-width:768px){.elementor-1510 .elementor-element.elementor-element-7d3ff229{--width:70%;}.elementor-1510 .elementor-element.elementor-element-d23d847{--width:15%;}.elementor-1510 .elementor-element.elementor-element-61ac09a{--width:50%;}.elementor-1510 .elementor-element.elementor-element-4f5d8b4{--width:15%;}.elementor-1510 .elementor-element.elementor-element-12eb8b0{--width:50%;}.elementor-1510 .elementor-element.elementor-element-ec0637c{--width:15%;}.elementor-1510 .elementor-element.elementor-element-a0652f3{--width:50%;}.elementor-1510 .elementor-element.elementor-element-612327d{--width:10%;}.elementor-1510 .elementor-element.elementor-element-bcdbfcd{--width:50%;}}@media(max-width:1024px) and (min-width:768px){.elementor-1510 .elementor-element.elementor-element-d23d847{--width:60px;}.elementor-1510 .elementor-element.elementor-element-4f5d8b4{--width:80px;}.elementor-1510 .elementor-element.elementor-element-ec0637c{--width:80px;}.elementor-1510 .elementor-element.elementor-element-612327d{--width:80px;}}@media(max-width:1024px){.elementor-1510 .elementor-element.elementor-element-2b11c42c{font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1510 .elementor-element.elementor-element-28f9d01{--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:15px;--padding-bottom:10px;--padding-left:20px;--padding-right:20px;}.elementor-1510 .elementor-element.elementor-element-d23d847{--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:10px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-63996f3{text-align:left;}.elementor-1510 .elementor-element.elementor-element-63996f3 img{width:100%;height:80px;}.elementor-1510 .elementor-element.elementor-element-61ac09a{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-e4200a9 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-6b00444{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-c73decf .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-123bde7{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-c6c69e9 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-fd534fc{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-49abaa8 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-9c6fda4{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-04c6087 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-b9028dd{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-12ec445 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-714aef2{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-ed9b3ec .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-42bed02{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-2020659 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-4a4bda5{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-e2cbd2a .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-90e978c{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-95f2872 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-e60bd85{--e-n-carousel-swiper-slides-to-display:2;}.elementor-1510 .elementor-element.elementor-element-cf1ea59 .elementor-heading-title{font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1510 .elementor-element.elementor-element-b78412d{--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:15px;--padding-bottom:10px;--padding-left:20px;--padding-right:20px;}.elementor-1510 .elementor-element.elementor-element-4f5d8b4{--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:10px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-deccd04{text-align:left;}.elementor-1510 .elementor-element.elementor-element-deccd04 img{width:100%;height:50px;}.elementor-1510 .elementor-element.elementor-element-12eb8b0{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-7144ca3 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-29527d2{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-2836006 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-7bedc67{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-a295136 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-5409148{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-aeedf84 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-ff59c24{--e-n-carousel-swiper-slides-to-display:2;}.elementor-1510 .elementor-element.elementor-element-5347d21 .elementor-heading-title{font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1510 .elementor-element.elementor-element-21206f2{--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:15px;--padding-bottom:10px;--padding-left:20px;--padding-right:20px;}.elementor-1510 .elementor-element.elementor-element-ec0637c{--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:10px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-d454483{text-align:left;}.elementor-1510 .elementor-element.elementor-element-d454483 img{width:100%;height:50px;}.elementor-1510 .elementor-element.elementor-element-a0652f3{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-b33c576 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-a845cb3{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-09a213c .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-d141ea9{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-1f4b621 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-498ce1a{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-f2c1f54 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-db62d74{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-fd6fa97 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-0964cee{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-2f9172d .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-269b662{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-281b4ae .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-268b5c9{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-6318401 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-03fcdaa{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-da85297 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-cd20ec6{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-88a49ac .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-c8a5737{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-54d1b52 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-a509334{--e-n-carousel-swiper-slides-to-display:2;}.elementor-1510 .elementor-element.elementor-element-4e6e63d .elementor-heading-title{font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1510 .elementor-element.elementor-element-4c8a65e{--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:15px;--padding-bottom:10px;--padding-left:20px;--padding-right:20px;}.elementor-1510 .elementor-element.elementor-element-612327d{--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:10px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-b1b4a13{text-align:left;}.elementor-1510 .elementor-element.elementor-element-b1b4a13 img{width:100%;height:90px;}.elementor-1510 .elementor-element.elementor-element-bcdbfcd{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-dedbd4e .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-e366307{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-6548273 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-0a20b31{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-0764f31 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-22f0197{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-9af568c .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-3cd0ec8{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-ad47d49 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-5e41637{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-6d6b1a5 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-80a92a4{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-2409d5a .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-bf811da{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-8b1a5d1 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-46132eb{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-944949d .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-155a748{--e-n-carousel-swiper-slides-to-display:2;}.elementor-1510 .elementor-element.elementor-element-5f57730 .elementor-heading-title{font-size:var( --e-global-typography-fe3b774-font-size );}}@media(max-width:767px){.elementor-1510 .elementor-element.elementor-element-6b21e19{--width:285px;}.elementor-1510 .elementor-element.elementor-element-54260205{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-2b11c42c{font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1510 .elementor-element.elementor-element-e5071a0{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-28f9d01{--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;--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-1510 .elementor-element.elementor-element-d23d847{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-63996f3{text-align:left;}.elementor-1510 .elementor-element.elementor-element-63996f3 img{width:100%;height:90px;}.elementor-1510 .elementor-element.elementor-element-e4200a9 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-2abbec5 .elementor-heading-title{font-size:16px;}.elementor-1510 .elementor-element.elementor-element-c73decf .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-c6c69e9 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-49abaa8 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-04c6087 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-12ec445 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-ed9b3ec .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-2020659 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-e2cbd2a .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-95f2872 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-e60bd85{--e-n-carousel-swiper-slides-to-display:1;}.elementor-1510 .elementor-element.elementor-element-cf1ea59 .elementor-heading-title{font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1510 .elementor-element.elementor-element-8767ac1{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-583aa58{--e-transform-rotateZ:-3deg;}.elementor-1510 .elementor-element.elementor-element-b78412d{--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;--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-1510 .elementor-element.elementor-element-4f5d8b4{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-deccd04{text-align:left;}.elementor-1510 .elementor-element.elementor-element-deccd04 img{width:100%;height:80px;}.elementor-1510 .elementor-element.elementor-element-7144ca3 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-a9d93ae .elementor-heading-title{font-size:16px;}.elementor-1510 .elementor-element.elementor-element-2836006 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-a295136 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-aeedf84 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-ff59c24{--e-n-carousel-swiper-slides-to-display:1;}.elementor-1510 .elementor-element.elementor-element-5347d21 .elementor-heading-title{font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1510 .elementor-element.elementor-element-9f0acbd{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-21206f2{--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;--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-1510 .elementor-element.elementor-element-ec0637c{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-d454483{text-align:left;}.elementor-1510 .elementor-element.elementor-element-d454483 img{width:100%;height:40px;}.elementor-1510 .elementor-element.elementor-element-b33c576 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-b335061 .elementor-heading-title{font-size:16px;}.elementor-1510 .elementor-element.elementor-element-09a213c .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-1f4b621 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-f2c1f54 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-fd6fa97 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-2f9172d .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-281b4ae .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-6318401 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-da85297 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-88a49ac .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-54d1b52 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-a509334{--e-n-carousel-swiper-slides-to-display:1;}.elementor-1510 .elementor-element.elementor-element-4e6e63d .elementor-heading-title{font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1510 .elementor-element.elementor-element-7822d32{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-c20716e{--e-transform-rotateZ:-3deg;}.elementor-1510 .elementor-element.elementor-element-4c8a65e{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-1510 .elementor-element.elementor-element-612327d{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1510 .elementor-element.elementor-element-b1b4a13{text-align:left;}.elementor-1510 .elementor-element.elementor-element-b1b4a13 img{width:100%;}.elementor-1510 .elementor-element.elementor-element-dedbd4e .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-8fa4d09 .elementor-heading-title{font-size:16px;}.elementor-1510 .elementor-element.elementor-element-6548273 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-0764f31 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-9af568c .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-ad47d49 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-6d6b1a5 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-2409d5a .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-8b1a5d1 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-944949d .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1510 .elementor-element.elementor-element-155a748{--e-n-carousel-swiper-slides-to-display:1;}.elementor-1510 .elementor-element.elementor-element-5f57730 .elementor-heading-title{font-size:var( --e-global-typography-fe3b774-font-size );}}/* Start custom CSS for heading, class: .elementor-element-2abbec5 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-28f9d01 *//* Unified content container */
.logo-blog-card-content {
    display: flex;
    flex-direction: column;
    padding: 15 20 10 20px;
}

/* Unified logo container */
.blog-logo {
    display: flex;
    align-items: start;
    justify-content: center;
}


.blog-text {
    padding: 0px
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f8c038a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d55e315 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 350px;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}

/* Mobile Media Query - 3:4 Aspect Ratio */
@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 133.33%; /* 3:4 ratio (4/3 * 100 = 133.33%) */
        position: relative;
    }
    
    /* Adjust padding for smaller screens */
    .hover-text {
        padding: 24px;
    }
    
    /* Scale down text sizes */
    .hover-text .elementor-heading-title {
        font-size: 22px;
        margin-bottom: 12px;
        padding: 1px 30px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 14px;
        line-height: 1.5;
        padding: 1px 30px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 4 / 3 !important;
    }
}

/* Extra small screens */
@media (max-width: 480px) {
    .hover-text {
        padding: 20px;
    }
    
    .hover-text .elementor-heading-title {
        font-size: 20px;
        margin-bottom: 10px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 13px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 3 / 4 !important;
    }

}


/* Add this below your existing CSS */

.image-container--4-3 {
    width: 100%; /* Or 200px as you mentioned */
    height: auto; 
    aspect-ratio: 7/5; 

/* Fallback for older browsers or if using the padding-trick */
@supports not (aspect-ratio: 4 / 3) {
    .image-container--4-3 {
        height: 0;
        padding-bottom: 75%; /* (3/4)*100 = 75% */
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d1beb40 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9c5902b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-45fd7be */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f3276aa *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2367f97 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a4e34a8 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-517427f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8267b91 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-06a3ed3 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-fbe8aae *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6992a01 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-aedb171 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2dc3cf0 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f8e36e1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c53f4d8 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9333bcd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f8c038a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d55e315 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 350px;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}

/* Mobile Media Query - 3:4 Aspect Ratio */
@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 133.33%; /* 3:4 ratio (4/3 * 100 = 133.33%) */
        position: relative;
    }
    
    /* Adjust padding for smaller screens */
    .hover-text {
        padding: 24px;
    }
    
    /* Scale down text sizes */
    .hover-text .elementor-heading-title {
        font-size: 22px;
        margin-bottom: 12px;
        padding: 1px 30px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 14px;
        line-height: 1.5;
        padding: 1px 30px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 4 / 3 !important;
    }
}

/* Extra small screens */
@media (max-width: 480px) {
    .hover-text {
        padding: 20px;
    }
    
    .hover-text .elementor-heading-title {
        font-size: 20px;
        margin-bottom: 10px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 13px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 3 / 4 !important;
    }

}


/* Add this below your existing CSS */

.image-container--4-3 {
    width: 100%; /* Or 200px as you mentioned */
    height: auto; 
    aspect-ratio: 7/5; 

/* Fallback for older browsers or if using the padding-trick */
@supports not (aspect-ratio: 4 / 3) {
    .image-container--4-3 {
        height: 0;
        padding-bottom: 75%; /* (3/4)*100 = 75% */
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d1beb40 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9c5902b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-45fd7be */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f3276aa *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2367f97 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a4e34a8 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-517427f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8267b91 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-06a3ed3 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-fbe8aae *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6992a01 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-aedb171 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2dc3cf0 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f8e36e1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c53f4d8 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9333bcd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f8c038a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d55e315 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 350px;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}

/* Mobile Media Query - 3:4 Aspect Ratio */
@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 133.33%; /* 3:4 ratio (4/3 * 100 = 133.33%) */
        position: relative;
    }
    
    /* Adjust padding for smaller screens */
    .hover-text {
        padding: 24px;
    }
    
    /* Scale down text sizes */
    .hover-text .elementor-heading-title {
        font-size: 22px;
        margin-bottom: 12px;
        padding: 1px 30px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 14px;
        line-height: 1.5;
        padding: 1px 30px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 4 / 3 !important;
    }
}

/* Extra small screens */
@media (max-width: 480px) {
    .hover-text {
        padding: 20px;
    }
    
    .hover-text .elementor-heading-title {
        font-size: 20px;
        margin-bottom: 10px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 13px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 3 / 4 !important;
    }

}


/* Add this below your existing CSS */

.image-container--4-3 {
    width: 100%; /* Or 200px as you mentioned */
    height: auto; 
    aspect-ratio: 7/5; 

/* Fallback for older browsers or if using the padding-trick */
@supports not (aspect-ratio: 4 / 3) {
    .image-container--4-3 {
        height: 0;
        padding-bottom: 75%; /* (3/4)*100 = 75% */
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d1beb40 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9c5902b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-45fd7be */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f3276aa *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2367f97 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a4e34a8 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-517427f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8267b91 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-06a3ed3 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-fbe8aae *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6992a01 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-aedb171 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2dc3cf0 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f8e36e1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c53f4d8 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9333bcd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f8c038a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d55e315 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 350px;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}

/* Mobile Media Query - 3:4 Aspect Ratio */
@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 133.33%; /* 3:4 ratio (4/3 * 100 = 133.33%) */
        position: relative;
    }
    
    /* Adjust padding for smaller screens */
    .hover-text {
        padding: 24px;
    }
    
    /* Scale down text sizes */
    .hover-text .elementor-heading-title {
        font-size: 22px;
        margin-bottom: 12px;
        padding: 1px 30px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 14px;
        line-height: 1.5;
        padding: 1px 30px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 4 / 3 !important;
    }
}

/* Extra small screens */
@media (max-width: 480px) {
    .hover-text {
        padding: 20px;
    }
    
    .hover-text .elementor-heading-title {
        font-size: 20px;
        margin-bottom: 10px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 13px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 3 / 4 !important;
    }

}


/* Add this below your existing CSS */

.image-container--4-3 {
    width: 100%; /* Or 200px as you mentioned */
    height: auto; 
    aspect-ratio: 7/5; 

/* Fallback for older browsers or if using the padding-trick */
@supports not (aspect-ratio: 4 / 3) {
    .image-container--4-3 {
        height: 0;
        padding-bottom: 75%; /* (3/4)*100 = 75% */
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d1beb40 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9c5902b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-45fd7be */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f3276aa *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2367f97 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a4e34a8 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-517427f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8267b91 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-06a3ed3 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-fbe8aae *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6992a01 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-aedb171 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2dc3cf0 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f8e36e1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c53f4d8 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9333bcd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f8c038a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d55e315 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 350px;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}

/* Mobile Media Query - 3:4 Aspect Ratio */
@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 133.33%; /* 3:4 ratio (4/3 * 100 = 133.33%) */
        position: relative;
    }
    
    /* Adjust padding for smaller screens */
    .hover-text {
        padding: 24px;
    }
    
    /* Scale down text sizes */
    .hover-text .elementor-heading-title {
        font-size: 22px;
        margin-bottom: 12px;
        padding: 1px 30px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 14px;
        line-height: 1.5;
        padding: 1px 30px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 4 / 3 !important;
    }
}

/* Extra small screens */
@media (max-width: 480px) {
    .hover-text {
        padding: 20px;
    }
    
    .hover-text .elementor-heading-title {
        font-size: 20px;
        margin-bottom: 10px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 13px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 3 / 4 !important;
    }

}


/* Add this below your existing CSS */

.image-container--4-3 {
    width: 100%; /* Or 200px as you mentioned */
    height: auto; 
    aspect-ratio: 7/5; 

/* Fallback for older browsers or if using the padding-trick */
@supports not (aspect-ratio: 4 / 3) {
    .image-container--4-3 {
        height: 0;
        padding-bottom: 75%; /* (3/4)*100 = 75% */
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d1beb40 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9c5902b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-45fd7be */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f3276aa *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2367f97 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a4e34a8 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-517427f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8267b91 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-06a3ed3 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-fbe8aae *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6992a01 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-aedb171 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2dc3cf0 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f8e36e1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c53f4d8 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9333bcd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f8c038a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d55e315 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 350px;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}

/* Mobile Media Query - 3:4 Aspect Ratio */
@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 133.33%; /* 3:4 ratio (4/3 * 100 = 133.33%) */
        position: relative;
    }
    
    /* Adjust padding for smaller screens */
    .hover-text {
        padding: 24px;
    }
    
    /* Scale down text sizes */
    .hover-text .elementor-heading-title {
        font-size: 22px;
        margin-bottom: 12px;
        padding: 1px 30px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 14px;
        line-height: 1.5;
        padding: 1px 30px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 4 / 3 !important;
    }
}

/* Extra small screens */
@media (max-width: 480px) {
    .hover-text {
        padding: 20px;
    }
    
    .hover-text .elementor-heading-title {
        font-size: 20px;
        margin-bottom: 10px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 13px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 3 / 4 !important;
    }

}


/* Add this below your existing CSS */

.image-container--4-3 {
    width: 100%; /* Or 200px as you mentioned */
    height: auto; 
    aspect-ratio: 7/5; 

/* Fallback for older browsers or if using the padding-trick */
@supports not (aspect-ratio: 4 / 3) {
    .image-container--4-3 {
        height: 0;
        padding-bottom: 75%; /* (3/4)*100 = 75% */
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d1beb40 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9c5902b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-45fd7be */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f3276aa *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2367f97 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a4e34a8 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-517427f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8267b91 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-06a3ed3 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-fbe8aae *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6992a01 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-aedb171 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2dc3cf0 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f8e36e1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c53f4d8 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9333bcd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f8c038a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d55e315 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 350px;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}

/* Mobile Media Query - 3:4 Aspect Ratio */
@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 133.33%; /* 3:4 ratio (4/3 * 100 = 133.33%) */
        position: relative;
    }
    
    /* Adjust padding for smaller screens */
    .hover-text {
        padding: 24px;
    }
    
    /* Scale down text sizes */
    .hover-text .elementor-heading-title {
        font-size: 22px;
        margin-bottom: 12px;
        padding: 1px 30px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 14px;
        line-height: 1.5;
        padding: 1px 30px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 4 / 3 !important;
    }
}

/* Extra small screens */
@media (max-width: 480px) {
    .hover-text {
        padding: 20px;
    }
    
    .hover-text .elementor-heading-title {
        font-size: 20px;
        margin-bottom: 10px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 13px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 3 / 4 !important;
    }

}


/* Add this below your existing CSS */

.image-container--4-3 {
    width: 100%; /* Or 200px as you mentioned */
    height: auto; 
    aspect-ratio: 7/5; 

/* Fallback for older browsers or if using the padding-trick */
@supports not (aspect-ratio: 4 / 3) {
    .image-container--4-3 {
        height: 0;
        padding-bottom: 75%; /* (3/4)*100 = 75% */
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d1beb40 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9c5902b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-45fd7be */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f3276aa *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2367f97 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a4e34a8 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-517427f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8267b91 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-06a3ed3 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-fbe8aae *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6992a01 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-aedb171 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2dc3cf0 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f8e36e1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c53f4d8 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9333bcd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f8c038a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d55e315 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 350px;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}

/* Mobile Media Query - 3:4 Aspect Ratio */
@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 133.33%; /* 3:4 ratio (4/3 * 100 = 133.33%) */
        position: relative;
    }
    
    /* Adjust padding for smaller screens */
    .hover-text {
        padding: 24px;
    }
    
    /* Scale down text sizes */
    .hover-text .elementor-heading-title {
        font-size: 22px;
        margin-bottom: 12px;
        padding: 1px 30px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 14px;
        line-height: 1.5;
        padding: 1px 30px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 4 / 3 !important;
    }
}

/* Extra small screens */
@media (max-width: 480px) {
    .hover-text {
        padding: 20px;
    }
    
    .hover-text .elementor-heading-title {
        font-size: 20px;
        margin-bottom: 10px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 13px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 3 / 4 !important;
    }

}


/* Add this below your existing CSS */

.image-container--4-3 {
    width: 100%; /* Or 200px as you mentioned */
    height: auto; 
    aspect-ratio: 7/5; 

/* Fallback for older browsers or if using the padding-trick */
@supports not (aspect-ratio: 4 / 3) {
    .image-container--4-3 {
        height: 0;
        padding-bottom: 75%; /* (3/4)*100 = 75% */
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d1beb40 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9c5902b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-45fd7be */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f3276aa *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2367f97 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a4e34a8 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-517427f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8267b91 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-06a3ed3 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-fbe8aae *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6992a01 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-aedb171 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2dc3cf0 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f8e36e1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c53f4d8 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9333bcd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f8c038a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d55e315 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 350px;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}

/* Mobile Media Query - 3:4 Aspect Ratio */
@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 133.33%; /* 3:4 ratio (4/3 * 100 = 133.33%) */
        position: relative;
    }
    
    /* Adjust padding for smaller screens */
    .hover-text {
        padding: 24px;
    }
    
    /* Scale down text sizes */
    .hover-text .elementor-heading-title {
        font-size: 22px;
        margin-bottom: 12px;
        padding: 1px 30px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 14px;
        line-height: 1.5;
        padding: 1px 30px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 4 / 3 !important;
    }
}

/* Extra small screens */
@media (max-width: 480px) {
    .hover-text {
        padding: 20px;
    }
    
    .hover-text .elementor-heading-title {
        font-size: 20px;
        margin-bottom: 10px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 13px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 3 / 4 !important;
    }

}


/* Add this below your existing CSS */

.image-container--4-3 {
    width: 100%; /* Or 200px as you mentioned */
    height: auto; 
    aspect-ratio: 7/5; 

/* Fallback for older browsers or if using the padding-trick */
@supports not (aspect-ratio: 4 / 3) {
    .image-container--4-3 {
        height: 0;
        padding-bottom: 75%; /* (3/4)*100 = 75% */
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d1beb40 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9c5902b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-45fd7be */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f3276aa *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2367f97 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a4e34a8 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-517427f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8267b91 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-06a3ed3 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-fbe8aae *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6992a01 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-aedb171 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2dc3cf0 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f8e36e1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c53f4d8 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9333bcd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f8c038a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d55e315 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 350px;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}

/* Mobile Media Query - 3:4 Aspect Ratio */
@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 133.33%; /* 3:4 ratio (4/3 * 100 = 133.33%) */
        position: relative;
    }
    
    /* Adjust padding for smaller screens */
    .hover-text {
        padding: 24px;
    }
    
    /* Scale down text sizes */
    .hover-text .elementor-heading-title {
        font-size: 22px;
        margin-bottom: 12px;
        padding: 1px 30px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 14px;
        line-height: 1.5;
        padding: 1px 30px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 4 / 3 !important;
    }
}

/* Extra small screens */
@media (max-width: 480px) {
    .hover-text {
        padding: 20px;
    }
    
    .hover-text .elementor-heading-title {
        font-size: 20px;
        margin-bottom: 10px;
    }
    
    .hover-text .elementor-text-editor {
        font-size: 13px;
    }
    
        
    /* THE FIX: Override the variant to stay 16:9 */
    .image-container--4-3 {
        height: auto !important;
        padding-bottom: 0 !important; /* Removes the 133% padding */
        aspect-ratio: 3 / 4 !important;
    }

}


/* Add this below your existing CSS */

.image-container--4-3 {
    width: 100%; /* Or 200px as you mentioned */
    height: auto; 
    aspect-ratio: 7/5; 

/* Fallback for older browsers or if using the padding-trick */
@supports not (aspect-ratio: 4 / 3) {
    .image-container--4-3 {
        height: 0;
        padding-bottom: 75%; /* (3/4)*100 = 75% */
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d1beb40 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9c5902b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-45fd7be */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f3276aa *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2367f97 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a4e34a8 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-517427f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8267b91 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-06a3ed3 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-fbe8aae *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6992a01 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-aedb171 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2dc3cf0 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f8e36e1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c53f4d8 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9333bcd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a9d93ae */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b78412d *//* Unified content container */
.logo-blog-card-content {
    display: flex;
    flex-direction: column;
    padding: 15 20 10 20px;
}

/* Unified logo container */
.blog-logo {
    display: flex;
    align-items: start;
    justify-content: center;
}


.blog-text {
    padding: 0px
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-49763e9 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-817792b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2212ddb */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-49763e9 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-817792b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2212ddb */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-49763e9 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-817792b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2212ddb */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-49763e9 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-817792b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2212ddb */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-b335061 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-21206f2 *//* Unified content container */
.logo-blog-card-content {
    display: flex;
    flex-direction: column;
    padding: 15 20 10 20px;
}

/* Unified logo container */
.blog-logo {
    display: flex;
    align-items: start;
    justify-content: center;
}


.blog-text {
    padding: 0px
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4a7c81d */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4066d72 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6eeeb14 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c5de2a2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c27922f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1b7cdfb *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-eb296f9 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9d06671 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7b5e20b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4c4e6b1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5121a6b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-797f1b5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a1c021c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5c7e572 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5ea6430 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6505d1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5482ae2 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-22fbc1f *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c3c2e2b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-08809c2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4a7c81d */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4066d72 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6eeeb14 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c5de2a2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c27922f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1b7cdfb *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-eb296f9 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9d06671 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7b5e20b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4c4e6b1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5121a6b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-797f1b5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a1c021c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5c7e572 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5ea6430 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6505d1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5482ae2 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-22fbc1f *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c3c2e2b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-08809c2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4a7c81d */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4066d72 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6eeeb14 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c5de2a2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c27922f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1b7cdfb *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-eb296f9 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9d06671 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7b5e20b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4c4e6b1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5121a6b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-797f1b5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a1c021c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5c7e572 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5ea6430 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6505d1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5482ae2 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-22fbc1f *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c3c2e2b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-08809c2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4a7c81d */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4066d72 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6eeeb14 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c5de2a2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c27922f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1b7cdfb *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-eb296f9 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9d06671 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7b5e20b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4c4e6b1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5121a6b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-797f1b5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a1c021c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5c7e572 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5ea6430 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6505d1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5482ae2 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-22fbc1f *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c3c2e2b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-08809c2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4a7c81d */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4066d72 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6eeeb14 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c5de2a2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c27922f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1b7cdfb *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-eb296f9 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9d06671 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7b5e20b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4c4e6b1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5121a6b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-797f1b5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a1c021c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5c7e572 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5ea6430 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6505d1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5482ae2 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-22fbc1f *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c3c2e2b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-08809c2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4a7c81d */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4066d72 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6eeeb14 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c5de2a2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c27922f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1b7cdfb *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-eb296f9 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9d06671 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7b5e20b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4c4e6b1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5121a6b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-797f1b5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a1c021c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5c7e572 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5ea6430 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6505d1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5482ae2 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-22fbc1f *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c3c2e2b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-08809c2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4a7c81d */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4066d72 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6eeeb14 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c5de2a2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c27922f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1b7cdfb *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-eb296f9 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9d06671 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7b5e20b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4c4e6b1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5121a6b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-797f1b5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a1c021c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5c7e572 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5ea6430 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6505d1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5482ae2 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-22fbc1f *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c3c2e2b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-08809c2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4a7c81d */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4066d72 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6eeeb14 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c5de2a2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c27922f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1b7cdfb *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-eb296f9 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9d06671 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7b5e20b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4c4e6b1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5121a6b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-797f1b5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a1c021c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5c7e572 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5ea6430 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6505d1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5482ae2 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-22fbc1f *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c3c2e2b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-08809c2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4a7c81d */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4066d72 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6eeeb14 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c5de2a2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c27922f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1b7cdfb *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-eb296f9 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9d06671 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7b5e20b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4c4e6b1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5121a6b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-797f1b5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a1c021c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5c7e572 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5ea6430 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6505d1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5482ae2 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-22fbc1f *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c3c2e2b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-08809c2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4a7c81d */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4066d72 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6eeeb14 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c5de2a2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c27922f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1b7cdfb *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-eb296f9 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9d06671 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7b5e20b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4c4e6b1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5121a6b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-797f1b5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a1c021c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5c7e572 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5ea6430 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6505d1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5482ae2 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-22fbc1f *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c3c2e2b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-08809c2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4a7c81d */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4066d72 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6eeeb14 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c5de2a2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c27922f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1b7cdfb *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-eb296f9 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9d06671 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7b5e20b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4c4e6b1 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5121a6b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-797f1b5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a1c021c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5c7e572 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5ea6430 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6505d1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5482ae2 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-22fbc1f *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c3c2e2b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-08809c2 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-8fa4d09 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4c8a65e *//* Unified content container */
.logo-blog-card-content {
    display: flex;
    flex-direction: column;
    padding: 15 20 10 20px;
}

/* Unified logo container */
.blog-logo {
    display: flex;
    align-items: start;
    justify-content: center;
}


.blog-text {
    padding: 0px
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4895799 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1836f19 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-fdb2afe */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8435a1d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-482207e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dfe958d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ef103cf */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dfbc89e *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-cc3975f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-18b4b3b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a4bd680 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-71be3be *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f19f818 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-bcf4c44 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d704230 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3be6e03 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4895799 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1836f19 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-fdb2afe */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8435a1d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-482207e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dfe958d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ef103cf */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dfbc89e *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-cc3975f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-18b4b3b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a4bd680 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-71be3be *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f19f818 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-bcf4c44 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d704230 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3be6e03 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4895799 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1836f19 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-fdb2afe */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8435a1d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-482207e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dfe958d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ef103cf */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dfbc89e *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-cc3975f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-18b4b3b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a4bd680 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-71be3be *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f19f818 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-bcf4c44 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d704230 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3be6e03 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4895799 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1836f19 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-fdb2afe */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8435a1d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-482207e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dfe958d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ef103cf */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dfbc89e *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-cc3975f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-18b4b3b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a4bd680 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-71be3be *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f19f818 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-bcf4c44 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d704230 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3be6e03 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4895799 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1836f19 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-fdb2afe */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8435a1d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-482207e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dfe958d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ef103cf */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dfbc89e *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-cc3975f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-18b4b3b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a4bd680 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-71be3be *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f19f818 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-bcf4c44 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d704230 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3be6e03 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4895799 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1836f19 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-fdb2afe */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8435a1d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-482207e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dfe958d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ef103cf */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dfbc89e *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-cc3975f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-18b4b3b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a4bd680 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-71be3be *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f19f818 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-bcf4c44 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d704230 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3be6e03 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4895799 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1836f19 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-fdb2afe */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8435a1d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-482207e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dfe958d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ef103cf */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dfbc89e *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-cc3975f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-18b4b3b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a4bd680 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-71be3be *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f19f818 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-bcf4c44 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d704230 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3be6e03 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4895799 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1836f19 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-fdb2afe */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8435a1d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-482207e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dfe958d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ef103cf */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dfbc89e *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-cc3975f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-18b4b3b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a4bd680 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-71be3be *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f19f818 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-bcf4c44 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d704230 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3be6e03 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4895799 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1836f19 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-fdb2afe */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8435a1d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-482207e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dfe958d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ef103cf */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dfbc89e *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-cc3975f */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-18b4b3b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a4bd680 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-71be3be *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f19f818 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-bcf4c44 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d704230 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3be6e03 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6b21e19 */.blog-text * {
    font-size: 13px !important;
    line-height: 16px !important;
}


/* Target the title widget specifically */
.blog-text__title .elementor-heading-title {
    font-size: 1.5em !important; 
    line-height: 1.2 !important;
    display: block !important;
}

.blog-text h1,
.blog-text h2,
.blog-text h3,
.blog-text h4,
.blog-text .elementor-heading-title {
    line-height: 1.2 !important;
}/* End custom CSS */