.elementor-23 .elementor-element.elementor-element-f56f809{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-23 .elementor-element.elementor-element-f56f809:not(.elementor-motion-effects-element-type-background), .elementor-23 .elementor-element.elementor-element-f56f809 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#45403B;}.elementor-23 .elementor-element.elementor-element-81230e2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:50px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.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-23 .elementor-element.elementor-element-3b02b0a{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-23 .elementor-element.elementor-element-3b02b0a .elementor-heading-title{font-family:"Oswald", Sans-serif;font-size:60px;font-weight:700;text-transform:uppercase;color:var( --e-global-color-secondary );}.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-23 .elementor-element.elementor-element-92d8a63{margin:0px 348px calc(var(--kit-widget-spacing, 0px) + 40px) 348px;text-align:center;font-family:"Roboto", Sans-serif;font-size:18px;font-weight:300;color:#F9F8F6CC;}.elementor-23 .elementor-element.elementor-element-5765142{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:80px;--margin-bottom:80px;--margin-left:0px;--margin-right:0px;}.elementor-23 .elementor-element.elementor-element-2f564d7{--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;}.elementor-23 .elementor-element.elementor-element-d701400{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -30px) 0px;text-align:center;font-family:"Oswald", Sans-serif;font-size:16px;font-weight:400;text-transform:uppercase;line-height:1.5rem;letter-spacing:0.3em;color:#CC7A33;}.elementor-23 .elementor-element.elementor-element-584d48d{text-align:center;}.elementor-23 .elementor-element.elementor-element-584d48d .elementor-heading-title{font-family:"Oswald", Sans-serif;font-size:48px;font-weight:600;}.elementor-23 .elementor-element.elementor-element-7edbd7f{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--grid-auto-flow:row;}.elementor-23 .elementor-element.elementor-element-403221c{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:6px 6px 6px 6px;--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-widget-call-to-action .elementor-cta__title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-call-to-action .elementor-cta__description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-call-to-action .elementor-cta__button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-call-to-action .elementor-ribbon-inner{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-23 .elementor-element.elementor-element-2b4d7a2 .elementor-cta .elementor-cta__bg, .elementor-23 .elementor-element.elementor-element-2b4d7a2 .elementor-cta .elementor-cta__bg-overlay{transition-duration:1500ms;}.elementor-23 .elementor-element.elementor-element-2b4d7a2{border-radius:6px 6px 6px 6px;}.elementor-23 .elementor-element.elementor-element-2b4d7a2 .elementor-cta__content{text-align:start;padding:20px 20px 20px 20px;}.elementor-23 .elementor-element.elementor-element-2b4d7a2 .elementor-cta__title{font-family:"Oswald", Sans-serif;font-size:12px;font-weight:500;text-transform:uppercase;line-height:16px;letter-spacing:0.2em;color:#CC7A33;}.elementor-23 .elementor-element.elementor-element-2b4d7a2 .elementor-cta__description{font-family:"Oswald", Sans-serif;font-size:24px;font-weight:700;text-transform:uppercase;letter-spacing:0em;}.elementor-23 .elementor-element.elementor-element-5236614{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:6px 6px 6px 6px;--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-23 .elementor-element.elementor-element-4c512b2 .elementor-cta .elementor-cta__bg, .elementor-23 .elementor-element.elementor-element-4c512b2 .elementor-cta .elementor-cta__bg-overlay{transition-duration:1500ms;}.elementor-23 .elementor-element.elementor-element-4c512b2{border-radius:6px 6px 6px 6px;}.elementor-23 .elementor-element.elementor-element-4c512b2 .elementor-cta__content{text-align:start;padding:20px 20px 20px 20px;}.elementor-23 .elementor-element.elementor-element-4c512b2 .elementor-cta__title{font-family:"Oswald", Sans-serif;font-size:12px;font-weight:500;text-transform:uppercase;line-height:16px;letter-spacing:0.2em;color:var( --e-global-color-accent );}.elementor-23 .elementor-element.elementor-element-4c512b2 .elementor-cta__description{font-family:"Oswald", Sans-serif;font-size:24px;font-weight:700;text-transform:uppercase;letter-spacing:0em;}.elementor-23 .elementor-element.elementor-element-8ad03ce{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:6px 6px 6px 6px;--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-23 .elementor-element.elementor-element-4ed4f78 .elementor-cta .elementor-cta__bg, .elementor-23 .elementor-element.elementor-element-4ed4f78 .elementor-cta .elementor-cta__bg-overlay{transition-duration:1500ms;}.elementor-23 .elementor-element.elementor-element-4ed4f78{border-radius:6px 6px 6px 6px;}.elementor-23 .elementor-element.elementor-element-4ed4f78 .elementor-cta__content{text-align:start;padding:20px 20px 20px 20px;}.elementor-23 .elementor-element.elementor-element-4ed4f78 .elementor-cta__title{font-family:"Oswald", Sans-serif;font-size:12px;font-weight:500;text-transform:uppercase;line-height:16px;letter-spacing:0.2em;color:var( --e-global-color-accent );}.elementor-23 .elementor-element.elementor-element-4ed4f78 .elementor-cta__description{font-family:"Oswald", Sans-serif;font-size:24px;font-weight:700;text-transform:uppercase;letter-spacing:0em;}.elementor-23 .elementor-element.elementor-element-c936e65{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:6px 6px 6px 6px;--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-23 .elementor-element.elementor-element-56a48f9 .elementor-cta .elementor-cta__bg, .elementor-23 .elementor-element.elementor-element-56a48f9 .elementor-cta .elementor-cta__bg-overlay{transition-duration:1500ms;}.elementor-23 .elementor-element.elementor-element-56a48f9{border-radius:6px 6px 6px 6px;}.elementor-23 .elementor-element.elementor-element-56a48f9 .elementor-cta__content{text-align:start;padding:20px 20px 20px 20px;}.elementor-23 .elementor-element.elementor-element-56a48f9 .elementor-cta__title{font-family:"Oswald", Sans-serif;font-size:12px;font-weight:500;text-transform:uppercase;line-height:16px;letter-spacing:0.2em;color:var( --e-global-color-accent );}.elementor-23 .elementor-element.elementor-element-56a48f9 .elementor-cta__description{font-family:"Oswald", Sans-serif;font-size:24px;font-weight:700;text-transform:uppercase;letter-spacing:0em;}.elementor-23 .elementor-element.elementor-element-babfa68{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:6px 6px 6px 6px;--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-23 .elementor-element.elementor-element-51cd250 .elementor-cta .elementor-cta__bg, .elementor-23 .elementor-element.elementor-element-51cd250 .elementor-cta .elementor-cta__bg-overlay{transition-duration:1500ms;}.elementor-23 .elementor-element.elementor-element-51cd250{border-radius:6px 6px 6px 6px;}.elementor-23 .elementor-element.elementor-element-51cd250 .elementor-cta__content{text-align:start;padding:20px 20px 20px 20px;}.elementor-23 .elementor-element.elementor-element-51cd250 .elementor-cta__title{font-family:"Oswald", Sans-serif;font-size:12px;font-weight:500;text-transform:uppercase;line-height:16px;letter-spacing:0.2em;color:var( --e-global-color-accent );}.elementor-23 .elementor-element.elementor-element-51cd250 .elementor-cta__description{font-family:"Oswald", Sans-serif;font-size:24px;font-weight:700;text-transform:uppercase;letter-spacing:0em;}.elementor-23 .elementor-element.elementor-element-70210e4{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:6px 6px 6px 6px;--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-23 .elementor-element.elementor-element-f414d2b .elementor-cta .elementor-cta__bg, .elementor-23 .elementor-element.elementor-element-f414d2b .elementor-cta .elementor-cta__bg-overlay{transition-duration:1500ms;}.elementor-23 .elementor-element.elementor-element-f414d2b{border-radius:6px 6px 6px 6px;}.elementor-23 .elementor-element.elementor-element-f414d2b .elementor-cta__content{text-align:start;padding:20px 20px 20px 20px;}.elementor-23 .elementor-element.elementor-element-f414d2b .elementor-cta__title{font-family:"Oswald", Sans-serif;font-size:12px;font-weight:500;text-transform:uppercase;line-height:16px;letter-spacing:0.2em;color:var( --e-global-color-accent );}.elementor-23 .elementor-element.elementor-element-f414d2b .elementor-cta__description{font-family:"Oswald", Sans-serif;font-size:24px;font-weight:700;text-transform:uppercase;letter-spacing:0em;}.elementor-23 .elementor-element.elementor-element-da7b705{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:6px 6px 6px 6px;--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-23 .elementor-element.elementor-element-766a3a8 .elementor-cta .elementor-cta__bg, .elementor-23 .elementor-element.elementor-element-766a3a8 .elementor-cta .elementor-cta__bg-overlay{transition-duration:1500ms;}.elementor-23 .elementor-element.elementor-element-766a3a8{border-radius:6px 6px 6px 6px;}.elementor-23 .elementor-element.elementor-element-766a3a8 .elementor-cta__content{text-align:start;padding:20px 20px 20px 20px;}.elementor-23 .elementor-element.elementor-element-766a3a8 .elementor-cta__title{font-family:"Oswald", Sans-serif;font-size:12px;font-weight:500;text-transform:uppercase;line-height:16px;letter-spacing:0.2em;color:var( --e-global-color-accent );}.elementor-23 .elementor-element.elementor-element-766a3a8 .elementor-cta__description{font-family:"Oswald", Sans-serif;font-size:24px;font-weight:700;text-transform:uppercase;letter-spacing:0em;}.elementor-23 .elementor-element.elementor-element-bb09bfd{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:6px 6px 6px 6px;--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-23 .elementor-element.elementor-element-f9c042c .elementor-cta .elementor-cta__bg, .elementor-23 .elementor-element.elementor-element-f9c042c .elementor-cta .elementor-cta__bg-overlay{transition-duration:1500ms;}.elementor-23 .elementor-element.elementor-element-f9c042c{border-radius:6px 6px 6px 6px;}.elementor-23 .elementor-element.elementor-element-f9c042c .elementor-cta__content{text-align:start;padding:20px 20px 20px 20px;}.elementor-23 .elementor-element.elementor-element-f9c042c .elementor-cta__title{font-family:"Oswald", Sans-serif;font-size:12px;font-weight:500;text-transform:uppercase;line-height:16px;letter-spacing:0.2em;color:var( --e-global-color-accent );}.elementor-23 .elementor-element.elementor-element-f9c042c .elementor-cta__description{font-family:"Oswald", Sans-serif;font-size:24px;font-weight:700;text-transform:uppercase;letter-spacing:0em;}.elementor-23 .elementor-element.elementor-element-bb89355{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:6px 6px 6px 6px;--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-23 .elementor-element.elementor-element-9c8425a .elementor-cta .elementor-cta__bg, .elementor-23 .elementor-element.elementor-element-9c8425a .elementor-cta .elementor-cta__bg-overlay{transition-duration:1500ms;}.elementor-23 .elementor-element.elementor-element-9c8425a{border-radius:6px 6px 6px 6px;}.elementor-23 .elementor-element.elementor-element-9c8425a .elementor-cta__content{text-align:start;padding:20px 20px 20px 20px;}.elementor-23 .elementor-element.elementor-element-9c8425a .elementor-cta__title{font-family:"Oswald", Sans-serif;font-size:12px;font-weight:500;text-transform:uppercase;line-height:16px;letter-spacing:0.2em;color:var( --e-global-color-accent );}.elementor-23 .elementor-element.elementor-element-9c8425a .elementor-cta__description{font-family:"Oswald", Sans-serif;font-size:24px;font-weight:700;text-transform:uppercase;letter-spacing:0em;}.elementor-23 .elementor-element.elementor-element-ce7e47f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-23 .elementor-element.elementor-element-ce7e47f:not(.elementor-motion-effects-element-type-background), .elementor-23 .elementor-element.elementor-element-ce7e47f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#CC7A33;}.elementor-23 .elementor-element.elementor-element-c8daa3d{--display:flex;--margin-top:50px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.elementor-23 .elementor-element.elementor-element-f9a0e1f{text-align:center;}.elementor-23 .elementor-element.elementor-element-f9a0e1f .elementor-heading-title{font-family:"Oswald", Sans-serif;font-size:48px;font-weight:600;color:var( --e-global-color-secondary );}.elementor-23 .elementor-element.elementor-element-bc21dd1{margin:0px 348px calc(var(--kit-widget-spacing, 0px) + 0px) 348px;text-align:center;font-family:"Roboto", Sans-serif;font-size:18px;font-weight:600;color:#FFFFFF;}.elementor-23 .elementor-element.elementor-element-1beddab{--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;--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-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-23 .elementor-element.elementor-element-2d018aa .elementor-button{background-color:#45403B;font-family:"Oswald", Sans-serif;font-size:14px;font-weight:500;text-transform:uppercase;line-height:20px;letter-spacing:0.15em;border-radius:6px 6px 6px 6px;padding:16px 32px 16px 32px;}.elementor-23 .elementor-element.elementor-element-2d018aa .elementor-button:hover, .elementor-23 .elementor-element.elementor-element-2d018aa .elementor-button:focus{background-color:#45403BEE;}.elementor-23 .elementor-element.elementor-element-2d018aa{width:auto;max-width:auto;}@media(max-width:1366px){.elementor-23 .elementor-element.elementor-element-3b02b0a .elementor-heading-title{font-size:60px;}.elementor-23 .elementor-element.elementor-element-92d8a63{margin:0px 160px calc(var(--kit-widget-spacing, 0px) + 40px) 160px;}.elementor-23 .elementor-element.elementor-element-7edbd7f{--grid-auto-flow:row;}.elementor-23 .elementor-element.elementor-element-bc21dd1{margin:0px 160px calc(var(--kit-widget-spacing, 0px) + 40px) 160px;}}@media(max-width:1200px){.elementor-23 .elementor-element.elementor-element-3b02b0a .elementor-heading-title{font-size:48px;}.elementor-23 .elementor-element.elementor-element-7edbd7f{--grid-auto-flow:row;}}@media(max-width:1023px){.elementor-23 .elementor-element.elementor-element-3b02b0a .elementor-heading-title{font-size:36px;line-height:2.5rem;}.elementor-23 .elementor-element.elementor-element-92d8a63{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-23 .elementor-element.elementor-element-5765142{--margin-top:50px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.elementor-23 .elementor-element.elementor-element-584d48d{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 30px) 0px;}.elementor-23 .elementor-element.elementor-element-7edbd7f{--e-con-grid-template-columns:repeat(2, 1fr);--gap:20px 20px;--row-gap:20px;--column-gap:20px;--grid-auto-flow:row;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-23 .elementor-element.elementor-element-2b4d7a2 .elementor-cta__content{padding:10px 10px 10px 10px;}.elementor-23 .elementor-element.elementor-element-4c512b2 .elementor-cta__content{padding:10px 10px 10px 10px;}.elementor-23 .elementor-element.elementor-element-4ed4f78 .elementor-cta__content{padding:10px 10px 10px 10px;}.elementor-23 .elementor-element.elementor-element-56a48f9 .elementor-cta__content{padding:10px 10px 10px 10px;}.elementor-23 .elementor-element.elementor-element-51cd250 .elementor-cta__content{padding:10px 10px 10px 10px;}.elementor-23 .elementor-element.elementor-element-f414d2b .elementor-cta__content{padding:10px 10px 10px 10px;}.elementor-23 .elementor-element.elementor-element-766a3a8 .elementor-cta__content{padding:10px 10px 10px 10px;}.elementor-23 .elementor-element.elementor-element-f9c042c .elementor-cta__content{padding:10px 10px 10px 10px;}.elementor-23 .elementor-element.elementor-element-9c8425a .elementor-cta__content{padding:10px 10px 10px 10px;}.elementor-23 .elementor-element.elementor-element-c8daa3d{--margin-top:50px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.elementor-23 .elementor-element.elementor-element-bc21dd1{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}}@media(max-width:767px){.elementor-23 .elementor-element.elementor-element-3b02b0a{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-23 .elementor-element.elementor-element-3b02b0a .elementor-heading-title{font-size:36px;}.elementor-23 .elementor-element.elementor-element-92d8a63{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-size:18px;}.elementor-23 .elementor-element.elementor-element-d701400{font-size:14px;}.elementor-23 .elementor-element.elementor-element-7edbd7f{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-23 .elementor-element.elementor-element-bc21dd1{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-size:18px;}}@media(max-width:480px){.elementor-23 .elementor-element.elementor-element-7edbd7f{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for call-to-action, class: .elementor-element-2b4d7a2 *//* 1. Base Container & Aspect Ratio */
.elementor-23 .elementor-element.elementor-element-2b4d7a2,
.elementor-23 .elementor-element.elementor-element-2b4d7a2 .elementor-widget-container {
    width: 100%;
}

.elementor-23 .elementor-element.elementor-element-2b4d7a2 .elementor-cta {
    width: 100%;
    aspect-ratio: 4 / 3;
    height: auto;
    min-height: 300px;
    border-radius: 0.75rem; 
    overflow: hidden;
    border: none;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    transition: box-shadow 0.3s ease;
}

/* Base Hover & Tap Shadow */
.elementor-23 .elementor-element.elementor-element-2b4d7a2:hover .elementor-cta,
.elementor-23 .elementor-element.elementor-element-2b4d7a2:active .elementor-cta {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}

/* 2. Image Background & Hover/Tap Zoom */
.elementor-23 .elementor-element.elementor-element-2b4d7a2 .elementor-cta__bg {
    transition: transform 0.7s ease !important;
    background-size: cover; 
    background-position: center;
    will-change: transform; 
}

.elementor-23 .elementor-element.elementor-element-2b4d7a2:hover .elementor-cta__bg,
.elementor-23 .elementor-element.elementor-element-2b4d7a2:active .elementor-cta__bg {
    transform: scale(1.1) !important;
}

/* 3. Gradient Overlay */
.elementor-23 .elementor-element.elementor-element-2b4d7a2 .elementor-cta__bg-wrapper::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.1) 70%, transparent 100%);
    opacity: 0 !important;
    transition: opacity 0.3s ease !important;
    z-index: 5; 
    pointer-events: none; 
}

