.elementor-31 .elementor-element.elementor-element-fc84998{--display:flex;--min-height:100vh;--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;--justify-content:center;--align-items:center;--overlay-opacity:0.5;}.elementor-31 .elementor-element.elementor-element-fc84998::before, .elementor-31 .elementor-element.elementor-element-fc84998 > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-fc84998 > .e-con-inner > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-fc84998 > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-fc84998 > .e-con-inner > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-fc84998 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-06f55ec );--background-overlay:'';}.elementor-31 .elementor-element.elementor-element-fc84998:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-fc84998 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background:url("https://navtravel.com/wp-content/uploads/2026/02/Navarro-Hero-BG-Fallback.webp") 50% 50%;background-size:cover;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-31 .elementor-element.elementor-element-7713134{text-align:center;}.elementor-31 .elementor-element.elementor-element-7713134 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:56px;font-weight:700;color:var( --e-global-color-3af4433 );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-31 .elementor-element.elementor-element-58ad1f4{width:var( --container-widget-width, 70% );max-width:70%;--container-widget-width:70%;--container-widget-flex-grow:0;text-align:center;color:var( --e-global-color-3af4433 );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-31 .elementor-element.elementor-element-8221873 .elementor-button{background-color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:600;text-transform:capitalize;fill:#FFFFFF;color:#FFFFFF;border-radius:6px 6px 6px 6px;padding:20px 40px 20px 40px;}.elementor-31 .elementor-element.elementor-element-8221873.elementor-element{--align-self:center;}.elementor-31 .elementor-element.elementor-element-40a115c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:50px 50px;--row-gap:50px;--column-gap:50px;--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-31 .elementor-element.elementor-element-63f5085{--display:flex;--min-height:287px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--border-radius:20px 20px 20px 20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-63f5085:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-63f5085 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://navtravel.com/wp-content/uploads/2025/11/travel-card-1.webp");background-position:center center;background-repeat:no-repeat;background-size:contain;}.elementor-31 .elementor-element.elementor-element-63f5085.e-con{--align-self:stretch;}.elementor-31 .elementor-element.elementor-element-7c18347{--display:flex;--justify-content:center;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-31 .elementor-element.elementor-element-fdd3841{padding:0px 0px 0px 0px;}.elementor-31 .elementor-element.elementor-element-fdd3841 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:30px;font-weight:800;text-transform:uppercase;}.elementor-31 .elementor-element.elementor-element-acbf700 .elementor-button{background-color:#272362;font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:600;text-transform:uppercase;fill:#FFFFFF;color:#FFFFFF;border-radius:6px 6px 6px 6px;padding:10px 20px 10px 20px;}.elementor-31 .elementor-element.elementor-element-acbf700.elementor-element{--align-self:flex-start;}.elementor-31 .elementor-element.elementor-element-93a0d56{--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;--justify-content:space-evenly;--border-radius:20px 20px 20px 20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-93a0d56:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-93a0d56 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://navtravel.com/wp-content/uploads/2025/11/travel-card-1.webp");background-position:center center;background-repeat:no-repeat;background-size:contain;}.elementor-31 .elementor-element.elementor-element-f23e860{--display:flex;--justify-content:center;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-31 .elementor-element.elementor-element-99ef7f8{padding:0px 0px 0px 0px;}.elementor-31 .elementor-element.elementor-element-99ef7f8 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:30px;font-weight:800;text-transform:uppercase;}.elementor-31 .elementor-element.elementor-element-3231dca .elementor-button{background-color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:600;text-transform:uppercase;fill:#FFFFFF;color:#FFFFFF;border-radius:6px 6px 6px 6px;padding:10px 20px 10px 20px;}.elementor-31 .elementor-element.elementor-element-3231dca.elementor-element{--align-self:flex-start;}.elementor-31 .elementor-element.elementor-element-1a02ddd{--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:50px;--padding-bottom:50px;--padding-left:10px;--padding-right:10px;}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-31 .elementor-element.elementor-element-660951a{--divider-border-style:solid;--divider-color:var( --e-global-color-text );--divider-border-width:1px;}.elementor-31 .elementor-element.elementor-element-660951a .elementor-divider-separator{width:30%;margin:0 auto;margin-center:0;}.elementor-31 .elementor-element.elementor-element-660951a .elementor-divider{text-align:center;padding-block-start:4px;padding-block-end:4px;}.elementor-31 .elementor-element.elementor-element-660951a .elementor-divider__text{color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:22px;font-weight:500;text-transform:capitalize;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-31 .elementor-element.elementor-element-de46e64.elementor-element{--align-self:flex-start;}body:not(.rtl) .elementor-31 .elementor-element.elementor-element-de46e64{left:50px;}body.rtl .elementor-31 .elementor-element.elementor-element-de46e64{right:50px;}.elementor-31 .elementor-element.elementor-element-de46e64{top:176px;}.elementor-31 .elementor-element.elementor-element-de46e64 .elementor-icon-wrapper{text-align:center;}.elementor-31 .elementor-element.elementor-element-de46e64 .elementor-icon{font-size:60px;}.elementor-31 .elementor-element.elementor-element-de46e64 .elementor-icon svg{height:60px;}.elementor-31 .elementor-element.elementor-element-de46e64 .elementor-icon-wrapper svg{width:auto;}.elementor-31 .elementor-element.elementor-element-2d03fcd{text-align:center;}.elementor-31 .elementor-element.elementor-element-2d03fcd .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:40px;font-weight:700;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-f43c1fe{width:var( --container-widget-width, 41% );max-width:41%;--container-widget-width:41%;--container-widget-flex-grow:0;text-align:center;font-family:"DM Sans", Sans-serif;font-size:17px;font-weight:600;}.elementor-31 .elementor-element.elementor-element-f43c1fe.elementor-element{--align-self:center;}.elementor-31 .elementor-element.elementor-element-367651b{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-31 .elementor-element.elementor-element-d99558b{--display:flex;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-3af4433 );--border-color:var( --e-global-color-3af4433 );--border-radius:15px 15px 15px 15px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-31 .elementor-element.elementor-element-b78bcb3 img{width:350px;max-width:100%;height:250px;border-radius:15px 15px 15px 15px;}.elementor-31 .elementor-element.elementor-element-16167a2{padding:10px 0px 10px 0px;}.elementor-31 .elementor-element.elementor-element-16167a2 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:24px;font-weight:600;text-transform:capitalize;color:var( --e-global-color-06f55ec );}.elementor-widget-icon-box.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon-box.elementor-view-framed .elementor-icon, .elementor-widget-icon-box.elementor-view-default .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-icon-box .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box:has(:hover) .elementor-icon-box-title,
					 .elementor-widget-icon-box:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-31 .elementor-element.elementor-element-8efd34f{padding:5px 0px 5px 0px;}.elementor-31 .elementor-element.elementor-element-8efd34f .elementor-icon-box-wrapper{align-items:center;gap:15px;}.elementor-31 .elementor-element.elementor-element-8efd34f .elementor-icon-box-title{margin-block-end:0px;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-8efd34f.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-31 .elementor-element.elementor-element-8efd34f.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-8efd34f.elementor-view-default .elementor-icon{fill:var( --e-global-color-secondary );color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-31 .elementor-element.elementor-element-8efd34f .elementor-icon{font-size:20px;}.elementor-31 .elementor-element.elementor-element-8efd34f .elementor-icon-box-title, .elementor-31 .elementor-element.elementor-element-8efd34f .elementor-icon-box-title a{font-family:"DM Sans", Sans-serif;font-size:14px;font-weight:400;line-height:1.4em;}.elementor-31 .elementor-element.elementor-element-8efd34f .elementor-icon-box-description{font-family:"DM Sans", Sans-serif;font-size:12px;font-weight:400;}.elementor-31 .elementor-element.elementor-element-c9dbc08{--divider-border-style:solid;--divider-color:var( --e-global-color-6186a61 );--divider-border-width:1px;}.elementor-31 .elementor-element.elementor-element-c9dbc08 .elementor-divider-separator{width:100%;}.elementor-31 .elementor-element.elementor-element-c9dbc08 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-31 .elementor-element.elementor-element-091f720{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-8b3fa09{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-b04149c .elementor-button{background-color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:600;text-transform:capitalize;fill:#FFFFFF;color:#FFFFFF;border-radius:5px 5px 5px 5px;padding:15px 20px 15px 20px;}.elementor-31 .elementor-element.elementor-element-b04149c{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-31 .elementor-element.elementor-element-b04149c.elementor-element{--align-self:flex-start;}.elementor-31 .elementor-element.elementor-element-b04149c .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-31 .elementor-element.elementor-element-b04149c .elementor-button .elementor-button-content-wrapper{gap:0px;}.elementor-31 .elementor-element.elementor-element-8a28423{--display:flex;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-3af4433 );--border-color:var( --e-global-color-3af4433 );--border-radius:15px 15px 15px 15px;}.elementor-31 .elementor-element.elementor-element-2a44a2a img{width:350px;max-width:100%;height:250px;border-radius:15px 15px 15px 15px;}.elementor-31 .elementor-element.elementor-element-2e03485{padding:10px 0px 10px 0px;}.elementor-31 .elementor-element.elementor-element-2e03485 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:24px;font-weight:600;text-transform:capitalize;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-126c1ef{padding:5px 0px 5px 0px;}.elementor-31 .elementor-element.elementor-element-126c1ef .elementor-icon-box-wrapper{align-items:center;gap:15px;}.elementor-31 .elementor-element.elementor-element-126c1ef .elementor-icon-box-title{margin-block-end:0px;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-126c1ef.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-31 .elementor-element.elementor-element-126c1ef.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-126c1ef.elementor-view-default .elementor-icon{fill:var( --e-global-color-secondary );color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-31 .elementor-element.elementor-element-126c1ef .elementor-icon{font-size:20px;}.elementor-31 .elementor-element.elementor-element-126c1ef .elementor-icon-box-title, .elementor-31 .elementor-element.elementor-element-126c1ef .elementor-icon-box-title a{font-family:"DM Sans", Sans-serif;font-size:14px;font-weight:400;line-height:1.4em;}.elementor-31 .elementor-element.elementor-element-126c1ef .elementor-icon-box-description{font-family:"DM Sans", Sans-serif;font-size:12px;font-weight:400;}.elementor-31 .elementor-element.elementor-element-03c4447{--divider-border-style:solid;--divider-color:var( --e-global-color-6186a61 );--divider-border-width:1px;}.elementor-31 .elementor-element.elementor-element-03c4447 .elementor-divider-separator{width:100%;}.elementor-31 .elementor-element.elementor-element-03c4447 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-31 .elementor-element.elementor-element-c9ad25b{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-464e691{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-acac4e4 .elementor-button{background-color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:600;text-transform:capitalize;fill:#FFFFFF;color:#FFFFFF;border-radius:5px 5px 5px 5px;padding:15px 20px 15px 20px;}.elementor-31 .elementor-element.elementor-element-acac4e4{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-31 .elementor-element.elementor-element-acac4e4.elementor-element{--align-self:flex-start;}.elementor-31 .elementor-element.elementor-element-acac4e4 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-31 .elementor-element.elementor-element-acac4e4 .elementor-button .elementor-button-content-wrapper{gap:0px;}.elementor-31 .elementor-element.elementor-element-6bf2c4f{--display:flex;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-3af4433 );--border-color:var( --e-global-color-3af4433 );--border-radius:15px 15px 15px 15px;}.elementor-31 .elementor-element.elementor-element-e734157 img{width:350px;max-width:100%;height:250px;border-radius:15px 15px 15px 15px;}.elementor-31 .elementor-element.elementor-element-a9da444{padding:10px 0px 10px 0px;}.elementor-31 .elementor-element.elementor-element-a9da444 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:24px;font-weight:600;text-transform:capitalize;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-9b64e3a{padding:5px 0px 5px 0px;}.elementor-31 .elementor-element.elementor-element-9b64e3a .elementor-icon-box-wrapper{align-items:center;gap:15px;}.elementor-31 .elementor-element.elementor-element-9b64e3a .elementor-icon-box-title{margin-block-end:0px;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-9b64e3a.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-31 .elementor-element.elementor-element-9b64e3a.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-9b64e3a.elementor-view-default .elementor-icon{fill:var( --e-global-color-secondary );color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-31 .elementor-element.elementor-element-9b64e3a .elementor-icon{font-size:20px;}.elementor-31 .elementor-element.elementor-element-9b64e3a .elementor-icon-box-title, .elementor-31 .elementor-element.elementor-element-9b64e3a .elementor-icon-box-title a{font-family:"DM Sans", Sans-serif;font-size:14px;font-weight:400;line-height:1.4em;}.elementor-31 .elementor-element.elementor-element-9b64e3a .elementor-icon-box-description{font-family:"DM Sans", Sans-serif;font-size:12px;font-weight:400;}.elementor-31 .elementor-element.elementor-element-7b7a829{--divider-border-style:solid;--divider-color:var( --e-global-color-6186a61 );--divider-border-width:1px;}.elementor-31 .elementor-element.elementor-element-7b7a829 .elementor-divider-separator{width:100%;}.elementor-31 .elementor-element.elementor-element-7b7a829 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-31 .elementor-element.elementor-element-92a422e{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-dd71f06{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-5c36082 .elementor-button{background-color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:600;text-transform:capitalize;fill:#FFFFFF;color:#FFFFFF;border-radius:5px 5px 5px 5px;padding:15px 20px 15px 20px;}.elementor-31 .elementor-element.elementor-element-5c36082{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-31 .elementor-element.elementor-element-5c36082.elementor-element{--align-self:flex-start;}.elementor-31 .elementor-element.elementor-element-5c36082 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-31 .elementor-element.elementor-element-5c36082 .elementor-button .elementor-button-content-wrapper{gap:0px;}.elementor-31 .elementor-element.elementor-element-12a99d4{--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;--overlay-opacity:0.8;--padding-top:50px;--padding-bottom:50px;--padding-left:10px;--padding-right:10px;}.elementor-31 .elementor-element.elementor-element-12a99d4:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-12a99d4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-3af4433 );}.elementor-31 .elementor-element.elementor-element-12a99d4::before, .elementor-31 .elementor-element.elementor-element-12a99d4 > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-12a99d4 > .e-con-inner > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-12a99d4 > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-12a99d4 > .e-con-inner > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-12a99d4 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://navtravel.com/wp-content/uploads/2025/11/about-page-journey-bg-1.webp");--background-overlay:'';background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-31 .elementor-element.elementor-element-e68363b{--divider-border-style:solid;--divider-color:var( --e-global-color-text );--divider-border-width:1px;}.elementor-31 .elementor-element.elementor-element-e68363b .elementor-divider-separator{width:30%;margin:0 auto;margin-center:0;}.elementor-31 .elementor-element.elementor-element-e68363b .elementor-divider{text-align:center;padding-block-start:4px;padding-block-end:4px;}.elementor-31 .elementor-element.elementor-element-e68363b .elementor-divider__text{color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:22px;font-weight:500;text-transform:capitalize;}.elementor-31 .elementor-element.elementor-element-3a1be1a{text-align:center;}.elementor-31 .elementor-element.elementor-element-3a1be1a .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:40px;font-weight:700;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-5c4fa65{width:var( --container-widget-width, 41% );max-width:41%;--container-widget-width:41%;--container-widget-flex-grow:0;text-align:center;font-family:"DM Sans", Sans-serif;font-size:17px;font-weight:600;}.elementor-31 .elementor-element.elementor-element-5c4fa65.elementor-element{--align-self:center;}.elementor-31 .elementor-element.elementor-element-67e4a21{--display:grid;--e-con-grid-template-columns:repeat(4, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-31 .elementor-element.elementor-element-ea18155{--display:flex;--border-radius:15px 15px 15px 15px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-31 .elementor-element.elementor-element-ea18155:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-ea18155 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-6a9086a );}.elementor-31 .elementor-element.elementor-element-f0d4982 .elementor-icon-box-wrapper{align-items:center;text-align:center;gap:0px;}.elementor-31 .elementor-element.elementor-element-f0d4982 .elementor-icon-box-title{margin-block-end:10px;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-f0d4982.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-3af4433 );}.elementor-31 .elementor-element.elementor-element-f0d4982.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-f0d4982.elementor-view-default .elementor-icon{fill:var( --e-global-color-3af4433 );color:var( --e-global-color-3af4433 );border-color:var( --e-global-color-3af4433 );}.elementor-31 .elementor-element.elementor-element-f0d4982.elementor-view-stacked:has(:hover) .elementor-icon,
					 .elementor-31 .elementor-element.elementor-element-f0d4982.elementor-view-stacked:has(:focus) .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-31 .elementor-element.elementor-element-f0d4982.elementor-view-framed:has(:hover) .elementor-icon,
					 .elementor-31 .elementor-element.elementor-element-f0d4982.elementor-view-default:has(:hover) .elementor-icon,
					 .elementor-31 .elementor-element.elementor-element-f0d4982.elementor-view-framed:has(:focus) .elementor-icon,
					 .elementor-31 .elementor-element.elementor-element-f0d4982.elementor-view-default:has(:focus) .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-31 .elementor-element.elementor-element-f0d4982 .elementor-icon{font-size:30px;padding:15px;border-width:1px 1px 1px 1px;}.elementor-31 .elementor-element.elementor-element-f0d4982 .elementor-icon-box-title, .elementor-31 .elementor-element.elementor-element-f0d4982 .elementor-icon-box-title a{font-family:"DM Sans", Sans-serif;font-size:20px;font-weight:600;line-height:1.2em;}.elementor-31 .elementor-element.elementor-element-864a32d{--display:flex;--border-radius:15px 15px 15px 15px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-31 .elementor-element.elementor-element-864a32d:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-864a32d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-6a9086a );}.elementor-31 .elementor-element.elementor-element-11b4337 .elementor-icon-box-wrapper{align-items:center;text-align:center;gap:0px;}.elementor-31 .elementor-element.elementor-element-11b4337 .elementor-icon-box-title{margin-block-end:10px;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-11b4337.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-3af4433 );}.elementor-31 .elementor-element.elementor-element-11b4337.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-11b4337.elementor-view-default .elementor-icon{fill:var( --e-global-color-3af4433 );color:var( --e-global-color-3af4433 );border-color:var( --e-global-color-3af4433 );}.elementor-31 .elementor-element.elementor-element-11b4337.elementor-view-stacked:has(:hover) .elementor-icon,
					 .elementor-31 .elementor-element.elementor-element-11b4337.elementor-view-stacked:has(:focus) .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-31 .elementor-element.elementor-element-11b4337.elementor-view-framed:has(:hover) .elementor-icon,
					 .elementor-31 .elementor-element.elementor-element-11b4337.elementor-view-default:has(:hover) .elementor-icon,
					 .elementor-31 .elementor-element.elementor-element-11b4337.elementor-view-framed:has(:focus) .elementor-icon,
					 .elementor-31 .elementor-element.elementor-element-11b4337.elementor-view-default:has(:focus) .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-31 .elementor-element.elementor-element-11b4337 .elementor-icon{font-size:30px;padding:15px;border-width:1px 1px 1px 1px;}.elementor-31 .elementor-element.elementor-element-11b4337 .elementor-icon-box-title, .elementor-31 .elementor-element.elementor-element-11b4337 .elementor-icon-box-title a{font-family:"DM Sans", Sans-serif;font-size:20px;font-weight:600;line-height:1.2em;}.elementor-31 .elementor-element.elementor-element-67e561b{--display:flex;--border-radius:15px 15px 15px 15px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-31 .elementor-element.elementor-element-67e561b:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-67e561b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-6a9086a );}.elementor-31 .elementor-element.elementor-element-4a7a7f0 .elementor-icon-box-wrapper{align-items:center;text-align:center;gap:0px;}.elementor-31 .elementor-element.elementor-element-4a7a7f0 .elementor-icon-box-title{margin-block-end:10px;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-4a7a7f0.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-3af4433 );}.elementor-31 .elementor-element.elementor-element-4a7a7f0.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-4a7a7f0.elementor-view-default .elementor-icon{fill:var( --e-global-color-3af4433 );color:var( --e-global-color-3af4433 );border-color:var( --e-global-color-3af4433 );}.elementor-31 .elementor-element.elementor-element-4a7a7f0.elementor-view-stacked:has(:hover) .elementor-icon,
					 .elementor-31 .elementor-element.elementor-element-4a7a7f0.elementor-view-stacked:has(:focus) .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-31 .elementor-element.elementor-element-4a7a7f0.elementor-view-framed:has(:hover) .elementor-icon,
					 .elementor-31 .elementor-element.elementor-element-4a7a7f0.elementor-view-default:has(:hover) .elementor-icon,
					 .elementor-31 .elementor-element.elementor-element-4a7a7f0.elementor-view-framed:has(:focus) .elementor-icon,
					 .elementor-31 .elementor-element.elementor-element-4a7a7f0.elementor-view-default:has(:focus) .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-31 .elementor-element.elementor-element-4a7a7f0 .elementor-icon{font-size:30px;padding:15px;border-width:1px 1px 1px 1px;}.elementor-31 .elementor-element.elementor-element-4a7a7f0 .elementor-icon-box-title, .elementor-31 .elementor-element.elementor-element-4a7a7f0 .elementor-icon-box-title a{font-family:"DM Sans", Sans-serif;font-size:20px;font-weight:600;line-height:1.2em;}.elementor-31 .elementor-element.elementor-element-0cd3129{--display:flex;--border-radius:15px 15px 15px 15px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-31 .elementor-element.elementor-element-0cd3129:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-0cd3129 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-6a9086a );}.elementor-31 .elementor-element.elementor-element-1c02ae3 .elementor-icon-box-wrapper{align-items:center;text-align:center;gap:0px;}.elementor-31 .elementor-element.elementor-element-1c02ae3 .elementor-icon-box-title{margin-block-end:10px;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-1c02ae3.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-3af4433 );}.elementor-31 .elementor-element.elementor-element-1c02ae3.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-1c02ae3.elementor-view-default .elementor-icon{fill:var( --e-global-color-3af4433 );color:var( --e-global-color-3af4433 );border-color:var( --e-global-color-3af4433 );}.elementor-31 .elementor-element.elementor-element-1c02ae3.elementor-view-stacked:has(:hover) .elementor-icon,
					 .elementor-31 .elementor-element.elementor-element-1c02ae3.elementor-view-stacked:has(:focus) .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-31 .elementor-element.elementor-element-1c02ae3.elementor-view-framed:has(:hover) .elementor-icon,
					 .elementor-31 .elementor-element.elementor-element-1c02ae3.elementor-view-default:has(:hover) .elementor-icon,
					 .elementor-31 .elementor-element.elementor-element-1c02ae3.elementor-view-framed:has(:focus) .elementor-icon,
					 .elementor-31 .elementor-element.elementor-element-1c02ae3.elementor-view-default:has(:focus) .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-31 .elementor-element.elementor-element-1c02ae3 .elementor-icon{font-size:30px;padding:15px;border-width:1px 1px 1px 1px;}.elementor-31 .elementor-element.elementor-element-1c02ae3 .elementor-icon-box-title, .elementor-31 .elementor-element.elementor-element-1c02ae3 .elementor-icon-box-title a{font-family:"DM Sans", Sans-serif;font-size:20px;font-weight:600;line-height:1.2em;}.elementor-31 .elementor-element.elementor-element-f197d57{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-1568f80{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );border-style:none;--border-style:none;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-1568f80.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-916a474{--display:flex;--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;--justify-content:center;--align-items:center;--gap:10px 10px;--row-gap:10px;--column-gap:10px;border-style:none;--border-style:none;}.elementor-31 .elementor-element.elementor-element-916a474.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-053693e{padding:10px 10px 10px 10px;text-align:center;}.elementor-31 .elementor-element.elementor-element-053693e img{width:250px;max-width:100%;height:250px;object-fit:cover;object-position:center center;border-radius:50% 50% 50% 50%;}.elementor-31 .elementor-element.elementor-element-8b06725{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 5px) 0px;text-align:center;}.elementor-31 .elementor-element.elementor-element-8b06725 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:20px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-280e2aa .elementor-button{background-color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:13px;font-weight:600;text-transform:capitalize;fill:#FFFFFF;color:#FFFFFF;border-radius:5px 5px 5px 5px;padding:15px 20px 15px 20px;}.elementor-31 .elementor-element.elementor-element-280e2aa{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-31 .elementor-element.elementor-element-280e2aa.elementor-element{--align-self:center;}.elementor-31 .elementor-element.elementor-element-280e2aa .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-31 .elementor-element.elementor-element-280e2aa .elementor-button .elementor-button-content-wrapper{gap:0px;}.elementor-31 .elementor-element.elementor-element-40be1de{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );border-style:none;--border-style:none;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-40be1de.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-98adc2a{--display:flex;--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;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:none;--border-style:none;}.elementor-31 .elementor-element.elementor-element-98adc2a.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-04d37bb{padding:10px 10px 10px 10px;text-align:center;}.elementor-31 .elementor-element.elementor-element-04d37bb img{width:250px;max-width:100%;height:250px;object-fit:cover;object-position:center center;border-radius:50% 50% 50% 50%;}.elementor-31 .elementor-element.elementor-element-9d92800{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 5px) 0px;text-align:center;}.elementor-31 .elementor-element.elementor-element-9d92800 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:20px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-ea3c133 .elementor-button{background-color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:13px;font-weight:600;text-transform:capitalize;fill:#FFFFFF;color:#FFFFFF;border-radius:5px 5px 5px 5px;padding:15px 20px 15px 20px;}.elementor-31 .elementor-element.elementor-element-ea3c133{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-31 .elementor-element.elementor-element-ea3c133.elementor-element{--align-self:center;}.elementor-31 .elementor-element.elementor-element-ea3c133 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-31 .elementor-element.elementor-element-ea3c133 .elementor-button .elementor-button-content-wrapper{gap:0px;}.elementor-31 .elementor-element.elementor-element-4da35a2{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );border-style:none;--border-style:none;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-4da35a2.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-e0ae7fe{--display:flex;--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;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:none;--border-style:none;}.elementor-31 .elementor-element.elementor-element-e0ae7fe.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-425341d{padding:10px 10px 10px 10px;text-align:center;}.elementor-31 .elementor-element.elementor-element-425341d img{width:250px;max-width:100%;height:250px;object-fit:cover;object-position:center center;border-radius:50% 50% 50% 50%;}.elementor-31 .elementor-element.elementor-element-8e88ec5{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 5px) 0px;text-align:center;}.elementor-31 .elementor-element.elementor-element-8e88ec5 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:20px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-5df68be .elementor-button{background-color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:13px;font-weight:600;text-transform:capitalize;fill:#FFFFFF;color:#FFFFFF;border-radius:5px 5px 5px 5px;padding:15px 20px 15px 20px;}.elementor-31 .elementor-element.elementor-element-5df68be{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-31 .elementor-element.elementor-element-5df68be.elementor-element{--align-self:center;}.elementor-31 .elementor-element.elementor-element-5df68be .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-31 .elementor-element.elementor-element-5df68be .elementor-button .elementor-button-content-wrapper{gap:0px;}.elementor-31 .elementor-element.elementor-element-770afb4{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );border-style:none;--border-style:none;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-770afb4.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-7f425c6{--display:flex;--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;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:none;--border-style:none;}.elementor-31 .elementor-element.elementor-element-7f425c6.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-8de6a10{padding:10px 10px 10px 10px;text-align:center;}.elementor-31 .elementor-element.elementor-element-8de6a10 img{width:250px;max-width:100%;height:250px;object-fit:cover;object-position:center center;border-radius:50% 50% 50% 50%;}.elementor-31 .elementor-element.elementor-element-44b07b6{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 5px) 0px;text-align:center;}.elementor-31 .elementor-element.elementor-element-44b07b6 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:20px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-f90878a .elementor-button{background-color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:13px;font-weight:600;text-transform:capitalize;fill:#FFFFFF;color:#FFFFFF;border-radius:5px 5px 5px 5px;padding:15px 20px 15px 20px;}.elementor-31 .elementor-element.elementor-element-f90878a{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-31 .elementor-element.elementor-element-f90878a.elementor-element{--align-self:center;}.elementor-31 .elementor-element.elementor-element-f90878a .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-31 .elementor-element.elementor-element-f90878a .elementor-button .elementor-button-content-wrapper{gap:0px;}.elementor-31 .elementor-element.elementor-element-16ac133{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );border-style:none;--border-style:none;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-16ac133.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-618414b{--display:flex;--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;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:none;--border-style:none;}.elementor-31 .elementor-element.elementor-element-618414b.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-0f865cf{padding:10px 10px 10px 10px;text-align:center;}.elementor-31 .elementor-element.elementor-element-0f865cf img{width:250px;max-width:100%;height:250px;object-fit:cover;object-position:center center;border-radius:50% 50% 50% 50%;}.elementor-31 .elementor-element.elementor-element-7413283{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 5px) 0px;text-align:center;}.elementor-31 .elementor-element.elementor-element-7413283 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:20px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-5d653ce .elementor-button{background-color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:13px;font-weight:600;text-transform:capitalize;fill:#FFFFFF;color:#FFFFFF;border-radius:5px 5px 5px 5px;padding:15px 20px 15px 20px;}.elementor-31 .elementor-element.elementor-element-5d653ce{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-31 .elementor-element.elementor-element-5d653ce.elementor-element{--align-self:center;}.elementor-31 .elementor-element.elementor-element-5d653ce .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-31 .elementor-element.elementor-element-5d653ce .elementor-button .elementor-button-content-wrapper{gap:0px;}.elementor-31 .elementor-element.elementor-element-e1ba479{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );border-style:none;--border-style:none;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-e1ba479.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-b6d92ba{--display:flex;--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;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:none;--border-style:none;}.elementor-31 .elementor-element.elementor-element-b6d92ba.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-42a8ee2{padding:10px 10px 10px 10px;text-align:center;}.elementor-31 .elementor-element.elementor-element-42a8ee2 img{width:250px;max-width:100%;height:250px;object-fit:cover;object-position:center center;border-radius:50% 50% 50% 50%;}.elementor-31 .elementor-element.elementor-element-ff6f641{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 5px) 0px;text-align:center;}.elementor-31 .elementor-element.elementor-element-ff6f641 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:20px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-a199f23 .elementor-button{background-color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:13px;font-weight:600;text-transform:capitalize;fill:#FFFFFF;color:#FFFFFF;border-radius:5px 5px 5px 5px;padding:15px 20px 15px 20px;}.elementor-31 .elementor-element.elementor-element-a199f23{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-31 .elementor-element.elementor-element-a199f23.elementor-element{--align-self:center;}.elementor-31 .elementor-element.elementor-element-a199f23 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-31 .elementor-element.elementor-element-a199f23 .elementor-button .elementor-button-content-wrapper{gap:0px;}.elementor-31 .elementor-element.elementor-element-aceadc5{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );border-style:none;--border-style:none;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-aceadc5.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-0dd14e7{--display:flex;--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;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:none;--border-style:none;}.elementor-31 .elementor-element.elementor-element-0dd14e7.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-cf78a4d{padding:10px 10px 10px 10px;text-align:center;}.elementor-31 .elementor-element.elementor-element-cf78a4d img{width:250px;max-width:100%;height:250px;object-fit:cover;object-position:center center;border-radius:50% 50% 50% 50%;}.elementor-31 .elementor-element.elementor-element-7ef9397{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 5px) 0px;text-align:center;}.elementor-31 .elementor-element.elementor-element-7ef9397 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:20px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-9820685 .elementor-button{background-color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:13px;font-weight:600;text-transform:capitalize;fill:#FFFFFF;color:#FFFFFF;border-radius:5px 5px 5px 5px;padding:15px 20px 15px 20px;}.elementor-31 .elementor-element.elementor-element-9820685{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-31 .elementor-element.elementor-element-9820685.elementor-element{--align-self:center;}.elementor-31 .elementor-element.elementor-element-9820685 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-31 .elementor-element.elementor-element-9820685 .elementor-button .elementor-button-content-wrapper{gap:0px;}.elementor-31 .elementor-element.elementor-element-ec023a3{--display:flex;}.elementor-31 .elementor-element.elementor-element-9e26272 .elementor-button{background-color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:600;text-transform:capitalize;fill:#FFFFFF;color:#FFFFFF;border-radius:5px 5px 5px 5px;padding:15px 20px 15px 20px;}.elementor-31 .elementor-element.elementor-element-9e26272{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-31 .elementor-element.elementor-element-9e26272.elementor-element{--align-self:flex-start;}.elementor-31 .elementor-element.elementor-element-9e26272 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-31 .elementor-element.elementor-element-9e26272 .elementor-button .elementor-button-content-wrapper{gap:0px;}.elementor-31 .elementor-element.elementor-element-1e72566{--display:flex;}.elementor-31 .elementor-element.elementor-element-7e54d44{--e-n-carousel-swiper-slides-to-display:4;--e-n-carousel-swiper-slides-gap:0px;--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-normal-color:var( --e-global-color-6a9086a );--e-n-carousel-swiper-pagination-size:7px;--e-n-carousel-dots-normal-color:var( --e-global-color-primary );--e-n-carousel-swiper-pagination-spacing:20px;}.elementor-31 .elementor-element.elementor-element-7e54d44 :is(.elementor-swiper-button-prev, .elementor-swiper-button-next) {background-color:var( --e-global-color-primary );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-primary );border-radius:50% 50% 50% 50%;padding:4px 4px 4px 4px;}:where( .elementor-31 .elementor-element.elementor-element-7e54d44 .swiper-slide ) > .e-con{--border-radius:50% 50% 50% 50%;--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;}:where( [data-core-v316-plus="true"] .elementor-element.elementor-widget-n-carousel .swiper-slide ) > .e-con{--padding-block-start:0px;--padding-inline-end:0px;--padding-block-end:0px;--padding-inline-start:0px;}.elementor-31 .elementor-element.elementor-element-23ec43f{--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;--gap:50px 50px;--row-gap:50px;--column-gap:50px;--overlay-opacity:0.5;--padding-top:50px;--padding-bottom:50px;--padding-left:10px;--padding-right:10px;}.elementor-31 .elementor-element.elementor-element-23ec43f:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-23ec43f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://navtravel.com/wp-content/uploads/2025/11/home3-about-bg-1.webp");}.elementor-31 .elementor-element.elementor-element-23ec43f::before, .elementor-31 .elementor-element.elementor-element-23ec43f > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-23ec43f > .e-con-inner > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-23ec43f > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-23ec43f > .e-con-inner > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-23ec43f > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-6a9086a );background-image:url("https://navtravel.com/wp-content/uploads/2025/11/about-page-journey-bg-1.webp");--background-overlay:'';}.elementor-31 .elementor-element.elementor-element-24e7cf1{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:50px 50px;--row-gap:50px;--column-gap:50px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-ee07ce3{--display:flex;--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;}.elementor-31 .elementor-element.elementor-element-9babdce{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-31 .elementor-element.elementor-element-9babdce .elementor-divider-separator{width:26%;margin:0 auto;margin-left:0;}.elementor-31 .elementor-element.elementor-element-9babdce .elementor-divider{text-align:left;padding-block-start:4px;padding-block-end:4px;}.elementor-31 .elementor-element.elementor-element-9babdce .elementor-divider__text{color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:22px;font-weight:500;text-transform:capitalize;}.elementor-31 .elementor-element.elementor-element-e88c2d7{text-align:start;}.elementor-31 .elementor-element.elementor-element-e88c2d7 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:40px;font-weight:700;line-height:1.3em;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-86869ad{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;text-align:start;font-family:"DM Sans", Sans-serif;font-size:18px;font-weight:400;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-86869ad.elementor-element{--align-self:center;}.elementor-31 .elementor-element.elementor-element-3397d14 .elementor-button{background-color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:600;text-transform:capitalize;fill:#FFFFFF;color:#FFFFFF;border-radius:5px 5px 5px 5px;padding:15px 20px 15px 20px;}.elementor-31 .elementor-element.elementor-element-3397d14{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-31 .elementor-element.elementor-element-3397d14.elementor-element{--align-self:flex-start;}.elementor-31 .elementor-element.elementor-element-2507e2f{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-31 .elementor-element.elementor-element-acbd145{--display:flex;--overlay-opacity:1;--border-radius:20px 20px 20px 20px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-31 .elementor-element.elementor-element-acbd145:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-acbd145 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-3af4433 );}.elementor-31 .elementor-element.elementor-element-acbd145::before, .elementor-31 .elementor-element.elementor-element-acbd145 > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-acbd145 > .e-con-inner > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-acbd145 > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-acbd145 > .e-con-inner > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-acbd145 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://navtravel.com/wp-content/uploads/2025/11/about-page-journey-bg-1.webp");--background-overlay:'';background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-31 .elementor-element.elementor-element-e3c1b33{--display:grid;--e-con-grid-template-columns:repeat(4, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-0ad7142{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;border-style:solid;--border-style:solid;border-width:0px 1px 0px 0px;--border-top-width:0px;--border-right-width:1px;--border-bottom-width:0px;--border-left-width:0px;border-color:var( --e-global-color-6186a61 );--border-color:var( --e-global-color-6186a61 );}.elementor-31 .elementor-element.elementor-element-feefe73 .elementor-icon-wrapper{text-align:center;}.elementor-31 .elementor-element.elementor-element-feefe73.elementor-view-stacked .elementor-icon{background-color:#D39B01;}.elementor-31 .elementor-element.elementor-element-feefe73.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-feefe73.elementor-view-default .elementor-icon{color:#D39B01;border-color:#D39B01;}.elementor-31 .elementor-element.elementor-element-feefe73.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-feefe73.elementor-view-default .elementor-icon svg{fill:#D39B01;}.elementor-31 .elementor-element.elementor-element-feefe73 .elementor-icon{font-size:35px;}.elementor-31 .elementor-element.elementor-element-feefe73 .elementor-icon svg{height:35px;}.elementor-widget-counter .elementor-counter-number-wrapper{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-counter .elementor-counter-title{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-31 .elementor-element.elementor-element-557f635 .elementor-counter-title{justify-content:start;color:var( --e-global-color-06f55ec );font-family:"DM Sans", Sans-serif;font-size:18px;font-weight:400;line-height:21px;}.elementor-31 .elementor-element.elementor-element-557f635 .elementor-counter{gap:0px;}.elementor-31 .elementor-element.elementor-element-557f635 .elementor-counter-number-wrapper{text-align:{{VALUE}};--counter-prefix-grow:0;--counter-suffix-grow:1;--counter-number-grow:0;gap:0px;color:var( --e-global-color-06f55ec );font-family:"DM Sans", Sans-serif;font-size:40px;font-weight:600;}.elementor-31 .elementor-element.elementor-element-cb75caf{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;border-style:solid;--border-style:solid;border-width:0px 1px 0px 0px;--border-top-width:0px;--border-right-width:1px;--border-bottom-width:0px;--border-left-width:0px;border-color:var( --e-global-color-6186a61 );--border-color:var( --e-global-color-6186a61 );}.elementor-31 .elementor-element.elementor-element-efd1461 .elementor-icon-wrapper{text-align:center;}.elementor-31 .elementor-element.elementor-element-efd1461.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-31 .elementor-element.elementor-element-efd1461.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-efd1461.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-31 .elementor-element.elementor-element-efd1461.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-efd1461.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-31 .elementor-element.elementor-element-efd1461 .elementor-icon{font-size:35px;}.elementor-31 .elementor-element.elementor-element-efd1461 .elementor-icon svg{height:35px;}.elementor-31 .elementor-element.elementor-element-21a0fc0 .elementor-counter-title{justify-content:start;color:var( --e-global-color-06f55ec );font-family:"DM Sans", Sans-serif;font-size:18px;font-weight:400;text-transform:capitalize;line-height:21px;}.elementor-31 .elementor-element.elementor-element-21a0fc0 .elementor-counter{gap:0px;}.elementor-31 .elementor-element.elementor-element-21a0fc0 .elementor-counter-number-wrapper{text-align:{{VALUE}};--counter-prefix-grow:0;--counter-suffix-grow:1;--counter-number-grow:0;gap:0px;color:var( --e-global-color-06f55ec );font-family:"DM Sans", Sans-serif;font-size:40px;font-weight:600;}.elementor-31 .elementor-element.elementor-element-7a777ef{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;border-style:solid;--border-style:solid;border-width:0px 1px 0px 0px;--border-top-width:0px;--border-right-width:1px;--border-bottom-width:0px;--border-left-width:0px;border-color:var( --e-global-color-6186a61 );--border-color:var( --e-global-color-6186a61 );}.elementor-31 .elementor-element.elementor-element-c6e9913 .elementor-icon-wrapper{text-align:center;}.elementor-31 .elementor-element.elementor-element-c6e9913.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-31 .elementor-element.elementor-element-c6e9913.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-c6e9913.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-31 .elementor-element.elementor-element-c6e9913.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-c6e9913.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-31 .elementor-element.elementor-element-c6e9913 .elementor-icon{font-size:35px;}.elementor-31 .elementor-element.elementor-element-c6e9913 .elementor-icon svg{height:35px;}.elementor-31 .elementor-element.elementor-element-180eaf4 .elementor-counter-title{justify-content:start;color:var( --e-global-color-06f55ec );font-family:"DM Sans", Sans-serif;font-size:18px;font-weight:400;line-height:21px;}.elementor-31 .elementor-element.elementor-element-180eaf4 .elementor-counter{gap:0px;}.elementor-31 .elementor-element.elementor-element-180eaf4 .elementor-counter-number-wrapper{text-align:{{VALUE}};--counter-prefix-grow:0;--counter-suffix-grow:1;--counter-number-grow:0;gap:0px;color:var( --e-global-color-06f55ec );font-family:"DM Sans", Sans-serif;font-size:40px;font-weight:600;}.elementor-31 .elementor-element.elementor-element-f8ebfc3{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;border-style:solid;--border-style:solid;border-width:0px 1px 0px 0px;--border-top-width:0px;--border-right-width:1px;--border-bottom-width:0px;--border-left-width:0px;border-color:var( --e-global-color-6186a61 );--border-color:var( --e-global-color-6186a61 );}.elementor-31 .elementor-element.elementor-element-6286bac .elementor-icon-wrapper{text-align:center;}.elementor-31 .elementor-element.elementor-element-6286bac.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-df01d77 );}.elementor-31 .elementor-element.elementor-element-6286bac.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-6286bac.elementor-view-default .elementor-icon{color:var( --e-global-color-df01d77 );border-color:var( --e-global-color-df01d77 );}.elementor-31 .elementor-element.elementor-element-6286bac.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-6286bac.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-df01d77 );}.elementor-31 .elementor-element.elementor-element-6286bac .elementor-icon{font-size:35px;}.elementor-31 .elementor-element.elementor-element-6286bac .elementor-icon svg{height:35px;}.elementor-31 .elementor-element.elementor-element-43f54fb .elementor-counter-title{justify-content:start;color:var( --e-global-color-06f55ec );font-family:"DM Sans", Sans-serif;font-size:18px;font-weight:400;line-height:21px;}.elementor-31 .elementor-element.elementor-element-43f54fb .elementor-counter{gap:0px;}.elementor-31 .elementor-element.elementor-element-43f54fb .elementor-counter-number-wrapper{text-align:{{VALUE}};--counter-prefix-grow:0;--counter-suffix-grow:1;--counter-number-grow:0;gap:0px;color:var( --e-global-color-06f55ec );font-family:"DM Sans", Sans-serif;font-size:40px;font-weight:600;}.elementor-31 .elementor-element.elementor-element-bd9c3be{--display:flex;--overlay-opacity:0.5;--padding-top:50px;--padding-bottom:50px;--padding-left:10px;--padding-right:10px;}.elementor-31 .elementor-element.elementor-element-bd9c3be:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-bd9c3be > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, var( --e-global-color-6a9086a ) 20%, var( --e-global-color-3af4433 ) 100%);}.elementor-31 .elementor-element.elementor-element-bd9c3be::before, .elementor-31 .elementor-element.elementor-element-bd9c3be > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-bd9c3be > .e-con-inner > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-bd9c3be > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-bd9c3be > .e-con-inner > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-bd9c3be > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-31 .elementor-element.elementor-element-1aefd1c{--divider-border-style:solid;--divider-color:var( --e-global-color-text );--divider-border-width:1px;}.elementor-31 .elementor-element.elementor-element-1aefd1c .elementor-divider-separator{width:30%;margin:0 auto;margin-center:0;}.elementor-31 .elementor-element.elementor-element-1aefd1c .elementor-divider{text-align:center;padding-block-start:4px;padding-block-end:4px;}.elementor-31 .elementor-element.elementor-element-1aefd1c .elementor-divider__text{color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:22px;font-weight:500;text-transform:capitalize;}.elementor-31 .elementor-element.elementor-element-928c226{text-align:center;}.elementor-31 .elementor-element.elementor-element-928c226 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:40px;font-weight:700;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-69b6cfc{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-31 .elementor-element.elementor-element-3b81618{--display:flex;--overlay-opacity:0.4;--border-radius:20px 20px 20px 20px;--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-31 .elementor-element.elementor-element-3b81618:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-3b81618 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://navtravel.com/wp-content/uploads/2025/11/bt01.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-31 .elementor-element.elementor-element-3b81618::before, .elementor-31 .elementor-element.elementor-element-3b81618 > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-3b81618 > .e-con-inner > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-3b81618 > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-3b81618 > .e-con-inner > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-3b81618 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-06f55ec );--background-overlay:'';}.elementor-31 .elementor-element.elementor-element-3b81618:hover::before, .elementor-31 .elementor-element.elementor-element-3b81618:hover > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-3b81618:hover > .e-con-inner > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-3b81618 > .elementor-background-slideshow:hover::before, .elementor-31 .elementor-element.elementor-element-3b81618 > .e-con-inner > .elementor-background-slideshow:hover::before{background-color:var( --e-global-color-06f55ec );--background-overlay:'';}.elementor-31 .elementor-element.elementor-element-3b81618:hover{--overlay-opacity:0.75;}.elementor-31 .elementor-element.elementor-element-f101f74 .elementor-icon-box-wrapper{text-align:start;gap:100px;}.elementor-31 .elementor-element.elementor-element-f101f74.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-6a9086a );}.elementor-31 .elementor-element.elementor-element-f101f74.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-f101f74.elementor-view-default .elementor-icon{fill:var( --e-global-color-6a9086a );color:var( --e-global-color-6a9086a );border-color:var( --e-global-color-6a9086a );}.elementor-31 .elementor-element.elementor-element-f101f74 .elementor-icon-box-description{font-family:"DM Sans", Sans-serif;font-size:23px;font-weight:600;text-transform:capitalize;color:var( --e-global-color-6a9086a );}.elementor-31 .elementor-element.elementor-element-d8e9e22{--display:flex;--overlay-opacity:0.4;--border-radius:20px 20px 20px 20px;--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-31 .elementor-element.elementor-element-d8e9e22:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-d8e9e22 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://navtravel.com/wp-content/uploads/2025/11/bt02.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-31 .elementor-element.elementor-element-d8e9e22::before, .elementor-31 .elementor-element.elementor-element-d8e9e22 > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-d8e9e22 > .e-con-inner > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-d8e9e22 > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-d8e9e22 > .e-con-inner > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-d8e9e22 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-06f55ec );--background-overlay:'';}.elementor-31 .elementor-element.elementor-element-d8e9e22:hover::before, .elementor-31 .elementor-element.elementor-element-d8e9e22:hover > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-d8e9e22:hover > .e-con-inner > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-d8e9e22 > .elementor-background-slideshow:hover::before, .elementor-31 .elementor-element.elementor-element-d8e9e22 > .e-con-inner > .elementor-background-slideshow:hover::before{background-color:var( --e-global-color-06f55ec );--background-overlay:'';}.elementor-31 .elementor-element.elementor-element-d8e9e22:hover{--overlay-opacity:0.75;}.elementor-31 .elementor-element.elementor-element-0c5b344 .elementor-icon-box-wrapper{text-align:start;gap:100px;}.elementor-31 .elementor-element.elementor-element-0c5b344.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-6a9086a );}.elementor-31 .elementor-element.elementor-element-0c5b344.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-0c5b344.elementor-view-default .elementor-icon{fill:var( --e-global-color-6a9086a );color:var( --e-global-color-6a9086a );border-color:var( --e-global-color-6a9086a );}.elementor-31 .elementor-element.elementor-element-0c5b344 .elementor-icon-box-description{font-family:"DM Sans", Sans-serif;font-size:23px;font-weight:600;text-transform:capitalize;color:var( --e-global-color-6a9086a );}.elementor-31 .elementor-element.elementor-element-0f6033b{--display:flex;--overlay-opacity:0.4;--border-radius:20px 20px 20px 20px;--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-31 .elementor-element.elementor-element-0f6033b:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-0f6033b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://navtravel.com/wp-content/uploads/2025/11/bt03.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-31 .elementor-element.elementor-element-0f6033b::before, .elementor-31 .elementor-element.elementor-element-0f6033b > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-0f6033b > .e-con-inner > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-0f6033b > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-0f6033b > .e-con-inner > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-0f6033b > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-06f55ec );--background-overlay:'';}.elementor-31 .elementor-element.elementor-element-0f6033b:hover::before, .elementor-31 .elementor-element.elementor-element-0f6033b:hover > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-0f6033b:hover > .e-con-inner > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-0f6033b > .elementor-background-slideshow:hover::before, .elementor-31 .elementor-element.elementor-element-0f6033b > .e-con-inner > .elementor-background-slideshow:hover::before{background-color:var( --e-global-color-06f55ec );--background-overlay:'';}.elementor-31 .elementor-element.elementor-element-0f6033b:hover{--overlay-opacity:0.75;}.elementor-31 .elementor-element.elementor-element-6ed9a2d .elementor-icon-box-wrapper{text-align:start;gap:100px;}.elementor-31 .elementor-element.elementor-element-6ed9a2d.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-6a9086a );}.elementor-31 .elementor-element.elementor-element-6ed9a2d.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-6ed9a2d.elementor-view-default .elementor-icon{fill:var( --e-global-color-6a9086a );color:var( --e-global-color-6a9086a );border-color:var( --e-global-color-6a9086a );}.elementor-31 .elementor-element.elementor-element-6ed9a2d .elementor-icon-box-description{font-family:"DM Sans", Sans-serif;font-size:23px;font-weight:600;text-transform:capitalize;color:var( --e-global-color-6a9086a );}.elementor-31 .elementor-element.elementor-element-3a1f290{text-align:center;}.elementor-31 .elementor-element.elementor-element-84d31bd .elementor-button{background-color:var( --e-global-color-accent );font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:600;text-transform:capitalize;fill:#FFFFFF;color:#FFFFFF;border-radius:6px 6px 6px 6px;padding:20px 40px 20px 40px;}.elementor-31 .elementor-element.elementor-element-84d31bd.elementor-element{--align-self:center;}.elementor-31 .elementor-element.elementor-element-524059d{--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;--gap:50px 50px;--row-gap:50px;--column-gap:50px;--overlay-opacity:0.09;--margin-top:0px;--margin-bottom:-150px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:250px;--padding-left:10px;--padding-right:10px;}.elementor-31 .elementor-element.elementor-element-524059d:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-524059d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-6a9086a );}.elementor-31 .elementor-element.elementor-element-524059d::before, .elementor-31 .elementor-element.elementor-element-524059d > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-524059d > .e-con-inner > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-524059d > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-524059d > .e-con-inner > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-524059d > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://navtravel.com/wp-content/uploads/2025/11/globe-map.jpg");--background-overlay:'';background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-31 .elementor-element.elementor-element-67ddbef{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-a9c1890{--divider-border-style:solid;--divider-color:var( --e-global-color-text );--divider-border-width:1px;}.elementor-31 .elementor-element.elementor-element-a9c1890 .elementor-divider-separator{width:30%;margin:0 auto;margin-center:0;}.elementor-31 .elementor-element.elementor-element-a9c1890 .elementor-divider{text-align:center;padding-block-start:4px;padding-block-end:4px;}.elementor-31 .elementor-element.elementor-element-a9c1890 .elementor-divider__text{color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:22px;font-weight:500;text-transform:capitalize;}.elementor-31 .elementor-element.elementor-element-a869134{text-align:center;}.elementor-31 .elementor-element.elementor-element-a869134 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:40px;font-weight:700;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-bf2fcc8{padding:20px 0px 20px 0px;}.elementor-31 .elementor-element.elementor-element-28a1410{--display:flex;--justify-content:center;--gap:5px 5px;--row-gap:5px;--column-gap:5px;}.elementor-31 .elementor-element.elementor-element-c458a71{--divider-border-style:solid;--divider-color:var( --e-global-color-text );--divider-border-width:1px;}.elementor-31 .elementor-element.elementor-element-c458a71 .elementor-divider-separator{width:30%;margin:0 auto;margin-center:0;}.elementor-31 .elementor-element.elementor-element-c458a71 .elementor-divider{text-align:center;padding-block-start:4px;padding-block-end:4px;}.elementor-31 .elementor-element.elementor-element-c458a71 .elementor-divider__text{color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:22px;font-weight:500;text-transform:capitalize;}.elementor-31 .elementor-element.elementor-element-35ef75d{text-align:center;}.elementor-31 .elementor-element.elementor-element-35ef75d .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:40px;font-weight:700;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-ca2f231{--e-image-carousel-slides-to-show:4;}.elementor-31 .elementor-element.elementor-element-ca2f231 .swiper-wrapper{display:flex;align-items:center;}.elementor-31 .elementor-element.elementor-element-167ae9f{--display:flex;--justify-content:center;--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-528365a{--divider-border-style:solid;--divider-color:var( --e-global-color-text );--divider-border-width:1px;}.elementor-31 .elementor-element.elementor-element-528365a .elementor-divider-separator{width:30%;margin:0 auto;margin-center:0;}.elementor-31 .elementor-element.elementor-element-528365a .elementor-divider{text-align:center;padding-block-start:4px;padding-block-end:4px;}.elementor-31 .elementor-element.elementor-element-528365a .elementor-divider__text{color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:22px;font-weight:500;text-transform:capitalize;}.elementor-31 .elementor-element.elementor-element-e7ced34{text-align:center;}.elementor-31 .elementor-element.elementor-element-e7ced34 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:40px;font-weight:700;color:var( --e-global-color-06f55ec );}.elementor-31 .elementor-element.elementor-element-510ca7c{--swiper-slides-to-display:3;--swiper-slides-gap:20px;padding:20px 0px 0px 0px;--arrow-prev-left-align:0%;--arrow-prev-translate-x:0px;--arrow-prev-left-position:0px;--arrow-prev-top-align:50%;--arrow-prev-translate-y:-50%;--arrow-prev-top-position:0px;--arrow-next-right-align:0%;--arrow-next-translate-x:0%;--arrow-next-right-position:0px;--arrow-next-top-align:50%;--arrow-next-translate-y:-50%;--arrow-next-top-position:0px;--arrow-size:20px;--arrow-normal-color:var( --e-global-color-6a9086a );--arrow-hover-color:var( --e-global-color-secondary );--dots-normal-color:var( --e-global-color-primary );--swiper-pagination-spacing:7px;}.elementor-31 .elementor-element.elementor-element-510ca7c :is(.elementor-swiper-button-prev, .elementor-swiper-button-next) {background-color:var( --e-global-color-primary );border-style:none;border-radius:50% 50% 50% 50%;padding:5px 5px 5px 5px;}.elementor-31 .elementor-element.elementor-element-510ca7c .swiper-slide > .elementor-element{height:100%;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-31 .elementor-element.elementor-element-63f5085{--width:50%;}.elementor-31 .elementor-element.elementor-element-7c18347{--width:54%;}.elementor-31 .elementor-element.elementor-element-93a0d56{--width:50%;}.elementor-31 .elementor-element.elementor-element-f23e860{--width:99%;}}@media(max-width:1024px) and (min-width:768px){.elementor-31 .elementor-element.elementor-element-8b3fa09{--width:60%;}.elementor-31 .elementor-element.elementor-element-464e691{--width:60%;}.elementor-31 .elementor-element.elementor-element-dd71f06{--width:60%;}.elementor-31 .elementor-element.elementor-element-ee07ce3{--width:100%;}}@media(min-width:1025px){.elementor-31 .elementor-element.elementor-element-3b81618:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-3b81618 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:scroll;}.elementor-31 .elementor-element.elementor-element-d8e9e22:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-d8e9e22 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:scroll;}.elementor-31 .elementor-element.elementor-element-0f6033b:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-0f6033b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:scroll;}}@media(max-width:1024px){.elementor-31 .elementor-element.elementor-element-40a115c{--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:100px;--padding-bottom:80px;--padding-left:25px;--padding-right:25px;}.elementor-31 .elementor-element.elementor-element-63f5085:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-63f5085 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-31 .elementor-element.elementor-element-7c18347{--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-31 .elementor-element.elementor-element-fdd3841 .elementor-heading-title{font-size:22px;}.elementor-31 .elementor-element.elementor-element-acbf700 .elementor-button{padding:10px 10px 10px 10px;}.elementor-31 .elementor-element.elementor-element-93a0d56:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-93a0d56 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-repeat:no-repeat;background-size:cover;}.elementor-31 .elementor-element.elementor-element-f23e860{--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-31 .elementor-element.elementor-element-99ef7f8 .elementor-heading-title{font-size:22px;}.elementor-31 .elementor-element.elementor-element-3231dca .elementor-button{padding:10px 10px 10px 10px;}.elementor-31 .elementor-element.elementor-element-660951a .elementor-divider-separator{width:48%;}.elementor-31 .elementor-element.elementor-element-367651b{--grid-auto-flow:row;}.elementor-31 .elementor-element.elementor-element-16167a2 .elementor-heading-title{font-size:22px;}.elementor-31 .elementor-element.elementor-element-091f720{--justify-content:center;--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-31 .elementor-element.elementor-element-091f720.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-b04149c .elementor-button{font-size:14px;padding:15px 15px 15px 15px;}.elementor-31 .elementor-element.elementor-element-2e03485 .elementor-heading-title{font-size:22px;}.elementor-31 .elementor-element.elementor-element-c9ad25b{--justify-content:center;--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-31 .elementor-element.elementor-element-c9ad25b.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-acac4e4 .elementor-button{font-size:14px;padding:15px 15px 15px 15px;}.elementor-31 .elementor-element.elementor-element-a9da444 .elementor-heading-title{font-size:22px;}.elementor-31 .elementor-element.elementor-element-92a422e{--justify-content:center;--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-31 .elementor-element.elementor-element-92a422e.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-5c36082 .elementor-button{font-size:14px;padding:15px 15px 15px 15px;}.elementor-31 .elementor-element.elementor-element-e68363b .elementor-divider-separator{width:48%;}.elementor-31 .elementor-element.elementor-element-67e4a21{--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-280e2aa .elementor-button{font-size:14px;padding:15px 15px 15px 15px;}.elementor-31 .elementor-element.elementor-element-ea3c133 .elementor-button{font-size:14px;padding:15px 15px 15px 15px;}.elementor-31 .elementor-element.elementor-element-5df68be .elementor-button{font-size:14px;padding:15px 15px 15px 15px;}.elementor-31 .elementor-element.elementor-element-f90878a .elementor-button{font-size:14px;padding:15px 15px 15px 15px;}.elementor-31 .elementor-element.elementor-element-5d653ce .elementor-button{font-size:14px;padding:15px 15px 15px 15px;}.elementor-31 .elementor-element.elementor-element-a199f23 .elementor-button{font-size:14px;padding:15px 15px 15px 15px;}.elementor-31 .elementor-element.elementor-element-9820685 .elementor-button{font-size:14px;padding:15px 15px 15px 15px;}.elementor-31 .elementor-element.elementor-element-9e26272 .elementor-button{font-size:14px;padding:15px 15px 15px 15px;}.elementor-31 .elementor-element.elementor-element-7e54d44{--e-n-carousel-swiper-slides-to-display:2;}.elementor-31 .elementor-element.elementor-element-23ec43f{--padding-top:100px;--padding-bottom:100px;--padding-left:10px;--padding-right:10px;}.elementor-31 .elementor-element.elementor-element-24e7cf1{--flex-direction:column-reverse;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-31 .elementor-element.elementor-element-ee07ce3{--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-31 .elementor-element.elementor-element-e3c1b33{--grid-auto-flow:row;}.elementor-31 .elementor-element.elementor-element-0ad7142{--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;border-width:0px 0px 0px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;}.elementor-31 .elementor-element.elementor-element-557f635 .elementor-counter-title{justify-content:start;font-size:18px;}.elementor-31 .elementor-element.elementor-element-cb75caf{--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;border-width:0px 0px 0px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;}.elementor-31 .elementor-element.elementor-element-21a0fc0 .elementor-counter-title{justify-content:start;font-size:18px;}.elementor-31 .elementor-element.elementor-element-7a777ef{--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;border-width:0px 0px 0px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;}.elementor-31 .elementor-element.elementor-element-180eaf4 .elementor-counter-title{justify-content:start;font-size:18px;}.elementor-31 .elementor-element.elementor-element-f8ebfc3{--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;border-width:0px 0px 0px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;}.elementor-31 .elementor-element.elementor-element-43f54fb .elementor-counter-title{justify-content:start;font-size:18px;}.elementor-31 .elementor-element.elementor-element-bd9c3be{--padding-top:100px;--padding-bottom:100px;--padding-left:10px;--padding-right:10px;}.elementor-31 .elementor-element.elementor-element-1aefd1c .elementor-divider-separator{width:48%;}.elementor-31 .elementor-element.elementor-element-69b6cfc{--e-con-grid-template-columns:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-31 .elementor-element.elementor-element-a9c1890 .elementor-divider-separator{width:48%;}.elementor-31 .elementor-element.elementor-element-c458a71 .elementor-divider-separator{width:48%;}.elementor-31 .elementor-element.elementor-element-ca2f231{--e-image-carousel-slides-to-show:3;}.elementor-31 .elementor-element.elementor-element-528365a .elementor-divider-separator{width:48%;}.elementor-31 .elementor-element.elementor-element-510ca7c{--swiper-slides-to-display:2;}}@media(max-width:767px){.elementor-31 .elementor-element.elementor-element-fc84998{--padding-top:80px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-58ad1f4{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-31 .elementor-element.elementor-element-40a115c{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-31 .elementor-element.elementor-element-93a0d56{--min-height:287px;}.elementor-31 .elementor-element.elementor-element-1a02ddd{--padding-top:150px;--padding-bottom:100px;--padding-left:10px;--padding-right:10px;}.elementor-31 .elementor-element.elementor-element-660951a .elementor-divider-separator{width:96%;}.elementor-31 .elementor-element.elementor-element-de46e64{top:65px;}.elementor-31 .elementor-element.elementor-element-f43c1fe{--container-widget-width:1000px;--container-widget-flex-grow:0;width:var( --container-widget-width, 1000px );max-width:1000px;}.elementor-31 .elementor-element.elementor-element-367651b{--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-31 .elementor-element.elementor-element-d99558b{--justify-content:center;}.elementor-31 .elementor-element.elementor-element-16167a2{text-align:center;}.elementor-31 .elementor-element.elementor-element-8efd34f .elementor-icon-box-wrapper{text-align:center;gap:4px;}.elementor-31 .elementor-element.elementor-element-8efd34f .elementor-icon{font-size:24px;}.elementor-31 .elementor-element.elementor-element-8b3fa09{--width:50%;--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;--justify-content:center;}.elementor-31 .elementor-element.elementor-element-8b3fa09.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-8a28423{--justify-content:center;}.elementor-31 .elementor-element.elementor-element-2e03485{text-align:center;}.elementor-31 .elementor-element.elementor-element-126c1ef .elementor-icon-box-wrapper{text-align:center;gap:4px;}.elementor-31 .elementor-element.elementor-element-126c1ef .elementor-icon{font-size:24px;}.elementor-31 .elementor-element.elementor-element-c9ad25b{--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-31 .elementor-element.elementor-element-464e691{--width:50%;--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;--justify-content:center;}.elementor-31 .elementor-element.elementor-element-464e691.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-6bf2c4f{--justify-content:center;}.elementor-31 .elementor-element.elementor-element-a9da444{text-align:center;}.elementor-31 .elementor-element.elementor-element-9b64e3a .elementor-icon-box-wrapper{text-align:center;gap:4px;}.elementor-31 .elementor-element.elementor-element-9b64e3a .elementor-icon{font-size:24px;}.elementor-31 .elementor-element.elementor-element-dd71f06{--width:50%;--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;--justify-content:center;}.elementor-31 .elementor-element.elementor-element-dd71f06.e-con{--align-self:center;}.elementor-31 .elementor-element.elementor-element-e68363b .elementor-divider-separator{width:96%;}.elementor-31 .elementor-element.elementor-element-5c4fa65{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-31 .elementor-element.elementor-element-67e4a21{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-31 .elementor-element.elementor-element-053693e.elementor-element{--align-self:center;}.elementor-31 .elementor-element.elementor-element-053693e img{object-fit:cover;object-position:center center;}.elementor-31 .elementor-element.elementor-element-7e54d44{--e-n-carousel-swiper-slides-to-display:1;}.elementor-31 .elementor-element.elementor-element-7e54d44.elementor-element{--align-self:center;}.elementor-31 .elementor-element.elementor-element-9babdce .elementor-divider-separator{width:35%;margin:0 auto;margin-center:0;}.elementor-31 .elementor-element.elementor-element-9babdce .elementor-divider{text-align:center;}.elementor-31 .elementor-element.elementor-element-e88c2d7{text-align:center;}.elementor-31 .elementor-element.elementor-element-86869ad{text-align:center;}.elementor-31 .elementor-element.elementor-element-3397d14.elementor-element{--align-self:center;}.elementor-31 .elementor-element.elementor-element-e3c1b33{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-31 .elementor-element.elementor-element-0ad7142{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );border-width:0px 0px 1px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;}.elementor-31 .elementor-element.elementor-element-557f635 .elementor-counter-title{justify-content:center;}.elementor-31 .elementor-element.elementor-element-557f635 .elementor-counter-number-wrapper{text-align:{{VALUE}};--counter-prefix-grow:1;--counter-suffix-grow:1;--counter-number-grow:0;}.elementor-31 .elementor-element.elementor-element-cb75caf{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );border-width:0px 0px 1px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;}.elementor-31 .elementor-element.elementor-element-21a0fc0 .elementor-counter-title{justify-content:center;}.elementor-31 .elementor-element.elementor-element-21a0fc0 .elementor-counter-number-wrapper{text-align:{{VALUE}};--counter-prefix-grow:1;--counter-suffix-grow:1;--counter-number-grow:0;}.elementor-31 .elementor-element.elementor-element-7a777ef{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );border-width:0px 0px 1px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;}.elementor-31 .elementor-element.elementor-element-180eaf4 .elementor-counter-title{justify-content:center;}.elementor-31 .elementor-element.elementor-element-180eaf4 .elementor-counter-number-wrapper{text-align:{{VALUE}};--counter-prefix-grow:1;--counter-suffix-grow:1;--counter-number-grow:0;}.elementor-31 .elementor-element.elementor-element-f8ebfc3{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-31 .elementor-element.elementor-element-6286bac.elementor-element{--align-self:stretch;}.elementor-31 .elementor-element.elementor-element-6286bac .elementor-icon-wrapper{text-align:center;}.elementor-31 .elementor-element.elementor-element-43f54fb .elementor-counter-title{justify-content:center;}.elementor-31 .elementor-element.elementor-element-43f54fb .elementor-counter-number-wrapper{text-align:{{VALUE}};--counter-prefix-grow:1;--counter-suffix-grow:1;--counter-number-grow:0;}.elementor-31 .elementor-element.elementor-element-1aefd1c .elementor-divider-separator{width:96%;}.elementor-31 .elementor-element.elementor-element-69b6cfc{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-31 .elementor-element.elementor-element-a9c1890 .elementor-divider-separator{width:96%;}.elementor-31 .elementor-element.elementor-element-c458a71 .elementor-divider-separator{width:96%;}.elementor-31 .elementor-element.elementor-element-ca2f231{--e-image-carousel-slides-to-show:2;}.elementor-31 .elementor-element.elementor-element-528365a .elementor-divider-separator{width:96%;}.elementor-31 .elementor-element.elementor-element-510ca7c{--swiper-slides-to-display:1;}}/* Start custom CSS for button, class: .elementor-element-8221873 */.elementor-31 .elementor-element.elementor-element-8221873 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-8221873 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-8221873 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-8221873 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-8221873 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-acbf700 */.elementor-31 .elementor-element.elementor-element-acbf700 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-acbf700 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-acbf700 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-acbf700 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-acbf700 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-3231dca */.elementor-31 .elementor-element.elementor-element-3231dca a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-3231dca a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-3231dca a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-3231dca a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-3231dca a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for icon, class: .elementor-element-de46e64 */.elementor-31 .elementor-element.elementor-element-de46e64 {
  display: inline-block;
  animation: floatUpDown 4s ease-in-out infinite;
}

@keyframes floatUpDown {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-15px);
  }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-b04149c */.elementor-31 .elementor-element.elementor-element-b04149c a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-b04149c a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-b04149c a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-b04149c a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-b04149c a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d99558b */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-acac4e4 */.elementor-31 .elementor-element.elementor-element-acac4e4 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-acac4e4 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-acac4e4 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-acac4e4 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-acac4e4 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8a28423 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5c36082 */.elementor-31 .elementor-element.elementor-element-5c36082 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-5c36082 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-5c36082 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-5c36082 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-5c36082 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6bf2c4f */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-280e2aa */.elementor-31 .elementor-element.elementor-element-280e2aa a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-280e2aa a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-280e2aa a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-280e2aa a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-280e2aa a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-916a474 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-ea3c133 */.elementor-31 .elementor-element.elementor-element-ea3c133 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-ea3c133 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-ea3c133 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-ea3c133 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-ea3c133 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-98adc2a */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5df68be */.elementor-31 .elementor-element.elementor-element-5df68be a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-5df68be a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-5df68be a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-5df68be a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-5df68be a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e0ae7fe */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-f90878a */.elementor-31 .elementor-element.elementor-element-f90878a a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-f90878a a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-f90878a a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-f90878a a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-f90878a a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7f425c6 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5d653ce */.elementor-31 .elementor-element.elementor-element-5d653ce a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-5d653ce a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-5d653ce a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-5d653ce a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-5d653ce a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-618414b */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-a199f23 */.elementor-31 .elementor-element.elementor-element-a199f23 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-a199f23 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-a199f23 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-a199f23 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-a199f23 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b6d92ba */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-9820685 */.elementor-31 .elementor-element.elementor-element-9820685 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-9820685 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-9820685 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-9820685 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-9820685 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0dd14e7 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-9e26272 */.elementor-31 .elementor-element.elementor-element-9e26272 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-9e26272 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-9e26272 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-9e26272 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-9e26272 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-280e2aa */.elementor-31 .elementor-element.elementor-element-280e2aa a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-280e2aa a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-280e2aa a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-280e2aa a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-280e2aa a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-916a474 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-ea3c133 */.elementor-31 .elementor-element.elementor-element-ea3c133 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-ea3c133 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-ea3c133 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-ea3c133 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-ea3c133 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-98adc2a */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5df68be */.elementor-31 .elementor-element.elementor-element-5df68be a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-5df68be a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-5df68be a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-5df68be a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-5df68be a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e0ae7fe */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-f90878a */.elementor-31 .elementor-element.elementor-element-f90878a a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-f90878a a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-f90878a a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-f90878a a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-f90878a a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7f425c6 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5d653ce */.elementor-31 .elementor-element.elementor-element-5d653ce a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-5d653ce a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-5d653ce a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-5d653ce a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-5d653ce a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-618414b */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-a199f23 */.elementor-31 .elementor-element.elementor-element-a199f23 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-a199f23 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-a199f23 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-a199f23 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-a199f23 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b6d92ba */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-9820685 */.elementor-31 .elementor-element.elementor-element-9820685 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-9820685 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-9820685 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-9820685 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-9820685 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0dd14e7 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-9e26272 */.elementor-31 .elementor-element.elementor-element-9e26272 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-9e26272 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-9e26272 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-9e26272 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-9e26272 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-280e2aa */.elementor-31 .elementor-element.elementor-element-280e2aa a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-280e2aa a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-280e2aa a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-280e2aa a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-280e2aa a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-916a474 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-ea3c133 */.elementor-31 .elementor-element.elementor-element-ea3c133 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-ea3c133 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-ea3c133 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-ea3c133 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-ea3c133 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-98adc2a */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5df68be */.elementor-31 .elementor-element.elementor-element-5df68be a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-5df68be a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-5df68be a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-5df68be a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-5df68be a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e0ae7fe */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-f90878a */.elementor-31 .elementor-element.elementor-element-f90878a a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-f90878a a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-f90878a a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-f90878a a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-f90878a a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7f425c6 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5d653ce */.elementor-31 .elementor-element.elementor-element-5d653ce a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-5d653ce a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-5d653ce a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-5d653ce a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-5d653ce a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-618414b */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-a199f23 */.elementor-31 .elementor-element.elementor-element-a199f23 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-a199f23 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-a199f23 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-a199f23 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-a199f23 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b6d92ba */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-9820685 */.elementor-31 .elementor-element.elementor-element-9820685 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-9820685 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-9820685 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-9820685 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-9820685 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0dd14e7 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-9e26272 */.elementor-31 .elementor-element.elementor-element-9e26272 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-9e26272 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-9e26272 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-9e26272 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-9e26272 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-280e2aa */.elementor-31 .elementor-element.elementor-element-280e2aa a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-280e2aa a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-280e2aa a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-280e2aa a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-280e2aa a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-916a474 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-ea3c133 */.elementor-31 .elementor-element.elementor-element-ea3c133 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-ea3c133 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-ea3c133 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-ea3c133 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-ea3c133 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-98adc2a */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5df68be */.elementor-31 .elementor-element.elementor-element-5df68be a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-5df68be a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-5df68be a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-5df68be a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-5df68be a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e0ae7fe */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-f90878a */.elementor-31 .elementor-element.elementor-element-f90878a a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-f90878a a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-f90878a a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-f90878a a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-f90878a a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7f425c6 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5d653ce */.elementor-31 .elementor-element.elementor-element-5d653ce a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-5d653ce a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-5d653ce a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-5d653ce a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-5d653ce a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-618414b */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-a199f23 */.elementor-31 .elementor-element.elementor-element-a199f23 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-a199f23 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-a199f23 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-a199f23 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-a199f23 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b6d92ba */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-9820685 */.elementor-31 .elementor-element.elementor-element-9820685 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-9820685 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-9820685 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-9820685 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-9820685 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0dd14e7 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-9e26272 */.elementor-31 .elementor-element.elementor-element-9e26272 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-9e26272 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-9e26272 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-9e26272 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-9e26272 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-280e2aa */.elementor-31 .elementor-element.elementor-element-280e2aa a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-280e2aa a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-280e2aa a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-280e2aa a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-280e2aa a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-916a474 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-ea3c133 */.elementor-31 .elementor-element.elementor-element-ea3c133 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-ea3c133 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-ea3c133 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-ea3c133 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-ea3c133 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-98adc2a */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5df68be */.elementor-31 .elementor-element.elementor-element-5df68be a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-5df68be a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-5df68be a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-5df68be a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-5df68be a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e0ae7fe */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-f90878a */.elementor-31 .elementor-element.elementor-element-f90878a a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-f90878a a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-f90878a a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-f90878a a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-f90878a a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7f425c6 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5d653ce */.elementor-31 .elementor-element.elementor-element-5d653ce a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-5d653ce a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-5d653ce a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-5d653ce a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-5d653ce a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-618414b */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-a199f23 */.elementor-31 .elementor-element.elementor-element-a199f23 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-a199f23 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-a199f23 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-a199f23 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-a199f23 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b6d92ba */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-9820685 */.elementor-31 .elementor-element.elementor-element-9820685 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-9820685 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-9820685 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-9820685 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-9820685 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0dd14e7 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-9e26272 */.elementor-31 .elementor-element.elementor-element-9e26272 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-9e26272 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-9e26272 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-9e26272 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-9e26272 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-280e2aa */.elementor-31 .elementor-element.elementor-element-280e2aa a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-280e2aa a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-280e2aa a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-280e2aa a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-280e2aa a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-916a474 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-ea3c133 */.elementor-31 .elementor-element.elementor-element-ea3c133 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-ea3c133 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-ea3c133 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-ea3c133 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-ea3c133 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-98adc2a */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5df68be */.elementor-31 .elementor-element.elementor-element-5df68be a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-5df68be a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-5df68be a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-5df68be a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-5df68be a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e0ae7fe */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-f90878a */.elementor-31 .elementor-element.elementor-element-f90878a a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-f90878a a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-f90878a a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-f90878a a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-f90878a a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7f425c6 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5d653ce */.elementor-31 .elementor-element.elementor-element-5d653ce a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-5d653ce a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-5d653ce a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-5d653ce a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-5d653ce a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-618414b */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-a199f23 */.elementor-31 .elementor-element.elementor-element-a199f23 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-a199f23 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-a199f23 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-a199f23 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-a199f23 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b6d92ba */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-9820685 */.elementor-31 .elementor-element.elementor-element-9820685 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-9820685 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-9820685 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-9820685 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-9820685 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0dd14e7 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-9e26272 */.elementor-31 .elementor-element.elementor-element-9e26272 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-9e26272 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-9e26272 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-9e26272 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-9e26272 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-280e2aa */.elementor-31 .elementor-element.elementor-element-280e2aa a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-280e2aa a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-280e2aa a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-280e2aa a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-280e2aa a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-916a474 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-ea3c133 */.elementor-31 .elementor-element.elementor-element-ea3c133 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-ea3c133 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-ea3c133 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-ea3c133 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-ea3c133 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-98adc2a */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5df68be */.elementor-31 .elementor-element.elementor-element-5df68be a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-5df68be a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-5df68be a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-5df68be a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-5df68be a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e0ae7fe */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-f90878a */.elementor-31 .elementor-element.elementor-element-f90878a a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-f90878a a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-f90878a a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-f90878a a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-f90878a a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7f425c6 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5d653ce */.elementor-31 .elementor-element.elementor-element-5d653ce a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-5d653ce a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-5d653ce a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-5d653ce a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-5d653ce a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-618414b */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-a199f23 */.elementor-31 .elementor-element.elementor-element-a199f23 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-a199f23 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-a199f23 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-a199f23 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-a199f23 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b6d92ba */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-9820685 */.elementor-31 .elementor-element.elementor-element-9820685 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-9820685 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-9820685 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-9820685 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-9820685 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0dd14e7 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-9e26272 */.elementor-31 .elementor-element.elementor-element-9e26272 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-9e26272 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-9e26272 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-9e26272 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-9e26272 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-280e2aa */.elementor-31 .elementor-element.elementor-element-280e2aa a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-280e2aa a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-280e2aa a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-280e2aa a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-280e2aa a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-916a474 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-ea3c133 */.elementor-31 .elementor-element.elementor-element-ea3c133 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-ea3c133 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-ea3c133 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-ea3c133 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-ea3c133 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-98adc2a */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5df68be */.elementor-31 .elementor-element.elementor-element-5df68be a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-5df68be a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-5df68be a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-5df68be a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-5df68be a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e0ae7fe */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-f90878a */.elementor-31 .elementor-element.elementor-element-f90878a a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-f90878a a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-f90878a a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-f90878a a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-f90878a a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7f425c6 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5d653ce */.elementor-31 .elementor-element.elementor-element-5d653ce a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-5d653ce a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-5d653ce a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-5d653ce a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-5d653ce a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-618414b */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-a199f23 */.elementor-31 .elementor-element.elementor-element-a199f23 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-a199f23 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-a199f23 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-a199f23 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-a199f23 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b6d92ba */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-9820685 */.elementor-31 .elementor-element.elementor-element-9820685 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-9820685 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-9820685 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-9820685 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-9820685 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0dd14e7 */.hover-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* Maintain layout, spacing, and border radius */
