.elementor-1047 .elementor-element.elementor-element-6b21e19{--display:flex;--padding-top:00px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-6b21e19.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-1047 .elementor-element.elementor-element-54260205{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-46592343 img{width:100vw;height:60vh;object-fit:cover;object-position:center center;border-radius:15px 15px 15px 15px;}.elementor-1047 .elementor-element.elementor-element-7d3ff229{--display:flex;}.elementor-1047 .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-1047 .elementor-element.elementor-element-182b6b3{--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-1047 .elementor-element.elementor-element-a75a498{--divider-border-style:solid;--divider-color:#000;--divider-border-width:2px;--e-transform-rotateZ:-3deg;padding:20px 0px 40px 0px;}.elementor-1047 .elementor-element.elementor-element-a75a498 .elementor-divider-separator{width:100%;}.elementor-1047 .elementor-element.elementor-element-a75a498 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-1047 .elementor-element.elementor-element-4f6215e{--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-1047 .elementor-element.elementor-element-4f6215e::before, .elementor-1047 .elementor-element.elementor-element-4f6215e > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-4f6215e > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-4f6215e > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-4f6215e > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-4f6215e > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-b32f06b{--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-1047 .elementor-element.elementor-element-bb3a5c8{text-align:left;}.elementor-1047 .elementor-element.elementor-element-bb3a5c8 img{width:100%;height:90px;}.elementor-1047 .elementor-element.elementor-element-dd5c4da{--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-1047 .elementor-element.elementor-element-99cec1f{--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-1047 .elementor-element.elementor-element-99cec1f.e-con{--align-self:flex-start;}.elementor-1047 .elementor-element.elementor-element-2e5188d{--e-transform-translateY:2px;}.elementor-1047 .elementor-element.elementor-element-2e5188d.elementor-element{--align-self:center;}.elementor-1047 .elementor-element.elementor-element-2e5188d .elementor-icon-wrapper{text-align:center;}.elementor-1047 .elementor-element.elementor-element-2e5188d.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-text );}.elementor-1047 .elementor-element.elementor-element-2e5188d.elementor-view-framed .elementor-icon, .elementor-1047 .elementor-element.elementor-element-2e5188d.elementor-view-default .elementor-icon{color:var( --e-global-color-text );border-color:var( --e-global-color-text );}.elementor-1047 .elementor-element.elementor-element-2e5188d.elementor-view-framed .elementor-icon, .elementor-1047 .elementor-element.elementor-element-2e5188d.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-text );}.elementor-1047 .elementor-element.elementor-element-2e5188d .elementor-icon{font-size:12px;}.elementor-1047 .elementor-element.elementor-element-2e5188d .elementor-icon svg{height:12px;}.elementor-1047 .elementor-element.elementor-element-0cf49d7 .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-1047 .elementor-element.elementor-element-6ac0829 .elementor-heading-title{font-family:"Rethink Sans", Sans-serif;font-size:16px;line-height:25px;color:#000000;}.elementor-1047 .elementor-element.elementor-element-38d6ec8{--display:flex;}.elementor-1047 .elementor-element.elementor-element-904a937{--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-1047 .elementor-element.elementor-element-904a937::before, .elementor-1047 .elementor-element.elementor-element-904a937 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-904a937 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-904a937 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-904a937 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-904a937 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-c42666d{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-c42666d::before, .elementor-1047 .elementor-element.elementor-element-c42666d > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-c42666d > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-c42666d > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-c42666d > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-c42666d > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-1607128 .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-1047 .elementor-element.elementor-element-5345fa7 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-35f04c8{--display:flex;}.elementor-1047 .elementor-element.elementor-element-a46c916{--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-1047 .elementor-element.elementor-element-a46c916::before, .elementor-1047 .elementor-element.elementor-element-a46c916 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-a46c916 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-a46c916 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-a46c916 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-a46c916 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-00c0dd2{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-00c0dd2::before, .elementor-1047 .elementor-element.elementor-element-00c0dd2 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-00c0dd2 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-00c0dd2 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-00c0dd2 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-00c0dd2 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-1accef7 .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-1047 .elementor-element.elementor-element-c7e463c .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-19f213e{--display:flex;}.elementor-1047 .elementor-element.elementor-element-1293f84{--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-1047 .elementor-element.elementor-element-1293f84::before, .elementor-1047 .elementor-element.elementor-element-1293f84 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-1293f84 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-1293f84 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-1293f84 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-1293f84 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-1302223{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-1302223::before, .elementor-1047 .elementor-element.elementor-element-1302223 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-1302223 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-1302223 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-1302223 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-1302223 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-531d54a .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-1047 .elementor-element.elementor-element-ac8302f .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-9120bb0{--display:flex;}.elementor-1047 .elementor-element.elementor-element-151e103{--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-1047 .elementor-element.elementor-element-151e103::before, .elementor-1047 .elementor-element.elementor-element-151e103 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-151e103 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-151e103 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-151e103 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-151e103 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-3979f77{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-3979f77::before, .elementor-1047 .elementor-element.elementor-element-3979f77 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-3979f77 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-3979f77 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-3979f77 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-3979f77 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-8c70834 .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-1047 .elementor-element.elementor-element-21f5b5e .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-708866d{--display:flex;}.elementor-1047 .elementor-element.elementor-element-af5fe6e{--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-1047 .elementor-element.elementor-element-af5fe6e::before, .elementor-1047 .elementor-element.elementor-element-af5fe6e > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-af5fe6e > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-af5fe6e > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-af5fe6e > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-af5fe6e > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-23e977f{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-23e977f::before, .elementor-1047 .elementor-element.elementor-element-23e977f > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-23e977f > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-23e977f > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-23e977f > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-23e977f > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-9f2e122 .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-1047 .elementor-element.elementor-element-85d1427 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-e0aa848{--display:flex;}.elementor-1047 .elementor-element.elementor-element-9c03ada{--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-1047 .elementor-element.elementor-element-9c03ada::before, .elementor-1047 .elementor-element.elementor-element-9c03ada > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-9c03ada > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-9c03ada > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-9c03ada > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-9c03ada > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-86bba3f{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-86bba3f::before, .elementor-1047 .elementor-element.elementor-element-86bba3f > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-86bba3f > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-86bba3f > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-86bba3f > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-86bba3f > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-7f9e3ac .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-1047 .elementor-element.elementor-element-4345437 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-e34d99f{--display:flex;}.elementor-1047 .elementor-element.elementor-element-ac9391d{--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-1047 .elementor-element.elementor-element-ac9391d::before, .elementor-1047 .elementor-element.elementor-element-ac9391d > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-ac9391d > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-ac9391d > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-ac9391d > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-ac9391d > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-e6b98b5{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-e6b98b5::before, .elementor-1047 .elementor-element.elementor-element-e6b98b5 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-e6b98b5 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-e6b98b5 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-e6b98b5 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-e6b98b5 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-8f02618 .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-1047 .elementor-element.elementor-element-ff4a212 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-0d3175d{--display:flex;}.elementor-1047 .elementor-element.elementor-element-1a08f4a{--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-1047 .elementor-element.elementor-element-1a08f4a::before, .elementor-1047 .elementor-element.elementor-element-1a08f4a > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-1a08f4a > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-1a08f4a > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-1a08f4a > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-1a08f4a > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-1210000{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-1210000::before, .elementor-1047 .elementor-element.elementor-element-1210000 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-1210000 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-1210000 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-1210000 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-1210000 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-a3fead5 .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-1047 .elementor-element.elementor-element-69af17b .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-e8fc547{--display:flex;}.elementor-1047 .elementor-element.elementor-element-9dab32c{--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-1047 .elementor-element.elementor-element-9dab32c::before, .elementor-1047 .elementor-element.elementor-element-9dab32c > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-9dab32c > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-9dab32c > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-9dab32c > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-9dab32c > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-ac2459b{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-ac2459b::before, .elementor-1047 .elementor-element.elementor-element-ac2459b > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-ac2459b > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-ac2459b > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-ac2459b > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-ac2459b > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-8f83ff7 .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-1047 .elementor-element.elementor-element-260e4e0 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-1631cce{--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-1047 .elementor-element.elementor-element-2923f10{--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-1047 .elementor-element.elementor-element-e8ba5c5 .elementor-heading-title{font-family:var( --e-global-typography-fe3b774-font-family ), Sans-serif;font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1047 .elementor-element.elementor-element-ff92027 .elementor-icon-list-item:not(:last-child):after{content:"";height:35%;border-color:var( --e-global-color-text );}.elementor-1047 .elementor-element.elementor-element-ff92027 .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-1047 .elementor-element.elementor-element-ff92027 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-style:solid;}.elementor-1047 .elementor-element.elementor-element-ff92027 .elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-width:2px;}.elementor-1047 .elementor-element.elementor-element-ff92027 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1047 .elementor-element.elementor-element-ff92027 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1047 .elementor-element.elementor-element-ff92027{--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-1047 .elementor-element.elementor-element-ff92027 .elementor-icon-list-icon{padding-inline-end:0px;}.elementor-1047 .elementor-element.elementor-element-ff92027 .elementor-icon-list-text{transition:color 0.3s;}.elementor-1047 .elementor-element.elementor-element-2cdf67e{--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-1047 .elementor-element.elementor-element-6b7be2f{--divider-border-style:solid;--divider-color:#000;--divider-border-width:2px;--e-transform-rotateZ:3deg;padding:40px 0px 40px 0px;}.elementor-1047 .elementor-element.elementor-element-6b7be2f .elementor-divider-separator{width:100%;}.elementor-1047 .elementor-element.elementor-element-6b7be2f .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-1047 .elementor-element.elementor-element-bcb1f5f{--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-1047 .elementor-element.elementor-element-bcb1f5f::before, .elementor-1047 .elementor-element.elementor-element-bcb1f5f > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-bcb1f5f > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-bcb1f5f > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-bcb1f5f > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-bcb1f5f > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-10c00d8{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-fecc1ca{text-align:left;}.elementor-1047 .elementor-element.elementor-element-fecc1ca img{width:100%;}.elementor-1047 .elementor-element.elementor-element-a077229{--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-1047 .elementor-element.elementor-element-65b5d07{--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-1047 .elementor-element.elementor-element-65b5d07.e-con{--align-self:flex-start;}.elementor-1047 .elementor-element.elementor-element-4804ab1{--e-transform-translateY:2px;}.elementor-1047 .elementor-element.elementor-element-4804ab1.elementor-element{--align-self:center;}.elementor-1047 .elementor-element.elementor-element-4804ab1 .elementor-icon-wrapper{text-align:center;}.elementor-1047 .elementor-element.elementor-element-4804ab1.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-text );}.elementor-1047 .elementor-element.elementor-element-4804ab1.elementor-view-framed .elementor-icon, .elementor-1047 .elementor-element.elementor-element-4804ab1.elementor-view-default .elementor-icon{color:var( --e-global-color-text );border-color:var( --e-global-color-text );}.elementor-1047 .elementor-element.elementor-element-4804ab1.elementor-view-framed .elementor-icon, .elementor-1047 .elementor-element.elementor-element-4804ab1.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-text );}.elementor-1047 .elementor-element.elementor-element-4804ab1 .elementor-icon{font-size:12px;}.elementor-1047 .elementor-element.elementor-element-4804ab1 .elementor-icon svg{height:12px;}.elementor-1047 .elementor-element.elementor-element-b2f8ab3 .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-1047 .elementor-element.elementor-element-c94c486 .elementor-heading-title{font-family:"Rethink Sans", Sans-serif;font-size:16px;line-height:25px;color:#000000;}.elementor-1047 .elementor-element.elementor-element-f07938c{--display:flex;}.elementor-1047 .elementor-element.elementor-element-dd134ae{--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-1047 .elementor-element.elementor-element-dd134ae::before, .elementor-1047 .elementor-element.elementor-element-dd134ae > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-dd134ae > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-dd134ae > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-dd134ae > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-dd134ae > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-914ff97{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-914ff97::before, .elementor-1047 .elementor-element.elementor-element-914ff97 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-914ff97 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-914ff97 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-914ff97 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-914ff97 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-d9adbf2 .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-1047 .elementor-element.elementor-element-c22d450 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-77187a5{--display:flex;}.elementor-1047 .elementor-element.elementor-element-37b743b{--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-1047 .elementor-element.elementor-element-37b743b::before, .elementor-1047 .elementor-element.elementor-element-37b743b > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-37b743b > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-37b743b > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-37b743b > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-37b743b > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-fc8e6a1{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-fc8e6a1::before, .elementor-1047 .elementor-element.elementor-element-fc8e6a1 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-fc8e6a1 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-fc8e6a1 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-fc8e6a1 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-fc8e6a1 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-a7a406c .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-1047 .elementor-element.elementor-element-dedac55 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-f6e970e{--display:flex;}.elementor-1047 .elementor-element.elementor-element-9f28726{--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-1047 .elementor-element.elementor-element-9f28726::before, .elementor-1047 .elementor-element.elementor-element-9f28726 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-9f28726 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-9f28726 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-9f28726 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-9f28726 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-7bf68a2{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-7bf68a2::before, .elementor-1047 .elementor-element.elementor-element-7bf68a2 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-7bf68a2 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-7bf68a2 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-7bf68a2 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-7bf68a2 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-16622fe .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-1047 .elementor-element.elementor-element-9491112 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-5875c84{--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-1047 .elementor-element.elementor-element-aef9e43{--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-1047 .elementor-element.elementor-element-3fc6c94 .elementor-heading-title{font-family:var( --e-global-typography-fe3b774-font-family ), Sans-serif;font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1047 .elementor-element.elementor-element-7e61ddd .elementor-icon-list-item:not(:last-child):after{content:"";height:35%;border-color:var( --e-global-color-text );}.elementor-1047 .elementor-element.elementor-element-7e61ddd .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-1047 .elementor-element.elementor-element-7e61ddd .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-style:solid;}.elementor-1047 .elementor-element.elementor-element-7e61ddd .elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-width:2px;}.elementor-1047 .elementor-element.elementor-element-7e61ddd .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1047 .elementor-element.elementor-element-7e61ddd .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1047 .elementor-element.elementor-element-7e61ddd{--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-1047 .elementor-element.elementor-element-7e61ddd .elementor-icon-list-icon{padding-inline-end:0px;}.elementor-1047 .elementor-element.elementor-element-7e61ddd .elementor-icon-list-text{transition:color 0.3s;}.elementor-1047 .elementor-element.elementor-element-d5befc3{--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-1047 .elementor-element.elementor-element-bbfa257{--divider-border-style:solid;--divider-color:#000;--divider-border-width:2px;--e-transform-rotateZ:-3deg;padding:40px 0px 40px 0px;}.elementor-1047 .elementor-element.elementor-element-bbfa257 .elementor-divider-separator{width:100%;}.elementor-1047 .elementor-element.elementor-element-bbfa257 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-1047 .elementor-element.elementor-element-2cc1fdf5{--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-1047 .elementor-element.elementor-element-2cc1fdf5::before, .elementor-1047 .elementor-element.elementor-element-2cc1fdf5 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-2cc1fdf5 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-2cc1fdf5 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-2cc1fdf5 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-2cc1fdf5 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-284a97dc{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-1e0c1e49{text-align:left;}.elementor-1047 .elementor-element.elementor-element-1e0c1e49 img{width:100%;}.elementor-1047 .elementor-element.elementor-element-7ac7c414{--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-1047 .elementor-element.elementor-element-241688d0{--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-1047 .elementor-element.elementor-element-241688d0.e-con{--align-self:flex-start;}.elementor-1047 .elementor-element.elementor-element-75762711{--e-transform-translateY:2px;}.elementor-1047 .elementor-element.elementor-element-75762711.elementor-element{--align-self:center;}.elementor-1047 .elementor-element.elementor-element-75762711 .elementor-icon-wrapper{text-align:center;}.elementor-1047 .elementor-element.elementor-element-75762711.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-text );}.elementor-1047 .elementor-element.elementor-element-75762711.elementor-view-framed .elementor-icon, .elementor-1047 .elementor-element.elementor-element-75762711.elementor-view-default .elementor-icon{color:var( --e-global-color-text );border-color:var( --e-global-color-text );}.elementor-1047 .elementor-element.elementor-element-75762711.elementor-view-framed .elementor-icon, .elementor-1047 .elementor-element.elementor-element-75762711.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-text );}.elementor-1047 .elementor-element.elementor-element-75762711 .elementor-icon{font-size:12px;}.elementor-1047 .elementor-element.elementor-element-75762711 .elementor-icon svg{height:12px;}.elementor-1047 .elementor-element.elementor-element-592d65ee .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-1047 .elementor-element.elementor-element-517a0258 .elementor-heading-title{font-family:"Rethink Sans", Sans-serif;font-size:16px;line-height:25px;color:#000000;}.elementor-1047 .elementor-element.elementor-element-6341cf0{--display:flex;}.elementor-1047 .elementor-element.elementor-element-dcb6b38{--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-1047 .elementor-element.elementor-element-dcb6b38::before, .elementor-1047 .elementor-element.elementor-element-dcb6b38 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-dcb6b38 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-dcb6b38 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-dcb6b38 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-dcb6b38 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-332beb1{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-332beb1::before, .elementor-1047 .elementor-element.elementor-element-332beb1 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-332beb1 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-332beb1 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-332beb1 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-332beb1 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-175401f .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-1047 .elementor-element.elementor-element-705f9e1 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-03d64d6{--display:flex;}.elementor-1047 .elementor-element.elementor-element-5883993{--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-1047 .elementor-element.elementor-element-5883993::before, .elementor-1047 .elementor-element.elementor-element-5883993 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-5883993 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-5883993 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-5883993 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-5883993 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-fbadcf4{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-fbadcf4::before, .elementor-1047 .elementor-element.elementor-element-fbadcf4 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-fbadcf4 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-fbadcf4 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-fbadcf4 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-fbadcf4 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-3f4b393 .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-1047 .elementor-element.elementor-element-3359c39 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-f38a28c{--display:flex;}.elementor-1047 .elementor-element.elementor-element-781bb65{--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-1047 .elementor-element.elementor-element-781bb65::before, .elementor-1047 .elementor-element.elementor-element-781bb65 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-781bb65 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-781bb65 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-781bb65 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-781bb65 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-9eb9282{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-9eb9282::before, .elementor-1047 .elementor-element.elementor-element-9eb9282 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-9eb9282 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-9eb9282 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-9eb9282 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-9eb9282 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-c4624a4 .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-1047 .elementor-element.elementor-element-9cd7988 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-cec7e9f{--display:flex;}.elementor-1047 .elementor-element.elementor-element-e898b71{--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-1047 .elementor-element.elementor-element-e898b71::before, .elementor-1047 .elementor-element.elementor-element-e898b71 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-e898b71 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-e898b71 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-e898b71 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-e898b71 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-4854a2d{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-4854a2d::before, .elementor-1047 .elementor-element.elementor-element-4854a2d > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-4854a2d > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-4854a2d > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-4854a2d > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-4854a2d > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-a1f8820 .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-1047 .elementor-element.elementor-element-603e16a .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-aa4bd01{--display:flex;}.elementor-1047 .elementor-element.elementor-element-862a9dd{--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-1047 .elementor-element.elementor-element-862a9dd::before, .elementor-1047 .elementor-element.elementor-element-862a9dd > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-862a9dd > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-862a9dd > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-862a9dd > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-862a9dd > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-9310117{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-9310117::before, .elementor-1047 .elementor-element.elementor-element-9310117 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-9310117 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-9310117 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-9310117 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-9310117 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-ff4cedd .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-1047 .elementor-element.elementor-element-08d20fb .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-b3827ce{--display:flex;}.elementor-1047 .elementor-element.elementor-element-4dfd5f7{--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-1047 .elementor-element.elementor-element-4dfd5f7::before, .elementor-1047 .elementor-element.elementor-element-4dfd5f7 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-4dfd5f7 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-4dfd5f7 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-4dfd5f7 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-4dfd5f7 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-355ecd9{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-355ecd9::before, .elementor-1047 .elementor-element.elementor-element-355ecd9 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-355ecd9 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-355ecd9 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-355ecd9 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-355ecd9 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-626a063 .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-1047 .elementor-element.elementor-element-d6a3d10 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-21bec17{--display:flex;}.elementor-1047 .elementor-element.elementor-element-ce8461c{--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-1047 .elementor-element.elementor-element-ce8461c::before, .elementor-1047 .elementor-element.elementor-element-ce8461c > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-ce8461c > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-ce8461c > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-ce8461c > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-ce8461c > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-cdbd704{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-cdbd704::before, .elementor-1047 .elementor-element.elementor-element-cdbd704 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-cdbd704 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-cdbd704 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-cdbd704 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-cdbd704 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-982dd33 .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-1047 .elementor-element.elementor-element-21f570e .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-c3906c0{--display:flex;}.elementor-1047 .elementor-element.elementor-element-8e3abf5{--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-1047 .elementor-element.elementor-element-8e3abf5::before, .elementor-1047 .elementor-element.elementor-element-8e3abf5 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-8e3abf5 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-8e3abf5 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-8e3abf5 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-8e3abf5 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-017a069{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-017a069::before, .elementor-1047 .elementor-element.elementor-element-017a069 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-017a069 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-017a069 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-017a069 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-017a069 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-d51df4b .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-1047 .elementor-element.elementor-element-0a3115b .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-08758be{--display:flex;}.elementor-1047 .elementor-element.elementor-element-0f30751{--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-1047 .elementor-element.elementor-element-0f30751::before, .elementor-1047 .elementor-element.elementor-element-0f30751 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-0f30751 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-0f30751 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-0f30751 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-0f30751 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-da7cc5b{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-da7cc5b::before, .elementor-1047 .elementor-element.elementor-element-da7cc5b > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-da7cc5b > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-da7cc5b > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-da7cc5b > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-da7cc5b > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-18f1019 .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-1047 .elementor-element.elementor-element-f3befe6 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-5cedcd7{--display:flex;}.elementor-1047 .elementor-element.elementor-element-a72b018{--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-1047 .elementor-element.elementor-element-a72b018::before, .elementor-1047 .elementor-element.elementor-element-a72b018 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-a72b018 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-a72b018 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-a72b018 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-a72b018 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-52a1735{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-52a1735::before, .elementor-1047 .elementor-element.elementor-element-52a1735 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-52a1735 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-52a1735 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-52a1735 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-52a1735 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-1585adc .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-1047 .elementor-element.elementor-element-7255ae6 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-7c4fffa{--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-1047 .elementor-element.elementor-element-0e8fad0{--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-1047 .elementor-element.elementor-element-7f15a3e .elementor-heading-title{font-family:var( --e-global-typography-fe3b774-font-family ), Sans-serif;font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1047 .elementor-element.elementor-element-53f1a24 .elementor-icon-list-item:not(:last-child):after{content:"";height:35%;border-color:var( --e-global-color-text );}.elementor-1047 .elementor-element.elementor-element-53f1a24 .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-1047 .elementor-element.elementor-element-53f1a24 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-style:solid;}.elementor-1047 .elementor-element.elementor-element-53f1a24 .elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-width:2px;}.elementor-1047 .elementor-element.elementor-element-53f1a24 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1047 .elementor-element.elementor-element-53f1a24 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1047 .elementor-element.elementor-element-53f1a24{--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-1047 .elementor-element.elementor-element-53f1a24 .elementor-icon-list-icon{padding-inline-end:0px;}.elementor-1047 .elementor-element.elementor-element-53f1a24 .elementor-icon-list-text{transition:color 0.3s;}.elementor-1047 .elementor-element.elementor-element-6f6f2fe1{--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-1047 .elementor-element.elementor-element-99a828d{--divider-border-style:solid;--divider-color:#000;--divider-border-width:2px;--e-transform-rotateZ:3deg;padding:40px 0px 40px 0px;}.elementor-1047 .elementor-element.elementor-element-99a828d .elementor-divider-separator{width:100%;}.elementor-1047 .elementor-element.elementor-element-99a828d .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-1047 .elementor-element.elementor-element-3c296ea{--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-1047 .elementor-element.elementor-element-3c296ea::before, .elementor-1047 .elementor-element.elementor-element-3c296ea > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-3c296ea > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-3c296ea > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-3c296ea > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-3c296ea > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-dfe306b{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-94a686e{text-align:left;}.elementor-1047 .elementor-element.elementor-element-94a686e img{width:100%;}.elementor-1047 .elementor-element.elementor-element-3705d2f{--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-1047 .elementor-element.elementor-element-2ec4651{--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-1047 .elementor-element.elementor-element-2ec4651.e-con{--align-self:flex-start;}.elementor-1047 .elementor-element.elementor-element-1021621{--e-transform-translateY:2px;}.elementor-1047 .elementor-element.elementor-element-1021621.elementor-element{--align-self:center;}.elementor-1047 .elementor-element.elementor-element-1021621 .elementor-icon-wrapper{text-align:center;}.elementor-1047 .elementor-element.elementor-element-1021621.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-text );}.elementor-1047 .elementor-element.elementor-element-1021621.elementor-view-framed .elementor-icon, .elementor-1047 .elementor-element.elementor-element-1021621.elementor-view-default .elementor-icon{color:var( --e-global-color-text );border-color:var( --e-global-color-text );}.elementor-1047 .elementor-element.elementor-element-1021621.elementor-view-framed .elementor-icon, .elementor-1047 .elementor-element.elementor-element-1021621.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-text );}.elementor-1047 .elementor-element.elementor-element-1021621 .elementor-icon{font-size:12px;}.elementor-1047 .elementor-element.elementor-element-1021621 .elementor-icon svg{height:12px;}.elementor-1047 .elementor-element.elementor-element-3465d21 .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-1047 .elementor-element.elementor-element-98ec817 .elementor-heading-title{font-family:"Rethink Sans", Sans-serif;font-size:16px;line-height:25px;color:#000000;}.elementor-1047 .elementor-element.elementor-element-e7874d4{--display:flex;}.elementor-1047 .elementor-element.elementor-element-cb2d310{--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-1047 .elementor-element.elementor-element-cb2d310::before, .elementor-1047 .elementor-element.elementor-element-cb2d310 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-cb2d310 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-cb2d310 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-cb2d310 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-cb2d310 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-6ae2728{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-6ae2728::before, .elementor-1047 .elementor-element.elementor-element-6ae2728 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-6ae2728 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-6ae2728 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-6ae2728 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-6ae2728 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-66e8918 .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-1047 .elementor-element.elementor-element-ffad5fd .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-a4bcd45{--display:flex;}.elementor-1047 .elementor-element.elementor-element-9627ea8{--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-1047 .elementor-element.elementor-element-9627ea8::before, .elementor-1047 .elementor-element.elementor-element-9627ea8 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-9627ea8 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-9627ea8 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-9627ea8 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-9627ea8 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-f46beb3{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-f46beb3::before, .elementor-1047 .elementor-element.elementor-element-f46beb3 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-f46beb3 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-f46beb3 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-f46beb3 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-f46beb3 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-d520bfb .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-1047 .elementor-element.elementor-element-2a040fd .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-a313b78{--display:flex;}.elementor-1047 .elementor-element.elementor-element-d53cf67{--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-1047 .elementor-element.elementor-element-d53cf67::before, .elementor-1047 .elementor-element.elementor-element-d53cf67 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-d53cf67 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-d53cf67 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-d53cf67 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-d53cf67 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-6059ee2{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-6059ee2::before, .elementor-1047 .elementor-element.elementor-element-6059ee2 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-6059ee2 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-6059ee2 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-6059ee2 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-6059ee2 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-483afdf .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-1047 .elementor-element.elementor-element-338fac6 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-7f678a4{--display:flex;}.elementor-1047 .elementor-element.elementor-element-3388524{--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-1047 .elementor-element.elementor-element-3388524::before, .elementor-1047 .elementor-element.elementor-element-3388524 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-3388524 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-3388524 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-3388524 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-3388524 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-1f1572a{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-1f1572a::before, .elementor-1047 .elementor-element.elementor-element-1f1572a > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-1f1572a > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-1f1572a > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-1f1572a > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-1f1572a > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-17152c7 .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-1047 .elementor-element.elementor-element-804c492 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-900aa90{--display:flex;}.elementor-1047 .elementor-element.elementor-element-dc87f1b{--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-1047 .elementor-element.elementor-element-dc87f1b::before, .elementor-1047 .elementor-element.elementor-element-dc87f1b > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-dc87f1b > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-dc87f1b > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-dc87f1b > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-dc87f1b > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-6afe024{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-6afe024::before, .elementor-1047 .elementor-element.elementor-element-6afe024 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-6afe024 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-6afe024 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-6afe024 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-6afe024 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-95e3984 .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-1047 .elementor-element.elementor-element-e67b37b .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-0055a35{--display:flex;}.elementor-1047 .elementor-element.elementor-element-e2a513d{--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-1047 .elementor-element.elementor-element-e2a513d::before, .elementor-1047 .elementor-element.elementor-element-e2a513d > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-e2a513d > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-e2a513d > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-e2a513d > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-e2a513d > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-affda29{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-affda29::before, .elementor-1047 .elementor-element.elementor-element-affda29 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-affda29 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-affda29 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-affda29 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-affda29 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-d430793 .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-1047 .elementor-element.elementor-element-629e3a3 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-ce71e7e{--display:flex;}.elementor-1047 .elementor-element.elementor-element-ccfcd09{--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-1047 .elementor-element.elementor-element-ccfcd09::before, .elementor-1047 .elementor-element.elementor-element-ccfcd09 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-ccfcd09 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-ccfcd09 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-ccfcd09 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-ccfcd09 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-c54c278{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-c54c278::before, .elementor-1047 .elementor-element.elementor-element-c54c278 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-c54c278 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-c54c278 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-c54c278 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-c54c278 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-afdcc94 .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-1047 .elementor-element.elementor-element-ae67418 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-c1dd767{--display:flex;}.elementor-1047 .elementor-element.elementor-element-21b1eb9{--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-1047 .elementor-element.elementor-element-21b1eb9::before, .elementor-1047 .elementor-element.elementor-element-21b1eb9 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-21b1eb9 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-21b1eb9 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-21b1eb9 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-21b1eb9 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-e79f660{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;}.elementor-1047 .elementor-element.elementor-element-e79f660::before, .elementor-1047 .elementor-element.elementor-element-e79f660 > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-e79f660 > .e-con-inner > .elementor-background-video-container::before, .elementor-1047 .elementor-element.elementor-element-e79f660 > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-e79f660 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1047 .elementor-element.elementor-element-e79f660 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1047 .elementor-element.elementor-element-6347794 .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-1047 .elementor-element.elementor-element-a104e24 .elementor-heading-title{font-size:12px;line-height:20px;color:var( --e-global-color-3a6c6eb );}.elementor-1047 .elementor-element.elementor-element-aa02918{--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-1047 .elementor-element.elementor-element-644d7d2c{--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-1047 .elementor-element.elementor-element-3c2faaf1 .elementor-heading-title{font-family:var( --e-global-typography-fe3b774-font-family ), Sans-serif;font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1047 .elementor-element.elementor-element-7f5ca494 .elementor-icon-list-item:not(:last-child):after{content:"";height:35%;border-color:var( --e-global-color-text );}.elementor-1047 .elementor-element.elementor-element-7f5ca494 .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-1047 .elementor-element.elementor-element-7f5ca494 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-style:solid;}.elementor-1047 .elementor-element.elementor-element-7f5ca494 .elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-width:2px;}.elementor-1047 .elementor-element.elementor-element-7f5ca494 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1047 .elementor-element.elementor-element-7f5ca494 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1047 .elementor-element.elementor-element-7f5ca494{--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-1047 .elementor-element.elementor-element-7f5ca494 .elementor-icon-list-icon{padding-inline-end:0px;}.elementor-1047 .elementor-element.elementor-element-7f5ca494 .elementor-icon-list-text{transition:color 0.3s;}@media(min-width:768px){.elementor-1047 .elementor-element.elementor-element-7d3ff229{--width:70%;}.elementor-1047 .elementor-element.elementor-element-b32f06b{--width:15%;}.elementor-1047 .elementor-element.elementor-element-dd5c4da{--width:50%;}.elementor-1047 .elementor-element.elementor-element-10c00d8{--width:15%;}.elementor-1047 .elementor-element.elementor-element-a077229{--width:50%;}.elementor-1047 .elementor-element.elementor-element-284a97dc{--width:15%;}.elementor-1047 .elementor-element.elementor-element-7ac7c414{--width:50%;}.elementor-1047 .elementor-element.elementor-element-dfe306b{--width:10%;}.elementor-1047 .elementor-element.elementor-element-3705d2f{--width:50%;}}@media(max-width:1024px) and (min-width:768px){.elementor-1047 .elementor-element.elementor-element-b32f06b{--width:60px;}.elementor-1047 .elementor-element.elementor-element-10c00d8{--width:80px;}.elementor-1047 .elementor-element.elementor-element-284a97dc{--width:80px;}.elementor-1047 .elementor-element.elementor-element-dfe306b{--width:80px;}}@media(max-width:1024px){.elementor-1047 .elementor-element.elementor-element-2b11c42c{font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1047 .elementor-element.elementor-element-4f6215e{--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-1047 .elementor-element.elementor-element-b32f06b{--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-1047 .elementor-element.elementor-element-bb3a5c8{text-align:left;}.elementor-1047 .elementor-element.elementor-element-bb3a5c8 img{width:100%;height:80px;}.elementor-1047 .elementor-element.elementor-element-dd5c4da{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-0cf49d7 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-c42666d{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-1607128 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-00c0dd2{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-1accef7 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-1302223{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-531d54a .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-3979f77{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-8c70834 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-23e977f{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-9f2e122 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-86bba3f{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-7f9e3ac .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-e6b98b5{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-8f02618 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-1210000{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-a3fead5 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-ac2459b{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-8f83ff7 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-1631cce{--e-n-carousel-swiper-slides-to-display:2;}.elementor-1047 .elementor-element.elementor-element-e8ba5c5 .elementor-heading-title{font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1047 .elementor-element.elementor-element-bcb1f5f{--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-1047 .elementor-element.elementor-element-10c00d8{--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-1047 .elementor-element.elementor-element-fecc1ca{text-align:left;}.elementor-1047 .elementor-element.elementor-element-fecc1ca img{width:100%;height:50px;}.elementor-1047 .elementor-element.elementor-element-a077229{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-b2f8ab3 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-914ff97{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-d9adbf2 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-fc8e6a1{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-a7a406c .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-7bf68a2{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-16622fe .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-5875c84{--e-n-carousel-swiper-slides-to-display:2;}.elementor-1047 .elementor-element.elementor-element-3fc6c94 .elementor-heading-title{font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1047 .elementor-element.elementor-element-2cc1fdf5{--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-1047 .elementor-element.elementor-element-284a97dc{--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-1047 .elementor-element.elementor-element-1e0c1e49{text-align:left;}.elementor-1047 .elementor-element.elementor-element-1e0c1e49 img{width:100%;height:50px;}.elementor-1047 .elementor-element.elementor-element-7ac7c414{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-592d65ee .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-332beb1{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-175401f .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-fbadcf4{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-3f4b393 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-9eb9282{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-c4624a4 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-4854a2d{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-a1f8820 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-9310117{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-ff4cedd .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-355ecd9{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-626a063 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-cdbd704{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-982dd33 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-017a069{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-d51df4b .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-da7cc5b{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-18f1019 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-52a1735{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-1585adc .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-7c4fffa{--e-n-carousel-swiper-slides-to-display:2;}.elementor-1047 .elementor-element.elementor-element-7f15a3e .elementor-heading-title{font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1047 .elementor-element.elementor-element-3c296ea{--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-1047 .elementor-element.elementor-element-dfe306b{--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-1047 .elementor-element.elementor-element-94a686e{text-align:left;}.elementor-1047 .elementor-element.elementor-element-94a686e img{width:100%;height:90px;}.elementor-1047 .elementor-element.elementor-element-3705d2f{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-3465d21 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-6ae2728{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-66e8918 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-f46beb3{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-d520bfb .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-6059ee2{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-483afdf .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-1f1572a{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-17152c7 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-6afe024{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-95e3984 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-affda29{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-d430793 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-c54c278{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-afdcc94 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-e79f660{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-6347794 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-aa02918{--e-n-carousel-swiper-slides-to-display:2;}.elementor-1047 .elementor-element.elementor-element-3c2faaf1 .elementor-heading-title{font-size:var( --e-global-typography-fe3b774-font-size );}}@media(max-width:767px){.elementor-1047 .elementor-element.elementor-element-6b21e19{--width:285px;}.elementor-1047 .elementor-element.elementor-element-54260205{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-2b11c42c{font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1047 .elementor-element.elementor-element-182b6b3{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-4f6215e{--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-1047 .elementor-element.elementor-element-b32f06b{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-bb3a5c8{text-align:left;}.elementor-1047 .elementor-element.elementor-element-bb3a5c8 img{width:100%;height:90px;}.elementor-1047 .elementor-element.elementor-element-0cf49d7 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-6ac0829 .elementor-heading-title{font-size:16px;}.elementor-1047 .elementor-element.elementor-element-1607128 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-1accef7 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-531d54a .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-8c70834 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-9f2e122 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-7f9e3ac .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-8f02618 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-a3fead5 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-8f83ff7 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-1631cce{--e-n-carousel-swiper-slides-to-display:1;}.elementor-1047 .elementor-element.elementor-element-e8ba5c5 .elementor-heading-title{font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1047 .elementor-element.elementor-element-2cdf67e{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-6b7be2f{--e-transform-rotateZ:-3deg;}.elementor-1047 .elementor-element.elementor-element-bcb1f5f{--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-1047 .elementor-element.elementor-element-10c00d8{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-fecc1ca{text-align:left;}.elementor-1047 .elementor-element.elementor-element-fecc1ca img{width:100%;height:80px;}.elementor-1047 .elementor-element.elementor-element-b2f8ab3 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-c94c486 .elementor-heading-title{font-size:16px;}.elementor-1047 .elementor-element.elementor-element-d9adbf2 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-a7a406c .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-16622fe .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-5875c84{--e-n-carousel-swiper-slides-to-display:1;}.elementor-1047 .elementor-element.elementor-element-3fc6c94 .elementor-heading-title{font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1047 .elementor-element.elementor-element-d5befc3{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-2cc1fdf5{--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-1047 .elementor-element.elementor-element-284a97dc{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-1e0c1e49{text-align:left;}.elementor-1047 .elementor-element.elementor-element-1e0c1e49 img{width:100%;height:40px;}.elementor-1047 .elementor-element.elementor-element-592d65ee .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-517a0258 .elementor-heading-title{font-size:16px;}.elementor-1047 .elementor-element.elementor-element-175401f .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-3f4b393 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-c4624a4 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-a1f8820 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-ff4cedd .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-626a063 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-982dd33 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-d51df4b .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-18f1019 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-1585adc .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-7c4fffa{--e-n-carousel-swiper-slides-to-display:1;}.elementor-1047 .elementor-element.elementor-element-7f15a3e .elementor-heading-title{font-size:var( --e-global-typography-fe3b774-font-size );}.elementor-1047 .elementor-element.elementor-element-6f6f2fe1{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-99a828d{--e-transform-rotateZ:-3deg;}.elementor-1047 .elementor-element.elementor-element-3c296ea{--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-1047 .elementor-element.elementor-element-dfe306b{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1047 .elementor-element.elementor-element-94a686e{text-align:left;}.elementor-1047 .elementor-element.elementor-element-94a686e img{width:100%;}.elementor-1047 .elementor-element.elementor-element-3465d21 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-98ec817 .elementor-heading-title{font-size:16px;}.elementor-1047 .elementor-element.elementor-element-66e8918 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-d520bfb .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-483afdf .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-17152c7 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-95e3984 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-d430793 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-afdcc94 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-6347794 .elementor-heading-title{font-size:var( --e-global-typography-9dfc487-font-size );}.elementor-1047 .elementor-element.elementor-element-aa02918{--e-n-carousel-swiper-slides-to-display:1;}.elementor-1047 .elementor-element.elementor-element-3c2faaf1 .elementor-heading-title{font-size:var( --e-global-typography-fe3b774-font-size );}}/* Start custom CSS for heading, class: .elementor-element-6ac0829 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4f6215e *//* 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-5345fa7 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-904a937 *//* Image Container - Setup */
.image-container {
position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    display: block !important;
    width: 100% !important;
    max-width: 300px !important; 
    margin: 0 auto !important; 
    height: auto !important; 
    aspect-ratio: 5 / 7 !important;
}

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

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

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

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

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

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

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

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

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

.image-container--4-3 {
    max-width: 480px !important; 
    aspect-ratio: 16 / 9 !important; 
    height: auto !important; 
}

@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 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;
    }
}

/* 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;
    }
    
    .image-container, 
    .image-container--4-3 {
        max-width: 100% !important; 
    }
        
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c7e463c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a46c916 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5345fa7 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-904a937 *//* Image Container - Setup */
.image-container {
position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    display: block !important;
    width: 100% !important;
    max-width: 300px !important; 
    margin: 0 auto !important; 
    height: auto !important; 
    aspect-ratio: 5 / 7 !important;
}

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

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

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

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

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

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

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

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

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

.image-container--4-3 {
    max-width: 480px !important; 
    aspect-ratio: 16 / 9 !important; 
    height: auto !important; 
}

@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 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;
    }
}