.elementor-23 .elementor-element.elementor-element-2b4d7a2:hover .elementor-cta__bg-wrapper::after,
.elementor-23 .elementor-element.elementor-element-2b4d7a2:active .elementor-cta__bg-wrapper::after {
    opacity: 1 !important;
}

/* 4. Text Content & Slide-Up */
.elementor-23 .elementor-element.elementor-element-2b4d7a2 .elementor-cta__content {
    position: absolute;
    inset: 0;
    z-index: 10; 
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 1.5rem;
    opacity: 0 !important;
    transform: translateY(2rem) !important;
    transition: opacity 0.3s ease, transform 0.3s ease !important; 
}

.elementor-23 .elementor-element.elementor-element-2b4d7a2:hover .elementor-cta__content,
.elementor-23 .elementor-element.elementor-element-2b4d7a2:active .elementor-cta__content {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

/* 5. Typography */
.elementor-23 .elementor-element.elementor-element-2b4d7a2 .elementor-cta__title {
    font-size: 0.75rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
    color: #cc7a33 !important; 
}

.elementor-23 .elementor-element.elementor-element-2b4d7a2 .elementor-cta__description {
    font-size: 1.25rem; 
    font-weight: 700;
    text-transform: uppercase;
    color: #ffffff;
    margin: 0;
}/* End custom CSS */
/* Start custom CSS for call-to-action, class: .elementor-element-4c512b2 *//* 1. Base Container & Aspect Ratio */
.elementor-23 .elementor-element.elementor-element-4c512b2,
.elementor-23 .elementor-element.elementor-element-4c512b2 .elementor-widget-container {
    width: 100%;
}

.elementor-23 .elementor-element.elementor-element-4c512b2 .elementor-cta {
    width: 100%;
    aspect-ratio: 4 / 3;
    height: auto;
    min-height: 300px;
    border-radius: 0.75rem; 
    overflow: hidden;
    border: none;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    transition: box-shadow 0.3s ease;
}

/* Base Hover & Tap Shadow */
.elementor-23 .elementor-element.elementor-element-4c512b2:hover .elementor-cta,
.elementor-23 .elementor-element.elementor-element-4c512b2:active .elementor-cta {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}

/* 2. Image Background & Hover/Tap Zoom */
.elementor-23 .elementor-element.elementor-element-4c512b2 .elementor-cta__bg {
    transition: transform 0.7s ease !important;
    background-size: cover; 
    background-position: center;
    will-change: transform; 
}

.elementor-23 .elementor-element.elementor-element-4c512b2:hover .elementor-cta__bg,
.elementor-23 .elementor-element.elementor-element-4c512b2:active .elementor-cta__bg {
    transform: scale(1.1) !important;
}

/* 3. Gradient Overlay */
.elementor-23 .elementor-element.elementor-element-4c512b2 .elementor-cta__bg-wrapper::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.1) 70%, transparent 100%);
    opacity: 0 !important;
    transition: opacity 0.3s ease !important;
    z-index: 5; 
    pointer-events: none; 
}

