.elementor-2728 .elementor-element.elementor-element-4d220b7{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:8px;--padding-bottom:8px;--padding-left:32px;--padding-right:32px;--z-index:999;}.elementor-2728 .elementor-element.elementor-element-4d220b7:not(.elementor-motion-effects-element-type-background), .elementor-2728 .elementor-element.elementor-element-4d220b7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#AED025;}.elementor-2728 .elementor-element.elementor-element-c7197ee{--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:24px 24px;--row-gap:24px;--column-gap:24px;}.elementor-2728 .elementor-element.elementor-element-7799fa3{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:flex-end;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.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-size:var( --e-global-typography-primary-font-size );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-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-2728 .elementor-element.elementor-element-5e581c9 .elementor-icon-box-wrapper{align-items:center;text-align:start;gap:8px;}.elementor-2728 .elementor-element.elementor-element-5e581c9.elementor-view-stacked .elementor-icon{background-color:#18181B;}.elementor-2728 .elementor-element.elementor-element-5e581c9.elementor-view-framed .elementor-icon, .elementor-2728 .elementor-element.elementor-element-5e581c9.elementor-view-default .elementor-icon{fill:#18181B;color:#18181B;border-color:#18181B;}.elementor-2728 .elementor-element.elementor-element-5e581c9 .elementor-icon{font-size:16px;}.elementor-2728 .elementor-element.elementor-element-5e581c9 .elementor-icon-box-title, .elementor-2728 .elementor-element.elementor-element-5e581c9 .elementor-icon-box-title a{font-family:"Poppins", Sans-serif;font-size:12px;font-weight:600;line-height:16px;}.elementor-2728 .elementor-element.elementor-element-5e581c9 .elementor-icon-box-title{color:#18181B;}.elementor-2728 .elementor-element.elementor-element-5e581c9:has(:hover) .elementor-icon-box-title,
					 .elementor-2728 .elementor-element.elementor-element-5e581c9:has(:focus) .elementor-icon-box-title{color:#18181B;}.elementor-2728 .elementor-element.elementor-element-5e581c9{width:initial;max-width:initial;}.elementor-2728 .elementor-element.elementor-element-a4f50cc .elementor-icon-box-wrapper{align-items:center;text-align:start;gap:8px;}.elementor-2728 .elementor-element.elementor-element-a4f50cc.elementor-view-stacked .elementor-icon{background-color:#18181B;}.elementor-2728 .elementor-element.elementor-element-a4f50cc.elementor-view-framed .elementor-icon, .elementor-2728 .elementor-element.elementor-element-a4f50cc.elementor-view-default .elementor-icon{fill:#18181B;color:#18181B;border-color:#18181B;}.elementor-2728 .elementor-element.elementor-element-a4f50cc .elementor-icon{font-size:16px;}.elementor-2728 .elementor-element.elementor-element-a4f50cc .elementor-icon-box-title, .elementor-2728 .elementor-element.elementor-element-a4f50cc .elementor-icon-box-title a{font-family:"Poppins", Sans-serif;font-size:12px;font-weight:600;line-height:16px;}.elementor-2728 .elementor-element.elementor-element-a4f50cc .elementor-icon-box-title{color:#18181B;}.elementor-2728 .elementor-element.elementor-element-a4f50cc:has(:hover) .elementor-icon-box-title,
					 .elementor-2728 .elementor-element.elementor-element-a4f50cc:has(:focus) .elementor-icon-box-title{color:#18181BAB;}.elementor-2728 .elementor-element.elementor-element-a4f50cc{width:initial;max-width:initial;}.elementor-2728 .elementor-element.elementor-element-9379080 .elementor-icon-box-wrapper{align-items:center;text-align:start;gap:8px;}.elementor-2728 .elementor-element.elementor-element-9379080.elementor-view-stacked .elementor-icon{background-color:#18181B;}.elementor-2728 .elementor-element.elementor-element-9379080.elementor-view-framed .elementor-icon, .elementor-2728 .elementor-element.elementor-element-9379080.elementor-view-default .elementor-icon{fill:#18181B;color:#18181B;border-color:#18181B;}.elementor-2728 .elementor-element.elementor-element-9379080 .elementor-icon{font-size:16px;}.elementor-2728 .elementor-element.elementor-element-9379080 .elementor-icon-box-title, .elementor-2728 .elementor-element.elementor-element-9379080 .elementor-icon-box-title a{font-family:"Poppins", Sans-serif;font-size:12px;font-weight:600;line-height:16px;}.elementor-2728 .elementor-element.elementor-element-9379080 .elementor-icon-box-title{color:#18181B;}.elementor-2728 .elementor-element.elementor-element-9379080:has(:hover) .elementor-icon-box-title,
					 .elementor-2728 .elementor-element.elementor-element-9379080:has(:focus) .elementor-icon-box-title{color:#18181BAB;}.elementor-2728 .elementor-element.elementor-element-9379080{width:initial;max-width:initial;}.elementor-2728 .elementor-element.elementor-element-27f3aae{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:flex-end;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2728 .elementor-element.elementor-element-415dd06 .elementor-icon-box-wrapper{text-align:start;}.elementor-2728 .elementor-element.elementor-element-415dd06 .elementor-icon-box-title, .elementor-2728 .elementor-element.elementor-element-415dd06 .elementor-icon-box-title a{font-family:"Poppins", Sans-serif;font-size:12px;font-weight:600;line-height:16px;}.elementor-2728 .elementor-element.elementor-element-415dd06 .elementor-icon-box-title{color:#18181B;}.elementor-2728 .elementor-element.elementor-element-415dd06:has(:hover) .elementor-icon-box-title,
					 .elementor-2728 .elementor-element.elementor-element-415dd06:has(:focus) .elementor-icon-box-title{color:#18181B;}.elementor-2728 .elementor-element.elementor-element-415dd06{width:initial;max-width:initial;}.elementor-2728 .elementor-element.elementor-element-415dd06.elementor-element{--align-self:center;}.elementor-2728 .elementor-element.elementor-element-05d2044{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:8px;--padding-bottom:8px;--padding-left:32px;--padding-right:32px;--z-index:999;}.elementor-2728 .elementor-element.elementor-element-05d2044:not(.elementor-motion-effects-element-type-background), .elementor-2728 .elementor-element.elementor-element-05d2044 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-3845004 );}.elementor-2728 .elementor-element.elementor-element-56830ba{--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:24px 24px;--row-gap:24px;--column-gap:24px;}.elementor-2728 .elementor-element.elementor-element-71efb0e{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:flex-end;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-2728 .elementor-element.elementor-element-9def359{text-align:start;}.elementor-2728 .elementor-element.elementor-element-9def359 img{width:100%;max-width:100%;height:100px;object-fit:cover;object-position:center center;}.elementor-2728 .elementor-element.elementor-element-9def359.elementor-element{--align-self:center;}.elementor-2728 .elementor-element.elementor-element-ff1e917{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;--gap:28px 28px;--row-gap:28px;--column-gap:28px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2728 .elementor-element.elementor-element-ff1e917.e-con{--align-self:center;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-2728 .elementor-element.elementor-element-bfb0139{text-align:start;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title{font-family:"Archivo", Sans-serif;font-size:16px;font-weight:700;line-height:20px;color:#FAFAFA;}.elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title a:hover, .elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title a:focus{color:#AED025;}.elementor-2728 .elementor-element.elementor-element-bfb0139.elementor-element{--align-self:center;}.elementor-2728 .elementor-element.elementor-element-f98a042{text-align:start;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title{font-family:"Archivo", Sans-serif;font-size:16px;font-weight:700;line-height:20px;color:#FAFAFA;}.elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title a:hover, .elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title a:focus{color:#AED025;}.elementor-2728 .elementor-element.elementor-element-f98a042.elementor-element{--align-self:center;}.elementor-2728 .elementor-element.elementor-element-704f1e6{text-align:start;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title{font-family:"Archivo", Sans-serif;font-size:16px;font-weight:700;line-height:20px;color:#FAFAFA;}.elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title a:hover, .elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title a:focus{color:#AED025;}.elementor-2728 .elementor-element.elementor-element-704f1e6.elementor-element{--align-self:center;}.elementor-2728 .elementor-element.elementor-element-f4b78f7{text-align:start;margin:0px 25px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title{font-family:"Archivo", Sans-serif;font-size:16px;font-weight:700;line-height:20px;color:#FAFAFA;}.elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title a:hover, .elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title a:focus{color:#AED025;}.elementor-2728 .elementor-element.elementor-element-f4b78f7.elementor-element{--align-self:center;}.elementor-widget-button .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );background-color:var( --e-global-color-accent );}.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button .elementor-button-content-wrapper{gap:6px;}.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button{font-family:"Inter", Sans-serif;font-size:14px;font-weight:700;line-height:16px;letter-spacing:1px;fill:#FAFAFA;color:#FAFAFA;background-color:#18181B;border-radius:0px 0px 0px 0px;padding:16px 28px 16px 28px;}.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button:hover, .elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button:focus{color:#18181B;background-color:#AED025;}.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button:hover svg, .elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button:focus svg{fill:#18181B;}.elementor-2728 .elementor-element.elementor-element-c6cc640{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:8px;--padding-bottom:8px;--padding-left:32px;--padding-right:32px;--z-index:999;}.elementor-2728 .elementor-element.elementor-element-c6cc640:not(.elementor-motion-effects-element-type-background), .elementor-2728 .elementor-element.elementor-element-c6cc640 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF00;}.elementor-2728 .elementor-element.elementor-element-9b7385b{--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:24px 24px;--row-gap:24px;--column-gap:24px;}.elementor-2728 .elementor-element.elementor-element-b7fdb94{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:flex-end;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2728 .elementor-element.elementor-element-32e7fe6{text-align:start;}.elementor-2728 .elementor-element.elementor-element-32e7fe6 img{width:100%;max-width:100%;height:100px;object-fit:cover;object-position:center center;}.elementor-2728 .elementor-element.elementor-element-32e7fe6.elementor-element{--align-self:center;}.elementor-2728 .elementor-element.elementor-element-5ebbeeb{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;--gap:32px 32px;--row-gap:32px;--column-gap:32px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2728 .elementor-element.elementor-element-5ebbeeb.e-con{--align-self:center;}.elementor-2728 .elementor-element.elementor-element-29c4a7a{--e-off-canvas-height:100vh;--e-off-canvas-content-overflow:auto;--e-off-canvas-overlay-opacity:0;}.elementor-2728 .elementor-element.elementor-element-d5f9ccb{--display:flex;}.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-2728 .elementor-element.elementor-element-48e0be5 .elementor-icon-wrapper{text-align:center;}.elementor-2728 .elementor-element.elementor-element-48e0be5.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-2728 .elementor-element.elementor-element-48e0be5.elementor-view-framed .elementor-icon, .elementor-2728 .elementor-element.elementor-element-48e0be5.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-2728 .elementor-element.elementor-element-48e0be5.elementor-view-framed .elementor-icon, .elementor-2728 .elementor-element.elementor-element-48e0be5.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-2728 .elementor-element.elementor-element-48e0be5.elementor-view-stacked .elementor-icon:hover{background-color:var( --e-global-color-text );}.elementor-2728 .elementor-element.elementor-element-48e0be5.elementor-view-framed .elementor-icon:hover, .elementor-2728 .elementor-element.elementor-element-48e0be5.elementor-view-default .elementor-icon:hover{color:var( --e-global-color-text );border-color:var( --e-global-color-text );}.elementor-2728 .elementor-element.elementor-element-48e0be5.elementor-view-framed .elementor-icon:hover, .elementor-2728 .elementor-element.elementor-element-48e0be5.elementor-view-default .elementor-icon:hover svg{fill:var( --e-global-color-text );}.elementor-2728 .elementor-element.elementor-element-c0443c6{text-align:start;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title{font-family:"Archivo", Sans-serif;font-size:16px;font-weight:700;line-height:20px;color:var( --e-global-color-text );}.elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title a:hover, .elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title a:focus{color:#AED025;}.elementor-2728 .elementor-element.elementor-element-c0443c6.elementor-element{--align-self:center;}.elementor-2728 .elementor-element.elementor-element-b366f72{text-align:start;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title{font-family:"Archivo", Sans-serif;font-size:16px;font-weight:700;line-height:20px;color:var( --e-global-color-text );}.elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title a:hover, .elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title a:focus{color:#AED025;}.elementor-2728 .elementor-element.elementor-element-b366f72.elementor-element{--align-self:center;}.elementor-2728 .elementor-element.elementor-element-fcb7e62{text-align:start;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title{font-family:"Archivo", Sans-serif;font-size:16px;font-weight:700;line-height:20px;color:var( --e-global-color-text );}.elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title a:hover, .elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title a:focus{color:#AED025;}.elementor-2728 .elementor-element.elementor-element-fcb7e62.elementor-element{--align-self:center;}.elementor-2728 .elementor-element.elementor-element-9a9d717{text-align:start;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title{font-family:"Archivo", Sans-serif;font-size:16px;font-weight:700;line-height:20px;color:var( --e-global-color-text );}.elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title a:hover, .elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title a:focus{color:#AED025;}.elementor-2728 .elementor-element.elementor-element-9a9d717.elementor-element{--align-self:center;}.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button .elementor-button-content-wrapper{gap:6px;}.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button{font-family:"Inter", Sans-serif;font-size:14px;font-weight:700;line-height:16px;letter-spacing:1px;fill:#FAFAFA;color:#FAFAFA;background-color:#18181B;border-radius:0px 0px 0px 0px;padding:16px 28px 16px 28px;}.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button:hover, .elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button:focus{color:#18181B;background-color:#AED025;}.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button:hover svg, .elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button:focus svg{fill:#18181B;}.elementor-2728 .elementor-element.elementor-element-5027390 .elementor-icon-wrapper{text-align:center;}.elementor-2728 .elementor-element.elementor-element-5027390.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-2728 .elementor-element.elementor-element-5027390.elementor-view-framed .elementor-icon, .elementor-2728 .elementor-element.elementor-element-5027390.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-2728 .elementor-element.elementor-element-5027390.elementor-view-framed .elementor-icon, .elementor-2728 .elementor-element.elementor-element-5027390.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-2728 .elementor-element.elementor-element-5027390.elementor-view-stacked .elementor-icon:hover{background-color:var( --e-global-color-text );}.elementor-2728 .elementor-element.elementor-element-5027390.elementor-view-framed .elementor-icon:hover, .elementor-2728 .elementor-element.elementor-element-5027390.elementor-view-default .elementor-icon:hover{color:var( --e-global-color-text );border-color:var( --e-global-color-text );}.elementor-2728 .elementor-element.elementor-element-5027390.elementor-view-framed .elementor-icon:hover, .elementor-2728 .elementor-element.elementor-element-5027390.elementor-view-default .elementor-icon:hover svg{fill:var( --e-global-color-text );}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-2728 .elementor-element.elementor-element-7799fa3{--width:70%;}.elementor-2728 .elementor-element.elementor-element-27f3aae{--width:30%;}.elementor-2728 .elementor-element.elementor-element-71efb0e{--width:30%;}.elementor-2728 .elementor-element.elementor-element-ff1e917{--width:70%;}.elementor-2728 .elementor-element.elementor-element-b7fdb94{--width:30%;}.elementor-2728 .elementor-element.elementor-element-5ebbeeb{--width:70%;}}@media(max-width:1024px) and (min-width:768px){.elementor-2728 .elementor-element.elementor-element-7799fa3{--width:75%;}.elementor-2728 .elementor-element.elementor-element-27f3aae{--width:25%;}.elementor-2728 .elementor-element.elementor-element-71efb0e{--width:20%;}.elementor-2728 .elementor-element.elementor-element-ff1e917{--width:80%;}.elementor-2728 .elementor-element.elementor-element-b7fdb94{--width:20%;}.elementor-2728 .elementor-element.elementor-element-5ebbeeb{--width:80%;}}@media(min-width:2400px){.elementor-2728 .elementor-element.elementor-element-4d220b7{--padding-top:0.5%;--padding-bottom:0.5%;--padding-left:24%;--padding-right:24%;}.elementor-2728 .elementor-element.elementor-element-c7197ee{--padding-top:0px;--padding-bottom:0px;--padding-left:32px;--padding-right:32px;}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-icon-box .elementor-icon-box-description{font-size:var( --e-global-typography-text-font-size );}.elementor-2728 .elementor-element.elementor-element-05d2044{--padding-top:0.5%;--padding-bottom:0.5%;--padding-left:24%;--padding-right:24%;}.elementor-2728 .elementor-element.elementor-element-56830ba{--padding-top:0px;--padding-bottom:0px;--padding-left:32px;--padding-right:32px;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-2728 .elementor-element.elementor-element-c6cc640{--padding-top:0.5%;--padding-bottom:0.5%;--padding-left:24%;--padding-right:24%;}.elementor-2728 .elementor-element.elementor-element-9b7385b{--padding-top:0px;--padding-bottom:0px;--padding-left:32px;--padding-right:32px;}}@media(max-width:1560px){.elementor-2728 .elementor-element.elementor-element-7799fa3{--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-icon-box .elementor-icon-box-description{font-size:var( --e-global-typography-text-font-size );}.elementor-2728 .elementor-element.elementor-element-71efb0e{--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-2728 .elementor-element.elementor-element-ff1e917{--gap:22px 22px;--row-gap:22px;--column-gap:22px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-2728 .elementor-element.elementor-element-b7fdb94{--gap:20px 20px;--row-gap:20px;--column-gap:20px;}}@media(max-width:1024px){.elementor-2728 .elementor-element.elementor-element-4d220b7{--padding-top:8px;--padding-bottom:8px;--padding-left:16px;--padding-right:16px;}.elementor-2728 .elementor-element.elementor-element-7799fa3{--gap:8px 8px;--row-gap:8px;--column-gap:8px;}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-icon-box .elementor-icon-box-description{font-size:var( --e-global-typography-text-font-size );}.elementor-2728 .elementor-element.elementor-element-5e581c9 .elementor-icon-box-wrapper{gap:5px;}.elementor-2728 .elementor-element.elementor-element-5e581c9 .elementor-icon-box-title, .elementor-2728 .elementor-element.elementor-element-5e581c9 .elementor-icon-box-title a{font-size:12px;line-height:16px;}.elementor-2728 .elementor-element.elementor-element-a4f50cc .elementor-icon-box-wrapper{gap:5px;}.elementor-2728 .elementor-element.elementor-element-a4f50cc .elementor-icon-box-title, .elementor-2728 .elementor-element.elementor-element-a4f50cc .elementor-icon-box-title a{font-size:12px;}.elementor-2728 .elementor-element.elementor-element-9379080 .elementor-icon-box-wrapper{gap:5px;}.elementor-2728 .elementor-element.elementor-element-9379080 .elementor-icon-box-title, .elementor-2728 .elementor-element.elementor-element-9379080 .elementor-icon-box-title a{font-size:12px;}.elementor-2728 .elementor-element.elementor-element-415dd06 .elementor-icon-box-title, .elementor-2728 .elementor-element.elementor-element-415dd06 .elementor-icon-box-title a{font-size:12px;}.elementor-2728 .elementor-element.elementor-element-05d2044{--padding-top:8px;--padding-bottom:8px;--padding-left:16px;--padding-right:16px;}.elementor-2728 .elementor-element.elementor-element-71efb0e{--gap:8px 8px;--row-gap:8px;--column-gap:8px;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-2728 .elementor-element.elementor-element-ff1e917{--gap:12px 12px;--row-gap:12px;--column-gap:12px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title{font-size:16px;}.elementor-2728 .elementor-element.elementor-element-bfb0139{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title{font-size:16px;}.elementor-2728 .elementor-element.elementor-element-f98a042{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title{font-size:16px;}.elementor-2728 .elementor-element.elementor-element-704f1e6{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title{font-size:16px;}.elementor-2728 .elementor-element.elementor-element-f4b78f7{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button{font-size:12px;letter-spacing:0px;padding:12px 24px 12px 24px;}.elementor-2728 .elementor-element.elementor-element-c6cc640{--padding-top:8px;--padding-bottom:8px;--padding-left:16px;--padding-right:16px;}.elementor-2728 .elementor-element.elementor-element-b7fdb94{--gap:8px 8px;--row-gap:8px;--column-gap:8px;}.elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title{font-size:16px;}.elementor-2728 .elementor-element.elementor-element-c0443c6{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title{font-size:16px;}.elementor-2728 .elementor-element.elementor-element-b366f72{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title{font-size:16px;}.elementor-2728 .elementor-element.elementor-element-fcb7e62{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title{font-size:16px;}.elementor-2728 .elementor-element.elementor-element-9a9d717{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button{font-size:12px;letter-spacing:0px;padding:12px 24px 12px 24px;}}@media(max-width:767px){.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-icon-box .elementor-icon-box-description{font-size:var( --e-global-typography-text-font-size );}.elementor-2728 .elementor-element.elementor-element-5e581c9 .elementor-icon-box-title, .elementor-2728 .elementor-element.elementor-element-5e581c9 .elementor-icon-box-title a{font-size:16px;}.elementor-2728 .elementor-element.elementor-element-a4f50cc .elementor-icon-box-title, .elementor-2728 .elementor-element.elementor-element-a4f50cc .elementor-icon-box-title a{font-size:16px;}.elementor-2728 .elementor-element.elementor-element-9379080 .elementor-icon-box-title, .elementor-2728 .elementor-element.elementor-element-9379080 .elementor-icon-box-title a{font-size:16px;}.elementor-2728 .elementor-element.elementor-element-415dd06 .elementor-icon-box-title, .elementor-2728 .elementor-element.elementor-element-415dd06 .elementor-icon-box-title a{font-size:16px;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-2728 .elementor-element.elementor-element-bfb0139{text-align:center;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 8px) 0px;}.elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title{font-size:14px;letter-spacing:2px;}.elementor-2728 .elementor-element.elementor-element-f98a042{text-align:center;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 8px) 0px;}.elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title{font-size:14px;letter-spacing:2px;}.elementor-2728 .elementor-element.elementor-element-704f1e6{text-align:center;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 8px) 0px;}.elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title{font-size:14px;letter-spacing:2px;}.elementor-2728 .elementor-element.elementor-element-f4b78f7{text-align:center;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 8px) 0px;}.elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title{font-size:14px;letter-spacing:2px;}.elementor-2728 .elementor-element.elementor-element-c6cc640{--padding-top:5px;--padding-bottom:5px;--padding-left:12px;--padding-right:12px;}.elementor-2728 .elementor-element.elementor-element-9b7385b{--gap:5px 5px;--row-gap:5px;--column-gap:5px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2728 .elementor-element.elementor-element-b7fdb94{--width:49%;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-2728 .elementor-element.elementor-element-32e7fe6 img{height:80px;}.elementor-2728 .elementor-element.elementor-element-32e7fe6.elementor-element{--align-self:flex-start;}.elementor-2728 .elementor-element.elementor-element-5ebbeeb{--width:49%;}.elementor-2728 .elementor-element.elementor-element-29c4a7a{--e-off-canvas-justify-content:flex-end;--e-off-canvas-align-items:flex-start;--e-off-canvas-width:240px;--e-off-canvas-height:100vh;--e-off-canvas-content-overflow:auto;}.elementor-2728 .elementor-element.elementor-element-d5f9ccb{--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:48px;--padding-bottom:12px;--padding-left:12px;--padding-right:12px;}.elementor-2728 .elementor-element.elementor-element-48e0be5 .elementor-icon-wrapper{text-align:end;}.elementor-2728 .elementor-element.elementor-element-48e0be5 .elementor-icon{font-size:26px;}.elementor-2728 .elementor-element.elementor-element-48e0be5 .elementor-icon svg{height:26px;}.elementor-2728 .elementor-element.elementor-element-48e0be5{margin:-42px -8px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-2728 .elementor-element.elementor-element-48e0be5.elementor-element{--align-self:flex-end;}.elementor-2728 .elementor-element.elementor-element-c0443c6{text-align:center;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title{font-size:14px;letter-spacing:2px;}.elementor-2728 .elementor-element.elementor-element-b366f72{text-align:center;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title{font-size:14px;letter-spacing:2px;}.elementor-2728 .elementor-element.elementor-element-fcb7e62{text-align:center;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title{font-size:14px;letter-spacing:2px;}.elementor-2728 .elementor-element.elementor-element-9a9d717{text-align:center;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title{font-size:14px;letter-spacing:2px;}.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button{font-size:14px;padding:15px 28px 15px 28px;}.elementor-2728 .elementor-element.elementor-element-5027390 .elementor-icon{font-size:28px;}.elementor-2728 .elementor-element.elementor-element-5027390 .elementor-icon svg{height:28px;}.elementor-2728 .elementor-element.elementor-element-5027390{margin:0px 12px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}}/* Start custom CSS for icon-box, class: .elementor-element-5e581c9 */.elementor-2728 .elementor-element.elementor-element-5e581c9 .elementor-icon-box-title {
    font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !important;
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-a4f50cc */.elementor-2728 .elementor-element.elementor-element-a4f50cc .elementor-icon-box-title {
    font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !important;
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-9379080 */.elementor-2728 .elementor-element.elementor-element-9379080 .elementor-icon-box-title {
    font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !important;
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-415dd06 */.elementor-2728 .elementor-element.elementor-element-415dd06 .elementor-icon-box-title {
    font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-bfb0139 *//* ===== HEADING — ANIMATED BORDER DRAW ON HOVER ===== */

/* Positioning context + breathing room for the box.
   Applies to the <a> when linked, the <h2> when not. */
.elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title,
.elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title a {
    position: relative;
    display: inline-block;
    padding: 10px 14px;
    text-decoration: none;
}

/* When a link exists, the <a> carries the padding — not the heading */
.elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title:has(a) {
    padding: 0;
}

/* Segments 1 & 2 — top edge, then right edge */
.elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title::before,
.elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    opacity: 0;
    pointer-events: none;
    box-sizing: border-box;
    border-top: 2px solid #AED025;
    border-right: 2px solid #AED025;
    transition: width 0.15s ease-in 0.15s,
                height 0.15s ease-in 0s,
                opacity 0s linear 0.3s;
}

/* Segments 3 & 4 — bottom edge, then left edge */
.elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title::after,
.elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title a::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    opacity: 0;
    pointer-events: none;
    box-sizing: border-box;
    border-bottom: 2px solid #AED025;
    border-left: 2px solid #AED025;
    transition: width 0.15s ease-in 0.45s,
                height 0.15s ease-in 0.3s,
                opacity 0s linear 0.6s;
}

/* Draw clockwise from the top-left corner */
.elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title:hover::before,
.elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title a:hover::before,
.elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title a:focus-visible::before {
    width: 100%;
    height: 100%;
    opacity: 1;
    transition: width 0.15s ease-out 0s,
                height 0.15s ease-out 0.15s,
                opacity 0s linear 0s;
}

.elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title:hover::after,
.elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title a:hover::after,
.elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title a:focus-visible::after {
    width: 100%;
    height: 100%;
    opacity: 1;
    transition: width 0.15s ease-out 0.3s,
                height 0.15s ease-out 0.45s,
                opacity 0s linear 0.3s;
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
    .elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title::before,
    .elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title::after,
    .elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title a::before,
    .elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title a::after,
    .elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title:hover::before,
    .elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title:hover::after,
    .elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title a:hover::before,
    .elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title a:hover::after,
    .elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title a:focus-visible::before,
    .elementor-2728 .elementor-element.elementor-element-bfb0139 .elementor-heading-title a:focus-visible::after {
        transition: none;
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f98a042 *//* ===== HEADING — ANIMATED BORDER DRAW ON HOVER ===== */

/* Positioning context + breathing room for the box.
   Applies to the <a> when linked, the <h2> when not. */
.elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title,
.elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title a {
    position: relative;
    display: inline-block;
    padding: 10px 14px;
    text-decoration: none;
}

/* When a link exists, the <a> carries the padding — not the heading */
.elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title:has(a) {
    padding: 0;
}

/* Segments 1 & 2 — top edge, then right edge */
.elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title::before,
.elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    opacity: 0;
    pointer-events: none;
    box-sizing: border-box;
    border-top: 2px solid #AED025;
    border-right: 2px solid #AED025;
    transition: width 0.15s ease-in 0.15s,
                height 0.15s ease-in 0s,
                opacity 0s linear 0.3s;
}

/* Segments 3 & 4 — bottom edge, then left edge */
.elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title::after,
.elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title a::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    opacity: 0;
    pointer-events: none;
    box-sizing: border-box;
    border-bottom: 2px solid #AED025;
    border-left: 2px solid #AED025;
    transition: width 0.15s ease-in 0.45s,
                height 0.15s ease-in 0.3s,
                opacity 0s linear 0.6s;
}

/* Draw clockwise from the top-left corner */
.elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title:hover::before,
.elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title a:hover::before,
.elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title a:focus-visible::before {
    width: 100%;
    height: 100%;
    opacity: 1;
    transition: width 0.15s ease-out 0s,
                height 0.15s ease-out 0.15s,
                opacity 0s linear 0s;
}

.elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title:hover::after,
.elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title a:hover::after,
.elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title a:focus-visible::after {
    width: 100%;
    height: 100%;
    opacity: 1;
    transition: width 0.15s ease-out 0.3s,
                height 0.15s ease-out 0.45s,
                opacity 0s linear 0.3s;
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
    .elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title::before,
    .elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title::after,
    .elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title a::before,
    .elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title a::after,
    .elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title:hover::before,
    .elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title:hover::after,
    .elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title a:hover::before,
    .elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title a:hover::after,
    .elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title a:focus-visible::before,
    .elementor-2728 .elementor-element.elementor-element-f98a042 .elementor-heading-title a:focus-visible::after {
        transition: none;
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-704f1e6 *//* ===== HEADING — ANIMATED BORDER DRAW ON HOVER ===== */

/* Positioning context + breathing room for the box.
   Applies to the <a> when linked, the <h2> when not. */
.elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title,
.elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title a {
    position: relative;
    display: inline-block;
    padding: 10px 14px;
    text-decoration: none;
}

/* When a link exists, the <a> carries the padding — not the heading */
.elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title:has(a) {
    padding: 0;
}

/* Segments 1 & 2 — top edge, then right edge */
.elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title::before,
.elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    opacity: 0;
    pointer-events: none;
    box-sizing: border-box;
    border-top: 2px solid #AED025;
    border-right: 2px solid #AED025;
    transition: width 0.15s ease-in 0.15s,
                height 0.15s ease-in 0s,
                opacity 0s linear 0.3s;
}

/* Segments 3 & 4 — bottom edge, then left edge */
.elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title::after,
.elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title a::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    opacity: 0;
    pointer-events: none;
    box-sizing: border-box;
    border-bottom: 2px solid #AED025;
    border-left: 2px solid #AED025;
    transition: width 0.15s ease-in 0.45s,
                height 0.15s ease-in 0.3s,
                opacity 0s linear 0.6s;
}

/* Draw clockwise from the top-left corner */
.elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title:hover::before,
.elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title a:hover::before,
.elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title a:focus-visible::before {
    width: 100%;
    height: 100%;
    opacity: 1;
    transition: width 0.15s ease-out 0s,
                height 0.15s ease-out 0.15s,
                opacity 0s linear 0s;
}

.elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title:hover::after,
.elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title a:hover::after,
.elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title a:focus-visible::after {
    width: 100%;
    height: 100%;
    opacity: 1;
    transition: width 0.15s ease-out 0.3s,
                height 0.15s ease-out 0.45s,
                opacity 0s linear 0.3s;
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
    .elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title::before,
    .elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title::after,
    .elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title a::before,
    .elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title a::after,
    .elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title:hover::before,
    .elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title:hover::after,
    .elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title a:hover::before,
    .elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title a:hover::after,
    .elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title a:focus-visible::before,
    .elementor-2728 .elementor-element.elementor-element-704f1e6 .elementor-heading-title a:focus-visible::after {
        transition: none;
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f4b78f7 *//* ===== HEADING — ANIMATED BORDER DRAW ON HOVER ===== */

/* Positioning context + breathing room for the box.
   Applies to the <a> when linked, the <h2> when not. */
.elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title,
.elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title a {
    position: relative;
    display: inline-block;
    padding: 10px 14px;
    text-decoration: none;
}

/* When a link exists, the <a> carries the padding — not the heading */
.elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title:has(a) {
    padding: 0;
}

/* Segments 1 & 2 — top edge, then right edge */
.elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title::before,
.elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    opacity: 0;
    pointer-events: none;
    box-sizing: border-box;
    border-top: 2px solid #AED025;
    border-right: 2px solid #AED025;
    transition: width 0.15s ease-in 0.15s,
                height 0.15s ease-in 0s,
                opacity 0s linear 0.3s;
}

/* Segments 3 & 4 — bottom edge, then left edge */
.elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title::after,
.elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title a::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    opacity: 0;
    pointer-events: none;
    box-sizing: border-box;
    border-bottom: 2px solid #AED025;
    border-left: 2px solid #AED025;
    transition: width 0.15s ease-in 0.45s,
                height 0.15s ease-in 0.3s,
                opacity 0s linear 0.6s;
}

/* Draw clockwise from the top-left corner */
.elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title:hover::before,
.elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title a:hover::before,
.elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title a:focus-visible::before {
    width: 100%;
    height: 100%;
    opacity: 1;
    transition: width 0.15s ease-out 0s,
                height 0.15s ease-out 0.15s,
                opacity 0s linear 0s;
}

.elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title:hover::after,
.elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title a:hover::after,
.elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title a:focus-visible::after {
    width: 100%;
    height: 100%;
    opacity: 1;
    transition: width 0.15s ease-out 0.3s,
                height 0.15s ease-out 0.45s,
                opacity 0s linear 0.3s;
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
    .elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title::before,
    .elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title::after,
    .elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title a::before,
    .elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title a::after,
    .elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title:hover::before,
    .elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title:hover::after,
    .elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title a:hover::before,
    .elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title a:hover::after,
    .elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title a:focus-visible::before,
    .elementor-2728 .elementor-element.elementor-element-f4b78f7 .elementor-heading-title a:focus-visible::after {
        transition: none;
    }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-92f389e */.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button {
    font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !important;
}
/* ===== BOOK EVENT — CIRCLING GRADIENT BORDER ===== */

.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background-color: transparent !important;
    z-index: 0;
}

/* The circling light — a conic gradient spun by transform */
.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 250%;
    aspect-ratio: 1;
    z-index: -2;
    background: conic-gradient(
        from 0deg,
        transparent 0deg,
        transparent 200deg,
        #AED025 280deg,
        #E4F79B 320deg,
        #AED025 340deg,
        transparent 360deg
    );
    animation: g14Spin 3s linear infinite;
}

/* Inner fill, inset 2px — leaves the ring visible as a border */
.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button::after {
    content: "";
    position: absolute;
    inset: 4px;
    z-index: -1;
    background-color: #18181B;
    transition: background-color 0.3s ease;
}

/* Keep label and arrow above both layers */
.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button .elementor-button-content-wrapper,
.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button .elementor-button-text,
.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button .elementor-button-icon {
    position: relative;
    z-index: 1;
}

/* Hover — native green fill, faster spin */
.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button:hover::after,
.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button:focus-visible::after {
    background-color: #AED025;
}

.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button:hover::before,
.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button:focus-visible::before {
    animation-duration: 1.2s;
}

@keyframes g14Spin {
    to { transform: translate(-50%, -50%) rotate(360deg); }
}

/* Starting position for the spin */
.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button::before {
    transform: translate(-50%, -50%) rotate(0deg);
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
    .elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button::before {
        animation: none;
        background: #AED025;
    }
}

/* Existing font override */
.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button {
    font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !important;
}
.elementor-2728 .elementor-element.elementor-element-92f389e .elementor-button {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    vertical-align: top;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-05d2044 *//* 1. Base State: Transparent with smooth transitions */
.elementor-2728 .elementor-element.elementor-element-05d2044 {
    background-color: transparent !important;
    border-bottom: 1px solid transparent !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* 2. Sticky State: Applies when you scroll past 50px */
.elementor-2728 .elementor-element.elementor-element-05d2044.elementor-sticky--effects {
    /* 90% opacity background (change to rgba(24,24,27,0.9) for dark mode) */
    background-color: rgba(255, 255, 255, 0.9) !important; 
    
    /* backdrop-blur-md effect */
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    
    /* border-b effect */
    border-bottom: 1px solid rgba(0, 0, 0, 0.1) !important; 
    
    /* Triggers the slide-reveal animation */
    animation: stickyReveal 0.4s ease-out forwards;
}

/* 3. The Slide Reveal Animation */
@keyframes stickyReveal {
    0% {
        transform: translateY(-100%); /* Starts hidden above */
        opacity: 0;
    }
    100% {
        transform: translateY(0); /* Drops down to exact position */
        opacity: 1;
    }
}
/* ---- LOGO SWAP ---- */
/* Default (transparent header): white-text logo */
.elementor-2728 .elementor-element.elementor-element-05d2044 .elementor-element-9def359 img {
    content: url("https://gallery14nyc.com/wp-content/uploads/2026/08/Gallery14-Logo-White-AED025.png");
    transition: opacity 0.3s ease !important;
}

/* Sticky: revert to the original dark-text logo */
.elementor-2728 .elementor-element.elementor-element-05d2044.elementor-sticky--effects .elementor-element-9def359 img {
    content: normal;
}

/* ---- MENU TEXT COLOR ON STICKY ---- */
.elementor-2728 .elementor-element.elementor-element-05d2044 .elementor-heading-title,
.elementor-2728 .elementor-element.elementor-element-05d2044 .elementor-heading-title a {
    transition: color 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.elementor-2728 .elementor-element.elementor-element-05d2044.elementor-sticky--effects .elementor-heading-title a {
    color: #18181B !important;
}

.elementor-2728 .elementor-element.elementor-element-05d2044.elementor-sticky--effects .elementor-heading-title a:hover {
    color: #7A9119 !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c0443c6 *//* ===== HEADING — ANIMATED BORDER DRAW ON HOVER ===== */

/* Positioning context + breathing room for the box.
   Applies to the <a> when linked, the <h2> when not. */
.elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title,
.elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title a {
    position: relative;
    display: inline-block;
    padding: 10px 14px;
    text-decoration: none;
}

/* When a link exists, the <a> carries the padding — not the heading */
.elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title:has(a) {
    padding: 0;
}

/* Segments 1 & 2 — top edge, then right edge */
.elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title::before,
.elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    opacity: 0;
    pointer-events: none;
    box-sizing: border-box;
    border-top: 2px solid #AED025;
    border-right: 2px solid #AED025;
    transition: width 0.15s ease-in 0.15s,
                height 0.15s ease-in 0s,
                opacity 0s linear 0.3s;
}

/* Segments 3 & 4 — bottom edge, then left edge */
.elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title::after,
.elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title a::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    opacity: 0;
    pointer-events: none;
    box-sizing: border-box;
    border-bottom: 2px solid #AED025;
    border-left: 2px solid #AED025;
    transition: width 0.15s ease-in 0.45s,
                height 0.15s ease-in 0.3s,
                opacity 0s linear 0.6s;
}

/* Draw clockwise from the top-left corner */
.elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title:hover::before,
.elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title a:hover::before,
.elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title a:focus-visible::before {
    width: 100%;
    height: 100%;
    opacity: 1;
    transition: width 0.15s ease-out 0s,
                height 0.15s ease-out 0.15s,
                opacity 0s linear 0s;
}

.elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title:hover::after,
.elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title a:hover::after,
.elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title a:focus-visible::after {
    width: 100%;
    height: 100%;
    opacity: 1;
    transition: width 0.15s ease-out 0.3s,
                height 0.15s ease-out 0.45s,
                opacity 0s linear 0.3s;
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
    .elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title::before,
    .elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title::after,
    .elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title a::before,
    .elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title a::after,
    .elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title:hover::before,
    .elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title:hover::after,
    .elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title a:hover::before,
    .elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title a:hover::after,
    .elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title a:focus-visible::before,
    .elementor-2728 .elementor-element.elementor-element-c0443c6 .elementor-heading-title a:focus-visible::after {
        transition: none;
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-b366f72 *//* ===== HEADING — ANIMATED BORDER DRAW ON HOVER ===== */

/* Positioning context + breathing room for the box.
   Applies to the <a> when linked, the <h2> when not. */
.elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title,
.elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title a {
    position: relative;
    display: inline-block;
    padding: 10px 14px;
    text-decoration: none;
}

/* When a link exists, the <a> carries the padding — not the heading */
.elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title:has(a) {
    padding: 0;
}

/* Segments 1 & 2 — top edge, then right edge */
.elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title::before,
.elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    opacity: 0;
    pointer-events: none;
    box-sizing: border-box;
    border-top: 2px solid #AED025;
    border-right: 2px solid #AED025;
    transition: width 0.15s ease-in 0.15s,
                height 0.15s ease-in 0s,
                opacity 0s linear 0.3s;
}

/* Segments 3 & 4 — bottom edge, then left edge */
.elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title::after,
.elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title a::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    opacity: 0;
    pointer-events: none;
    box-sizing: border-box;
    border-bottom: 2px solid #AED025;
    border-left: 2px solid #AED025;
    transition: width 0.15s ease-in 0.45s,
                height 0.15s ease-in 0.3s,
                opacity 0s linear 0.6s;
}

/* Draw clockwise from the top-left corner */
.elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title:hover::before,
.elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title a:hover::before,
.elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title a:focus-visible::before {
    width: 100%;
    height: 100%;
    opacity: 1;
    transition: width 0.15s ease-out 0s,
                height 0.15s ease-out 0.15s,
                opacity 0s linear 0s;
}

.elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title:hover::after,
.elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title a:hover::after,
.elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title a:focus-visible::after {
    width: 100%;
    height: 100%;
    opacity: 1;
    transition: width 0.15s ease-out 0.3s,
                height 0.15s ease-out 0.45s,
                opacity 0s linear 0.3s;
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
    .elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title::before,
    .elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title::after,
    .elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title a::before,
    .elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title a::after,
    .elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title:hover::before,
    .elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title:hover::after,
    .elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title a:hover::before,
    .elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title a:hover::after,
    .elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title a:focus-visible::before,
    .elementor-2728 .elementor-element.elementor-element-b366f72 .elementor-heading-title a:focus-visible::after {
        transition: none;
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-fcb7e62 *//* ===== HEADING — ANIMATED BORDER DRAW ON HOVER ===== */

/* Positioning context + breathing room for the box.
   Applies to the <a> when linked, the <h2> when not. */
.elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title,
.elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title a {
    position: relative;
    display: inline-block;
    padding: 10px 14px;
    text-decoration: none;
}

/* When a link exists, the <a> carries the padding — not the heading */
.elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title:has(a) {
    padding: 0;
}

/* Segments 1 & 2 — top edge, then right edge */
.elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title::before,
.elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    opacity: 0;
    pointer-events: none;
    box-sizing: border-box;
    border-top: 2px solid #AED025;
    border-right: 2px solid #AED025;
    transition: width 0.15s ease-in 0.15s,
                height 0.15s ease-in 0s,
                opacity 0s linear 0.3s;
}

/* Segments 3 & 4 — bottom edge, then left edge */
.elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title::after,
.elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title a::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    opacity: 0;
    pointer-events: none;
    box-sizing: border-box;
    border-bottom: 2px solid #AED025;
    border-left: 2px solid #AED025;
    transition: width 0.15s ease-in 0.45s,
                height 0.15s ease-in 0.3s,
                opacity 0s linear 0.6s;
}

/* Draw clockwise from the top-left corner */
.elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title:hover::before,
.elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title a:hover::before,
.elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title a:focus-visible::before {
    width: 100%;
    height: 100%;
    opacity: 1;
    transition: width 0.15s ease-out 0s,
                height 0.15s ease-out 0.15s,
                opacity 0s linear 0s;
}

.elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title:hover::after,
.elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title a:hover::after,
.elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title a:focus-visible::after {
    width: 100%;
    height: 100%;
    opacity: 1;
    transition: width 0.15s ease-out 0.3s,
                height 0.15s ease-out 0.45s,
                opacity 0s linear 0.3s;
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
    .elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title::before,
    .elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title::after,
    .elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title a::before,
    .elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title a::after,
    .elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title:hover::before,
    .elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title:hover::after,
    .elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title a:hover::before,
    .elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title a:hover::after,
    .elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title a:focus-visible::before,
    .elementor-2728 .elementor-element.elementor-element-fcb7e62 .elementor-heading-title a:focus-visible::after {
        transition: none;
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9a9d717 *//* ===== HEADING — ANIMATED BORDER DRAW ON HOVER ===== */

/* Positioning context + breathing room for the box.
   Applies to the <a> when linked, the <h2> when not. */
.elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title,
.elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title a {
    position: relative;
    display: inline-block;
    padding: 10px 14px;
    text-decoration: none;
}

/* When a link exists, the <a> carries the padding — not the heading */
.elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title:has(a) {
    padding: 0;
}

/* Segments 1 & 2 — top edge, then right edge */
.elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title::before,
.elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    opacity: 0;
    pointer-events: none;
    box-sizing: border-box;
    border-top: 2px solid #AED025;
    border-right: 2px solid #AED025;
    transition: width 0.15s ease-in 0.15s,
                height 0.15s ease-in 0s,
                opacity 0s linear 0.3s;
}

/* Segments 3 & 4 — bottom edge, then left edge */
.elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title::after,
.elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title a::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    opacity: 0;
    pointer-events: none;
    box-sizing: border-box;
    border-bottom: 2px solid #AED025;
    border-left: 2px solid #AED025;
    transition: width 0.15s ease-in 0.45s,
                height 0.15s ease-in 0.3s,
                opacity 0s linear 0.6s;
}

/* Draw clockwise from the top-left corner */
.elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title:hover::before,
.elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title a:hover::before,
.elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title a:focus-visible::before {
    width: 100%;
    height: 100%;
    opacity: 1;
    transition: width 0.15s ease-out 0s,
                height 0.15s ease-out 0.15s,
                opacity 0s linear 0s;
}

.elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title:hover::after,
.elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title a:hover::after,
.elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title a:focus-visible::after {
    width: 100%;
    height: 100%;
    opacity: 1;
    transition: width 0.15s ease-out 0.3s,
                height 0.15s ease-out 0.45s,
                opacity 0s linear 0.3s;
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
    .elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title::before,
    .elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title::after,
    .elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title a::before,
    .elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title a::after,
    .elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title:hover::before,
    .elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title:hover::after,
    .elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title a:hover::before,
    .elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title a:hover::after,
    .elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title a:focus-visible::before,
    .elementor-2728 .elementor-element.elementor-element-9a9d717 .elementor-heading-title a:focus-visible::after {
        transition: none;
    }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-f5a82f4 */.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button {
    font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !important;
}
/* ===== BOOK EVENT — CIRCLING GRADIENT BORDER ===== */

.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background-color: transparent !important;
    z-index: 0;
}

/* The circling light — a conic gradient spun by transform */
.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 250%;
    aspect-ratio: 1;
    z-index: -2;
    background: conic-gradient(
        from 0deg,
        transparent 0deg,
        transparent 200deg,
        #AED025 280deg,
        #E4F79B 320deg,
        #AED025 340deg,
        transparent 360deg
    );
    animation: g14Spin 3s linear infinite;
}

/* Inner fill, inset 2px — leaves the ring visible as a border */
.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button::after {
    content: "";
    position: absolute;
    inset: 4px;
    z-index: -1;
    background-color: #18181B;
    transition: background-color 0.3s ease;
}

/* Keep label and arrow above both layers */
.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button .elementor-button-content-wrapper,
.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button .elementor-button-text,
.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button .elementor-button-icon {
    position: relative;
    z-index: 1;
}

/* Hover — native green fill, faster spin */
.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button:hover::after,
.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button:focus-visible::after {
    background-color: #AED025;
}

.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button:hover::before,
.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button:focus-visible::before {
    animation-duration: 1.2s;
}

@keyframes g14Spin {
    to { transform: translate(-50%, -50%) rotate(360deg); }
}

/* Starting position for the spin */
.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button::before {
    transform: translate(-50%, -50%) rotate(0deg);
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
    .elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button::before {
        animation: none;
        background: #AED025;
    }
}

/* Existing font override */
.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button {
    font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !important;
}
.elementor-2728 .elementor-element.elementor-element-f5a82f4 .elementor-button {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    vertical-align: top;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c6cc640 *//* 1. Base State: Transparent with smooth transitions */
.elementor-2728 .elementor-element.elementor-element-c6cc640 {
    background-color: transparent !important;
    border-bottom: 1px solid transparent !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* 2. Sticky State: Applies when you scroll past 50px */
.elementor-2728 .elementor-element.elementor-element-c6cc640.elementor-sticky--effects {
    /* 90% opacity background (change to rgba(24,24,27,0.9) for dark mode) */
    background-color: rgba(255, 255, 255, 0.9) !important;

    /* backdrop-blur-md effect */
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;

    /* border-b effect */
    border-bottom: 1px solid rgba(0, 0, 0, 0.1) !important;

    /* Triggers the slide-reveal animation */
    animation: stickyReveal 0.4s ease-out forwards;
}

/* 3. The Slide Reveal Animation */
@keyframes stickyReveal {
    0% {
        transform: translateY(-100%);
        opacity: 0;
    }
    100% {
        transform: translateY(0);
        opacity: 1;
    }
}

/* 4. Logo swap — white over transparent, dark once stuck */
.elementor-2728 .elementor-element.elementor-element-c6cc640 .elementor-element-32e7fe6 img {
    content: url("https://gallery14nyc.com/wp-content/uploads/2026/08/Gallery14-Logo-White-AED025.png");
}

.elementor-2728 .elementor-element.elementor-element-c6cc640.elementor-sticky--effects .elementor-element-32e7fe6 img {
    content: normal;
}/* End custom CSS */