/* 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;
    }
    
    .image-container, 
    .image-container--4-3 {
        max-width: 100% !important; 
    }
        
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c7e463c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a46c916 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5345fa7 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-904a937 *//* Image Container - Setup */
.image-container {
position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    display: block !important;
    width: 100% !important;
    max-width: 300px !important; 
    margin: 0 auto !important; 
    height: auto !important; 
    aspect-ratio: 5 / 7 !important;
}

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

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

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

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

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

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

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

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

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

.image-container--4-3 {
    max-width: 480px !important; 
    aspect-ratio: 16 / 9 !important; 
    height: auto !important; 
}

@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 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;
    }
}

/* 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;
    }
    
    .image-container, 
    .image-container--4-3 {
        max-width: 100% !important; 
    }
        
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c7e463c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a46c916 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5345fa7 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-904a937 *//* Image Container - Setup */
.image-container {
position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    display: block !important;
    width: 100% !important;
    max-width: 300px !important; 
    margin: 0 auto !important; 
    height: auto !important; 
    aspect-ratio: 5 / 7 !important;
}

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

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

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

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

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

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

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

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

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

.image-container--4-3 {
    max-width: 480px !important; 
    aspect-ratio: 16 / 9 !important; 
    height: auto !important; 
}

@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 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;
    }
}