.elementor-23 .elementor-element.elementor-element-4c512b2:hover .elementor-cta__bg-wrapper::after,
.elementor-23 .elementor-element.elementor-element-4c512b2:active .elementor-cta__bg-wrapper::after {
    opacity: 1 !important;
}

/* 4. Text Content & Slide-Up */
.elementor-23 .elementor-element.elementor-element-4c512b2 .elementor-cta__content {
    position: absolute;
    inset: 0;
    z-index: 10; 
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 1.5rem;
    opacity: 0 !important;
    transform: translateY(2rem) !important;
    transition: opacity 0.3s ease, transform 0.3s ease !important; 
}

.elementor-23 .elementor-element.elementor-element-4c512b2:hover .elementor-cta__content,
.elementor-23 .elementor-element.elementor-element-4c512b2:active .elementor-cta__content {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

/* 5. Typography */
.elementor-23 .elementor-element.elementor-element-4c512b2 .elementor-cta__title {
    font-size: 0.75rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
    color: #cc7a33 !important; 
}

.elementor-23 .elementor-element.elementor-element-4c512b2 .elementor-cta__description {
    font-size: 1.25rem; 
    font-weight: 700;
    text-transform: uppercase;
    color: #ffffff;
    margin: 0;
}/* End custom CSS */
/* Start custom CSS for call-to-action, class: .elementor-element-4ed4f78 *//* 1. Base Container & Aspect Ratio */
.elementor-23 .elementor-element.elementor-element-4ed4f78,
.elementor-23 .elementor-element.elementor-element-4ed4f78 .elementor-widget-container {
    width: 100%;
}

.elementor-23 .elementor-element.elementor-element-4ed4f78 .elementor-cta {
    width: 100%;
    aspect-ratio: 4 / 3;
    height: auto;
    min-height: 300px;
    border-radius: 0.75rem; 
    overflow: hidden;
    border: none;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    transition: box-shadow 0.3s ease;
}

/* Base Hover & Tap Shadow */
.elementor-23 .elementor-element.elementor-element-4ed4f78:hover .elementor-cta,
.elementor-23 .elementor-element.elementor-element-4ed4f78:active .elementor-cta {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}

/* 2. Image Background & Hover/Tap Zoom */
.elementor-23 .elementor-element.elementor-element-4ed4f78 .elementor-cta__bg {
    transition: transform 0.7s ease !important;
    background-size: cover; 
    background-position: center;
    will-change: transform; 
}

.elementor-23 .elementor-element.elementor-element-4ed4f78:hover .elementor-cta__bg,
.elementor-23 .elementor-element.elementor-element-4ed4f78:active .elementor-cta__bg {
    transform: scale(1.1) !important;
}

/* 3. Gradient Overlay */
.elementor-23 .elementor-element.elementor-element-4ed4f78 .elementor-cta__bg-wrapper::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.1) 70%, transparent 100%);
    opacity: 0 !important;
    transition: opacity 0.3s ease !important;
    z-index: 5; 
    pointer-events: none; 
}