.image-hover-effect {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
}

.image-hover-effect img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
  transition: transform 0.6s ease; /* smooth scale effect */
}

/* --- Diagonal center-out sweep --- */
.image-hover-effect::before,
.image-hover-effect::after {
  content: "";
  position: absolute;
  width: 0; /* start from center */
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
  transform: skewX(-30deg);
  transition: all 0.6s ease;
  pointer-events: none;
  opacity: 0.8;
}

/* Start collapsed at the center */
.image-hover-effect::before {
  top: 0;
  left: 50%;
  transform-origin: left center;
}

.image-hover-effect::after {
  top: 0;
  right: 50%;
  transform-origin: right center;
}

/* ✨ On hover: expand outwards + slight image zoom */
.hover-container:hover .image-hover-effect::before {
  width: 100%;
  left: 0;
  opacity: 0;
}

.hover-container:hover .image-hover-effect::after {
  width: 100%;
  right: 0;
  opacity: 0;
}

.hover-container:hover img {
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-9e26272 */.elementor-31 .elementor-element.elementor-element-9e26272 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-9e26272 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-9e26272 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-9e26272 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-9e26272 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-3397d14 */.elementor-31 .elementor-element.elementor-element-3397d14 a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-3397d14 a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-3397d14 a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-3397d14 a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-3397d14 a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-84d31bd */.elementor-31 .elementor-element.elementor-element-84d31bd a {
  position: relative;
  overflow: hidden;
  color: #fff; /* Initial text color */
  background-color: #3399CC; /* Initial background color */
  transition: color 0.3s ease;
  z-index: 1;
}

/* Sliding overlay - sits *under* the text */
.elementor-31 .elementor-element.elementor-element-84d31bd a::before {
  content: "";
  position: absolute;
  top: 100%; /* Start below the button */
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000; /* Hover background color */
  transition: top 0.4s ease; /* Animate vertical movement */
  z-index: 0; /* Keep overlay below text */
}

/* Ensure text stays above the overlay */
.elementor-31 .elementor-element.elementor-element-84d31bd a * {
  position: relative;
  z-index: 1;
}

/* On hover, slide overlay upward and invert text color */
.elementor-31 .elementor-element.elementor-element-84d31bd a:hover::before {
  top: 0; /* Slide up into view */
}

.elementor-31 .elementor-element.elementor-element-84d31bd a:hover {
  color: #FFFFFF !important; /* Hover text color */
}/* End custom CSS */
/* Start custom CSS for image-carousel, class: .elementor-element-ca2f231 */.elementor-31 .elementor-element.elementor-element-ca2f231 .swiper-wrapper {
	-webkit-transition-timing-function: linear !important;
    transition-timing-function: linear !important;
}
.elementor-widget-image-carousel .swiper .swiper-slide img {
    /*filter: grayscale(1);
    opacity: 0.35;*/
    transition: all 0.4s ease;
}

/*.elementor-widget-image-carousel .swiper .swiper-slide img:hover{
    opacity: 1;
    filter: grayscale(0);
}*//* End custom CSS */
/* Start custom CSS */.zoomHover {
    background-size: 160% !important;
}

.zoomHover:hover {
    background-size: 170% !important;
    transition:  background-size 0.3s ease-in-out;
}/* End custom CSS */