/* 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;
    }
    
    .image-container, 
    .image-container--4-3 {
        max-width: 100% !important; 
    }
        
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c7e463c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a46c916 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5345fa7 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-904a937 *//* Image Container - Setup */
.image-container {
position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    display: block !important;
    width: 100% !important;
    max-width: 300px !important; 
    margin: 0 auto !important; 
    height: auto !important; 
    aspect-ratio: 5 / 7 !important;
}

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

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

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

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

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

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

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

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

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

.image-container--4-3 {
    max-width: 480px !important; 
    aspect-ratio: 16 / 9 !important; 
    height: auto !important; 
}

@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 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;
    }
}

/* 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;
    }
    
    .image-container, 
    .image-container--4-3 {
        max-width: 100% !important; 
    }
        
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c7e463c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a46c916 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5345fa7 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-904a937 *//* Image Container - Setup */
.image-container {
position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    display: block !important;
    width: 100% !important;
    max-width: 300px !important; 
    margin: 0 auto !important; 
    height: auto !important; 
    aspect-ratio: 5 / 7 !important;
}

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

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

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

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

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

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

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

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

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

.image-container--4-3 {
    max-width: 480px !important; 
    aspect-ratio: 16 / 9 !important; 
    height: auto !important; 
}

@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 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;
    }
}