.elementor-23 .elementor-element.elementor-element-4ed4f78:hover .elementor-cta__bg-wrapper::after,
.elementor-23 .elementor-element.elementor-element-4ed4f78:active .elementor-cta__bg-wrapper::after {
    opacity: 1 !important;
}

/* 4. Text Content & Slide-Up */
.elementor-23 .elementor-element.elementor-element-4ed4f78 .elementor-cta__content {
    position: absolute;
    inset: 0;
    z-index: 10; 
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 1.5rem;
    opacity: 0 !important;
    transform: translateY(2rem) !important;
    transition: opacity 0.3s ease, transform 0.3s ease !important; 
}

.elementor-23 .elementor-element.elementor-element-4ed4f78:hover .elementor-cta__content,
.elementor-23 .elementor-element.elementor-element-4ed4f78:active .elementor-cta__content {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

/* 5. Typography */
.elementor-23 .elementor-element.elementor-element-4ed4f78 .elementor-cta__title {
    font-size: 0.75rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
    color: #cc7a33 !important; 
}

.elementor-23 .elementor-element.elementor-element-4ed4f78 .elementor-cta__description {
    font-size: 1.25rem; 
    font-weight: 700;
    text-transform: uppercase;
    color: #ffffff;
    margin: 0;
}/* End custom CSS */
/* Start custom CSS for call-to-action, class: .elementor-element-56a48f9 *//* 1. Base Container & Aspect Ratio */
.elementor-23 .elementor-element.elementor-element-56a48f9,
.elementor-23 .elementor-element.elementor-element-56a48f9 .elementor-widget-container {
    width: 100%;
}

.elementor-23 .elementor-element.elementor-element-56a48f9 .elementor-cta {
    width: 100%;
    aspect-ratio: 4 / 3;
    height: auto;
    min-height: 300px;
    border-radius: 0.75rem; 
    overflow: hidden;
    border: none;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    transition: box-shadow 0.3s ease;
}

/* Base Hover & Tap Shadow */
.elementor-23 .elementor-element.elementor-element-56a48f9:hover .elementor-cta,
.elementor-23 .elementor-element.elementor-element-56a48f9:active .elementor-cta {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}

/* 2. Image Background & Hover/Tap Zoom */
.elementor-23 .elementor-element.elementor-element-56a48f9 .elementor-cta__bg {
    transition: transform 0.7s ease !important;
    background-size: cover; 
    background-position: center;
    will-change: transform; 
}

.elementor-23 .elementor-element.elementor-element-56a48f9:hover .elementor-cta__bg,
.elementor-23 .elementor-element.elementor-element-56a48f9:active .elementor-cta__bg {
    transform: scale(1.1) !important;
}

/* 3. Gradient Overlay */
.elementor-23 .elementor-element.elementor-element-56a48f9 .elementor-cta__bg-wrapper::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.1) 70%, transparent 100%);
    opacity: 0 !important;
    transition: opacity 0.3s ease !important;
    z-index: 5; 
    pointer-events: none; 
}

