.elementor-2881 .elementor-element.elementor-element-41fb10a{--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:64px 64px;--row-gap:64px;--column-gap:64px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:32px;--padding-left:64px;--padding-right:64px;}.elementor-2881 .elementor-element.elementor-element-dd580f6{--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;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2881 .elementor-element.elementor-element-45bd402 .elementor-heading-title{font-family:var( --e-global-typography-aedebd8-font-family ), system;font-size:var( --e-global-typography-aedebd8-font-size );font-weight:var( --e-global-typography-aedebd8-font-weight );line-height:var( --e-global-typography-aedebd8-line-height );color:var( --e-global-color-text );}.elementor-2881 .elementor-element.elementor-element-e044d4d{font-family:var( --e-global-typography-text-font-family ), system;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-2881 .elementor-element.elementor-element-944ae09 p{margin-block-end:8px;}.elementor-2881 .elementor-element.elementor-element-dbed88d .elementor-button{background-color:var( --e-global-color-primary );fill:var( --e-global-color-text );color:var( --e-global-color-text );transition-duration:100ms;}.elementor-2881 .elementor-element.elementor-element-dbed88d .elementor-button:hover, .elementor-2881 .elementor-element.elementor-element-dbed88d .elementor-button:focus{background-color:var( --e-global-color-secondary );color:var( --e-global-color-accent );border-color:var( --e-global-color-secondary );}.elementor-2881 .elementor-element.elementor-element-dbed88d .elementor-button:hover svg, .elementor-2881 .elementor-element.elementor-element-dbed88d .elementor-button:focus svg{fill:var( --e-global-color-accent );}.elementor-2881 .elementor-element.elementor-element-df8e39e{--display:flex;--justify-content:center;border-style:none;--border-style:none;--border-radius:0px 0px 0px 0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2881 .elementor-element.elementor-element-3809ce7 img{width:100%;}@media(max-width:1024px){.elementor-2881 .elementor-element.elementor-element-41fb10a{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:32px 32px;--row-gap:32px;--column-gap:32px;--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.elementor-2881 .elementor-element.elementor-element-dd580f6{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2881 .elementor-element.elementor-element-45bd402 .elementor-heading-title{font-size:var( --e-global-typography-aedebd8-font-size );line-height:var( --e-global-typography-aedebd8-line-height );}.elementor-2881 .elementor-element.elementor-element-e044d4d{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:767px){.elementor-2881 .elementor-element.elementor-element-41fb10a{--padding-top:32px;--padding-bottom:32px;--padding-left:16px;--padding-right:16px;}.elementor-2881 .elementor-element.elementor-element-dd580f6{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2881 .elementor-element.elementor-element-45bd402 .elementor-heading-title{font-size:var( --e-global-typography-aedebd8-font-size );line-height:var( --e-global-typography-aedebd8-line-height );}.elementor-2881 .elementor-element.elementor-element-e044d4d{font-size:var( --e-global-typography-text-font-size );}}@media(min-width:768px){.elementor-2881 .elementor-element.elementor-element-dd580f6{--width:55%;}.elementor-2881 .elementor-element.elementor-element-df8e39e{--width:45%;}}@media(max-width:1024px) and (min-width:768px){.elementor-2881 .elementor-element.elementor-element-dd580f6{--width:100%;}.elementor-2881 .elementor-element.elementor-element-df8e39e{--width:100%;}}/* Start custom CSS for heading, class: .elementor-element-45bd402 */.elementor-2881 .elementor-element.elementor-element-45bd402 { text-wrap: balance; }/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-3809ce7 *//* Make the image area a square that scales with its width */
.hero-square{
  aspect-ratio: 1 / 1;
  width: 100%;
  overflow: hidden; /* keeps rounded corners clean */
}

/* Make the actual <img> fill the square nicely */
.hero-square img{
  width: 100%;
  height: 100%;
  object-fit: cover;   /* use 'contain' if you never want cropping */
  display: block;
}/* End custom CSS */