/* 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;
    }
    
    .image-container, 
    .image-container--4-3 {
        max-width: 100% !important; 
    }
        
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c7e463c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a46c916 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5345fa7 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-904a937 *//* Image Container - Setup */
.image-container {
position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    display: block !important;
    width: 100% !important;
    max-width: 300px !important; 
    margin: 0 auto !important; 
    height: auto !important; 
    aspect-ratio: 5 / 7 !important;
}

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

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

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

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

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

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

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

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

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

.image-container--4-3 {
    max-width: 480px !important; 
    aspect-ratio: 16 / 9 !important; 
    height: auto !important; 
}

@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 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;
    }
}

/* 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;
    }
    
    .image-container, 
    .image-container--4-3 {
        max-width: 100% !important; 
    }
        
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c7e463c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a46c916 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5345fa7 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-904a937 *//* Image Container - Setup */
.image-container {
position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    display: block !important;
    width: 100% !important;
    max-width: 300px !important; 
    margin: 0 auto !important; 
    height: auto !important; 
    aspect-ratio: 5 / 7 !important;
}

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

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

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

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

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

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

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

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

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

.image-container--4-3 {
    max-width: 480px !important; 
    aspect-ratio: 16 / 9 !important; 
    height: auto !important; 
}

@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 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;
    }
}