.elementor-23 .elementor-element.elementor-element-56a48f9:hover .elementor-cta__bg-wrapper::after,
.elementor-23 .elementor-element.elementor-element-56a48f9:active .elementor-cta__bg-wrapper::after {
    opacity: 1 !important;
}

/* 4. Text Content & Slide-Up */
.elementor-23 .elementor-element.elementor-element-56a48f9 .elementor-cta__content {
    position: absolute;
    inset: 0;
    z-index: 10; 
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 1.5rem;
    opacity: 0 !important;
    transform: translateY(2rem) !important;
    transition: opacity 0.3s ease, transform 0.3s ease !important; 
}

.elementor-23 .elementor-element.elementor-element-56a48f9:hover .elementor-cta__content,
.elementor-23 .elementor-element.elementor-element-56a48f9:active .elementor-cta__content {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

/* 5. Typography */
.elementor-23 .elementor-element.elementor-element-56a48f9 .elementor-cta__title {
    font-size: 0.75rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
    color: #cc7a33 !important; 
}

.elementor-23 .elementor-element.elementor-element-56a48f9 .elementor-cta__description {
    font-size: 1.25rem; 
    font-weight: 700;
    text-transform: uppercase;
    color: #ffffff;
    margin: 0;
}/* End custom CSS */
/* Start custom CSS for call-to-action, class: .elementor-element-51cd250 *//* 1. Base Container & Aspect Ratio */
.elementor-23 .elementor-element.elementor-element-51cd250,
.elementor-23 .elementor-element.elementor-element-51cd250 .elementor-widget-container {
    width: 100%;
}

.elementor-23 .elementor-element.elementor-element-51cd250 .elementor-cta {
    width: 100%;
    aspect-ratio: 4 / 3;
    height: auto;
    min-height: 300px;
    border-radius: 0.75rem; 
    overflow: hidden;
    border: none;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    transition: box-shadow 0.3s ease;
}

/* Base Hover & Tap Shadow */
.elementor-23 .elementor-element.elementor-element-51cd250:hover .elementor-cta,
.elementor-23 .elementor-element.elementor-element-51cd250:active .elementor-cta {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}

/* 2. Image Background & Hover/Tap Zoom */
.elementor-23 .elementor-element.elementor-element-51cd250 .elementor-cta__bg {
    transition: transform 0.7s ease !important;
    background-size: cover; 
    background-position: center;
    will-change: transform; 
}

.elementor-23 .elementor-element.elementor-element-51cd250:hover .elementor-cta__bg,
.elementor-23 .elementor-element.elementor-element-51cd250:active .elementor-cta__bg {
    transform: scale(1.1) !important;
}

/* 3. Gradient Overlay */
.elementor-23 .elementor-element.elementor-element-51cd250 .elementor-cta__bg-wrapper::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.1) 70%, transparent 100%);
    opacity: 0 !important;
    transition: opacity 0.3s ease !important;
    z-index: 5; 
    pointer-events: none; 
}

.elementor-23 .elementor-element.elementor-element-51cd250:hover .elementor-cta__bg-wrapper::after,
.elementor-23 .elementor-element.elementor-element-51cd250:active .elementor-cta__bg-wrapper::after {
    opacity: 1 !important;
}

/* 4. Text Content & Slide-Up */
.elementor-23 .elementor-element.elementor-element-51cd250 .elementor-cta__content {
    position: absolute;
    inset: 0;
    z-index: 10; 
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 1.5rem;
    opacity: 0 !important;
    transform: translateY(2rem) !important;
    transition: opacity 0.3s ease, transform 0.3s ease !important; 
}

.elementor-23 .elementor-element.elementor-element-51cd250:hover .elementor-cta__content,
.elementor-23 .elementor-element.elementor-element-51cd250:active .elementor-cta__content {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

/* 5. Typography */
.elementor-23 .elementor-element.elementor-element-51cd250 .elementor-cta__title {
    font-size: 0.75rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
    color: #cc7a33 !important; 
}

.elementor-23 .elementor-element.elementor-element-51cd250 .elementor-cta__description {
    font-size: 1.25rem; 
    font-weight: 700;
    text-transform: uppercase;
    color: #ffffff;
    margin: 0;
}/* End custom CSS */
/* Start custom CSS for call-to-action, class: .elementor-element-f414d2b *//* 1. Base Container & Aspect Ratio */
.elementor-23 .elementor-element.elementor-element-f414d2b,
.elementor-23 .elementor-element.elementor-element-f414d2b .elementor-widget-container {
    width: 100%;
}

.elementor-23 .elementor-element.elementor-element-f414d2b .elementor-cta {
    width: 100%;
    aspect-ratio: 4 / 3;
    height: auto;
    min-height: 300px;
    border-radius: 0.75rem; 
    overflow: hidden;
    border: none;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    transition: box-shadow 0.3s ease;
}

/* Base Hover & Tap Shadow */
.elementor-23 .elementor-element.elementor-element-f414d2b:hover .elementor-cta,
.elementor-23 .elementor-element.elementor-element-f414d2b:active .elementor-cta {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}

/* 2. Image Background & Hover/Tap Zoom */
.elementor-23 .elementor-element.elementor-element-f414d2b .elementor-cta__bg {
    transition: transform 0.7s ease !important;
    background-size: cover; 
    background-position: center;
    will-change: transform; 
}

.elementor-23 .elementor-element.elementor-element-f414d2b:hover .elementor-cta__bg,
.elementor-23 .elementor-element.elementor-element-f414d2b:active .elementor-cta__bg {
    transform: scale(1.1) !important;
}

/* 3. Gradient Overlay */
.elementor-23 .elementor-element.elementor-element-f414d2b .elementor-cta__bg-wrapper::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.1) 70%, transparent 100%);
    opacity: 0 !important;
    transition: opacity 0.3s ease !important;
    z-index: 5; 
    pointer-events: none; 
}