/* 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;
    }
    
    .image-container, 
    .image-container--4-3 {
        max-width: 100% !important; 
    }
        
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c7e463c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a46c916 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5345fa7 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-904a937 *//* Image Container - Setup */
.image-container {
position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    display: block !important;
    width: 100% !important;
    max-width: 300px !important; 
    margin: 0 auto !important; 
    height: auto !important; 
    aspect-ratio: 5 / 7 !important;
}

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

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

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

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

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

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

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

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

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

.image-container--4-3 {
    max-width: 480px !important; 
    aspect-ratio: 16 / 9 !important; 
    height: auto !important; 
}

@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 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;
    }
}

/* 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;
    }
    
    .image-container, 
    .image-container--4-3 {
        max-width: 100% !important; 
    }
        
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c7e463c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a46c916 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5345fa7 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-904a937 *//* Image Container - Setup */
.image-container {
position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    display: block !important;
    width: 100% !important;
    max-width: 300px !important; 
    margin: 0 auto !important; 
    height: auto !important; 
    aspect-ratio: 5 / 7 !important;
}

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

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

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

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

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

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

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

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

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

.image-container--4-3 {
    max-width: 480px !important; 
    aspect-ratio: 16 / 9 !important; 
    height: auto !important; 
}

@media (max-width: 768px) {
    .image-container {
        height: 0;
        padding-bottom: 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;
    }
}