.elementor-23 .elementor-element.elementor-element-f414d2b:hover .elementor-cta__bg-wrapper::after,
.elementor-23 .elementor-element.elementor-element-f414d2b:active .elementor-cta__bg-wrapper::after {
    opacity: 1 !important;
}

/* 4. Text Content & Slide-Up */
.elementor-23 .elementor-element.elementor-element-f414d2b .elementor-cta__content {
    position: absolute;
    inset: 0;
    z-index: 10; 
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 1.5rem;
    opacity: 0 !important;
    transform: translateY(2rem) !important;
    transition: opacity 0.3s ease, transform 0.3s ease !important; 
}

.elementor-23 .elementor-element.elementor-element-f414d2b:hover .elementor-cta__content,
.elementor-23 .elementor-element.elementor-element-f414d2b:active .elementor-cta__content {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

/* 5. Typography */
.elementor-23 .elementor-element.elementor-element-f414d2b .elementor-cta__title {
    font-size: 0.75rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
    color: #cc7a33 !important; 
}

.elementor-23 .elementor-element.elementor-element-f414d2b .elementor-cta__description {
    font-size: 1.25rem; 
    font-weight: 700;
    text-transform: uppercase;
    color: #ffffff;
    margin: 0;
}/* End custom CSS */
/* Start custom CSS for call-to-action, class: .elementor-element-766a3a8 *//* 1. Base Container & Aspect Ratio */
.elementor-23 .elementor-element.elementor-element-766a3a8,
.elementor-23 .elementor-element.elementor-element-766a3a8 .elementor-widget-container {
    width: 100%;
}

.elementor-23 .elementor-element.elementor-element-766a3a8 .elementor-cta {
    width: 100%;
    aspect-ratio: 4 / 3;
    height: auto;
    min-height: 300px;
    border-radius: 0.75rem; 
    overflow: hidden;
    border: none;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    transition: box-shadow 0.3s ease;
}

/* Base Hover & Tap Shadow */
.elementor-23 .elementor-element.elementor-element-766a3a8:hover .elementor-cta,
.elementor-23 .elementor-element.elementor-element-766a3a8:active .elementor-cta {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}

/* 2. Image Background & Hover/Tap Zoom */
.elementor-23 .elementor-element.elementor-element-766a3a8 .elementor-cta__bg {
    transition: transform 0.7s ease !important;
    background-size: cover; 
    background-position: center;
    will-change: transform; 
}

.elementor-23 .elementor-element.elementor-element-766a3a8:hover .elementor-cta__bg,
.elementor-23 .elementor-element.elementor-element-766a3a8:active .elementor-cta__bg {
    transform: scale(1.1) !important;
}

/* 3. Gradient Overlay */
.elementor-23 .elementor-element.elementor-element-766a3a8 .elementor-cta__bg-wrapper::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.1) 70%, transparent 100%);
    opacity: 0 !important;
    transition: opacity 0.3s ease !important;
    z-index: 5; 
    pointer-events: none; 
}

.elementor-23 .elementor-element.elementor-element-766a3a8:hover .elementor-cta__bg-wrapper::after,
.elementor-23 .elementor-element.elementor-element-766a3a8:active .elementor-cta__bg-wrapper::after {
    opacity: 1 !important;
}

/* 4. Text Content & Slide-Up */
.elementor-23 .elementor-element.elementor-element-766a3a8 .elementor-cta__content {
    position: absolute;
    inset: 0;
    z-index: 10; 
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 1.5rem;
    opacity: 0 !important;
    transform: translateY(2rem) !important;
    transition: opacity 0.3s ease, transform 0.3s ease !important; 
}

.elementor-23 .elementor-element.elementor-element-766a3a8:hover .elementor-cta__content,
.elementor-23 .elementor-element.elementor-element-766a3a8:active .elementor-cta__content {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

/* 5. Typography */
.elementor-23 .elementor-element.elementor-element-766a3a8 .elementor-cta__title {
    font-size: 0.75rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
    color: #cc7a33 !important; 
}

.elementor-23 .elementor-element.elementor-element-766a3a8 .elementor-cta__description {
    font-size: 1.25rem; 
    font-weight: 700;
    text-transform: uppercase;
    color: #ffffff;
    margin: 0;
}/* End custom CSS */
/* Start custom CSS for call-to-action, class: .elementor-element-f9c042c *//* 1. Base Container & Aspect Ratio */
.elementor-23 .elementor-element.elementor-element-f9c042c,
.elementor-23 .elementor-element.elementor-element-f9c042c .elementor-widget-container {
    width: 100%;
}

.elementor-23 .elementor-element.elementor-element-f9c042c .elementor-cta {
    width: 100%;
    aspect-ratio: 4 / 3;
    height: auto;
    min-height: 300px;
    border-radius: 0.75rem; 
    overflow: hidden;
    border: none;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    transition: box-shadow 0.3s ease;
}

/* Base Hover & Tap Shadow */
.elementor-23 .elementor-element.elementor-element-f9c042c:hover .elementor-cta,
.elementor-23 .elementor-element.elementor-element-f9c042c:active .elementor-cta {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}

/* 2. Image Background & Hover/Tap Zoom */
.elementor-23 .elementor-element.elementor-element-f9c042c .elementor-cta__bg {
    transition: transform 0.7s ease !important;
    background-size: cover; 
    background-position: center;
    will-change: transform; 
}

.elementor-23 .elementor-element.elementor-element-f9c042c:hover .elementor-cta__bg,
.elementor-23 .elementor-element.elementor-element-f9c042c:active .elementor-cta__bg {
    transform: scale(1.1) !important;
}

/* 3. Gradient Overlay */
.elementor-23 .elementor-element.elementor-element-f9c042c .elementor-cta__bg-wrapper::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.1) 70%, transparent 100%);
    opacity: 0 !important;
    transition: opacity 0.3s ease !important;
    z-index: 5; 
    pointer-events: none; 
}

.elementor-23 .elementor-element.elementor-element-f9c042c:hover .elementor-cta__bg-wrapper::after,
.elementor-23 .elementor-element.elementor-element-f9c042c:active .elementor-cta__bg-wrapper::after {
    opacity: 1 !important;
}

/* 4. Text Content & Slide-Up */
.elementor-23 .elementor-element.elementor-element-f9c042c .elementor-cta__content {
    position: absolute;
    inset: 0;
    z-index: 10; 
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 1.5rem;
    opacity: 0 !important;
    transform: translateY(2rem) !important;
    transition: opacity 0.3s ease, transform 0.3s ease !important; 
}

.elementor-23 .elementor-element.elementor-element-f9c042c:hover .elementor-cta__content,
.elementor-23 .elementor-element.elementor-element-f9c042c:active .elementor-cta__content {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

/* 5. Typography */
.elementor-23 .elementor-element.elementor-element-f9c042c .elementor-cta__title {
    font-size: 0.75rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
    color: #cc7a33 !important; 
}

.elementor-23 .elementor-element.elementor-element-f9c042c .elementor-cta__description {
    font-size: 1.25rem; 
    font-weight: 700;
    text-transform: uppercase;
    color: #ffffff;
    margin: 0;
}/* End custom CSS */
/* Start custom CSS for call-to-action, class: .elementor-element-9c8425a *//* 1. Base Container & Aspect Ratio */
.elementor-23 .elementor-element.elementor-element-9c8425a,
.elementor-23 .elementor-element.elementor-element-9c8425a .elementor-widget-container {
    width: 100%;
}

.elementor-23 .elementor-element.elementor-element-9c8425a .elementor-cta {
    width: 100%;
    aspect-ratio: 4 / 3;
    height: auto;
    min-height: 300px;
    border-radius: 0.75rem; 
    overflow: hidden;
    border: none;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    transition: box-shadow 0.3s ease;
}

/* Base Hover & Tap Shadow */
.elementor-23 .elementor-element.elementor-element-9c8425a:hover .elementor-cta,
.elementor-23 .elementor-element.elementor-element-9c8425a:active .elementor-cta {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}

/* 2. Image Background & Hover/Tap Zoom */
.elementor-23 .elementor-element.elementor-element-9c8425a .elementor-cta__bg {
    transition: transform 0.7s ease !important;
    background-size: cover; 
    background-position: center;
    will-change: transform; 
}

.elementor-23 .elementor-element.elementor-element-9c8425a:hover .elementor-cta__bg,
.elementor-23 .elementor-element.elementor-element-9c8425a:active .elementor-cta__bg {
    transform: scale(1.1) !important;
}

/* 3. Gradient Overlay */
.elementor-23 .elementor-element.elementor-element-9c8425a .elementor-cta__bg-wrapper::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.1) 70%, transparent 100%);
    opacity: 0 !important;
    transition: opacity 0.3s ease !important;
    z-index: 5; 
    pointer-events: none; 
}

.elementor-23 .elementor-element.elementor-element-9c8425a:hover .elementor-cta__bg-wrapper::after,
.elementor-23 .elementor-element.elementor-element-9c8425a:active .elementor-cta__bg-wrapper::after {
    opacity: 1 !important;
}

/* 4. Text Content & Slide-Up */
.elementor-23 .elementor-element.elementor-element-9c8425a .elementor-cta__content {
    position: absolute;
    inset: 0;
    z-index: 10; 
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 1.5rem;
    opacity: 0 !important;
    transform: translateY(2rem) !important;
    transition: opacity 0.3s ease, transform 0.3s ease !important; 
}

.elementor-23 .elementor-element.elementor-element-9c8425a:hover .elementor-cta__content,
.elementor-23 .elementor-element.elementor-element-9c8425a:active .elementor-cta__content {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

/* 5. Typography */
.elementor-23 .elementor-element.elementor-element-9c8425a .elementor-cta__title {
    font-size: 0.75rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
    color: #cc7a33 !important; 
}

.elementor-23 .elementor-element.elementor-element-9c8425a .elementor-cta__description {
    font-size: 1.25rem; 
    font-weight: 700;
    text-transform: uppercase;
    color: #ffffff;
    margin: 0;
}/* End custom CSS */