/* 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;
    }
    
    .image-container, 
    .image-container--4-3 {
        max-width: 100% !important; 
    }
        
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c7e463c */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a46c916 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c94c486 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-bcb1f5f *//* 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-c22d450 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-dedac55 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9491112 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c22d450 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-dedac55 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9491112 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c22d450 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-dedac55 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9491112 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c22d450 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-dedac55 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9491112 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-517a0258 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2cc1fdf5 *//* 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-705f9e1 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dcb6b38 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-3359c39 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5883993 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9cd7988 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-781bb65 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-603e16a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e898b71 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-08d20fb */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-862a9dd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d6a3d10 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4dfd5f7 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-21f570e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ce8461c *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-0a3115b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8e3abf5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f3befe6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0f30751 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7255ae6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a72b018 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-705f9e1 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dcb6b38 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-3359c39 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5883993 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9cd7988 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-781bb65 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-603e16a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e898b71 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-08d20fb */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-862a9dd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d6a3d10 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4dfd5f7 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-21f570e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ce8461c *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-0a3115b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8e3abf5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f3befe6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0f30751 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7255ae6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a72b018 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-705f9e1 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dcb6b38 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-3359c39 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5883993 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9cd7988 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-781bb65 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-603e16a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e898b71 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-08d20fb */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-862a9dd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d6a3d10 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4dfd5f7 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-21f570e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ce8461c *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-0a3115b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8e3abf5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f3befe6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0f30751 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7255ae6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a72b018 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-705f9e1 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dcb6b38 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-3359c39 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5883993 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9cd7988 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-781bb65 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-603e16a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e898b71 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-08d20fb */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-862a9dd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d6a3d10 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4dfd5f7 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-21f570e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ce8461c *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-0a3115b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8e3abf5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f3befe6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0f30751 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7255ae6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a72b018 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-705f9e1 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dcb6b38 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-3359c39 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5883993 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9cd7988 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-781bb65 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-603e16a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e898b71 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-08d20fb */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-862a9dd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d6a3d10 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4dfd5f7 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-21f570e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ce8461c *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-0a3115b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8e3abf5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f3befe6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0f30751 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7255ae6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a72b018 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-705f9e1 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dcb6b38 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-3359c39 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5883993 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9cd7988 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-781bb65 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-603e16a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e898b71 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-08d20fb */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-862a9dd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d6a3d10 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4dfd5f7 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-21f570e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ce8461c *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-0a3115b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8e3abf5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f3befe6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0f30751 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7255ae6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a72b018 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-705f9e1 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dcb6b38 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-3359c39 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5883993 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9cd7988 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-781bb65 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-603e16a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e898b71 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-08d20fb */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-862a9dd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d6a3d10 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4dfd5f7 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-21f570e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ce8461c *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-0a3115b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8e3abf5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f3befe6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0f30751 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7255ae6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a72b018 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-705f9e1 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dcb6b38 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-3359c39 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5883993 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9cd7988 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-781bb65 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-603e16a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e898b71 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-08d20fb */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-862a9dd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d6a3d10 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4dfd5f7 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-21f570e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ce8461c *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-0a3115b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8e3abf5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f3befe6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0f30751 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7255ae6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a72b018 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-705f9e1 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dcb6b38 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-3359c39 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5883993 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9cd7988 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-781bb65 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-603e16a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e898b71 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-08d20fb */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-862a9dd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d6a3d10 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4dfd5f7 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-21f570e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ce8461c *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-0a3115b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8e3abf5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f3befe6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0f30751 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7255ae6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a72b018 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-705f9e1 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dcb6b38 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-3359c39 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5883993 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9cd7988 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-781bb65 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-603e16a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e898b71 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-08d20fb */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-862a9dd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d6a3d10 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4dfd5f7 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-21f570e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ce8461c *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-0a3115b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8e3abf5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f3befe6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0f30751 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7255ae6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a72b018 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-705f9e1 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dcb6b38 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-3359c39 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5883993 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9cd7988 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-781bb65 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-603e16a */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e898b71 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-08d20fb */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-862a9dd *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d6a3d10 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4dfd5f7 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-21f570e */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ce8461c *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-0a3115b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8e3abf5 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f3befe6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0f30751 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-7255ae6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a72b018 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-98ec817 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3c296ea *//* 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-ffad5fd */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-cb2d310 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2a040fd */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9627ea8 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-338fac6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d53cf67 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-804c492 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3388524 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-e67b37b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dc87f1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-629e3a3 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e2a513d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ae67418 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ccfcd09 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a104e24 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-21b1eb9 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ffad5fd */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-cb2d310 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2a040fd */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9627ea8 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-338fac6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d53cf67 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-804c492 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3388524 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-e67b37b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dc87f1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-629e3a3 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e2a513d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ae67418 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ccfcd09 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a104e24 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-21b1eb9 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ffad5fd */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-cb2d310 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2a040fd */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9627ea8 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-338fac6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d53cf67 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-804c492 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3388524 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-e67b37b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dc87f1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-629e3a3 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e2a513d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ae67418 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ccfcd09 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a104e24 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-21b1eb9 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ffad5fd */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-cb2d310 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2a040fd */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9627ea8 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-338fac6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d53cf67 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-804c492 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3388524 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-e67b37b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dc87f1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-629e3a3 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e2a513d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ae67418 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ccfcd09 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a104e24 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-21b1eb9 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ffad5fd */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-cb2d310 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2a040fd */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9627ea8 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-338fac6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d53cf67 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-804c492 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3388524 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-e67b37b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dc87f1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-629e3a3 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e2a513d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ae67418 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ccfcd09 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a104e24 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-21b1eb9 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ffad5fd */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-cb2d310 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2a040fd */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9627ea8 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-338fac6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d53cf67 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-804c492 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3388524 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-e67b37b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dc87f1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-629e3a3 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e2a513d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ae67418 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ccfcd09 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a104e24 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-21b1eb9 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ffad5fd */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-cb2d310 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2a040fd */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9627ea8 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-338fac6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d53cf67 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-804c492 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3388524 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-e67b37b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dc87f1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-629e3a3 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e2a513d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ae67418 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ccfcd09 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a104e24 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-21b1eb9 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ffad5fd */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-cb2d310 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2a040fd */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9627ea8 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-338fac6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d53cf67 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-804c492 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3388524 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-e67b37b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dc87f1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-629e3a3 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e2a513d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ae67418 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ccfcd09 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a104e24 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-21b1eb9 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ffad5fd */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-cb2d310 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2a040fd */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9627ea8 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-338fac6 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d53cf67 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-804c492 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3388524 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-e67b37b */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dc87f1b *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-629e3a3 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e2a513d *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ae67418 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ccfcd09 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a104e24 */aa {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-21b1eb9 *//* Image Container - Setup */
.image-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    cursor: pointer;
    width: 100%;
    height: 20rem;
}

/* Base image - ALWAYS visible */
.image-container .base-image {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.image-container .base-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Black overlay - appears on hover */
.image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 15px;
}

.image-container:hover::before {
    opacity: 1;
}

/* Hover Text - hidden by default */
.hover-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 2;
}

.image-container:hover .hover-text {
    opacity: 1;
}

/* Text styling */
.hover-text * {
    color: #fff !important;
}

.hover-text .elementor-heading-title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
}

.hover-text .elementor-text-editor {
    font-size: 15px;
    line-height: 1.6;
}/* End custom CSS */