.elementor-15941 .elementor-element.elementor-element-13e1e08d{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:30px 30px;--row-gap:30px;--column-gap:30px;--padding-top:30px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;}.elementor-15941 .elementor-element.elementor-element-13e1e08d:not(.elementor-motion-effects-element-type-background), .elementor-15941 .elementor-element.elementor-element-13e1e08d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-cd3ee91 );}.elementor-15941 .elementor-element.elementor-element-10e12c32{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:dotted;--border-style:dotted;border-width:0px 0px 1px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;border-color:#9b9b9b;--border-color:#9b9b9b;--padding-top:0px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-15941 .elementor-element.elementor-element-10e7f3c1{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:flex-start;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15941 .elementor-element.elementor-element-4600f5a{padding:0px 0px 30px 0px;}.elementor-15941 .elementor-element.elementor-element-3aa99c2{text-align:start;}.elementor-15941 .elementor-element.elementor-element-3aa99c2 .elementor-heading-title{font-size:16px;font-weight:400;color:var( --e-global-color-43e86c6 );}.elementor-15941 .elementor-element.elementor-element-2f905cf{--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;--gap:30px 30px;--row-gap:30px;--column-gap:30px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15941 .elementor-element.elementor-element-d79261a{text-align:start;}.elementor-15941 .elementor-element.elementor-element-d79261a .elementor-heading-title{font-size:16px;font-weight:400;color:var( --e-global-color-43e86c6 );}.elementor-15941 .elementor-element.elementor-element-f4d7285{text-align:start;}.elementor-15941 .elementor-element.elementor-element-f4d7285 .elementor-heading-title{font-size:16px;font-weight:400;color:var( --e-global-color-43e86c6 );}.elementor-15941 .elementor-element.elementor-element-716fc10{padding:0px 0px 15px 0px;}.elementor-15941 .elementor-element.elementor-element-107a4da{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15941 .elementor-element.elementor-element-4144485f{--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:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15941 .elementor-element.elementor-element-7d6091b{font-size:14px;line-height:1.4em;color:var( --e-global-color-43e86c6 );}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-15941 .elementor-element.elementor-element-13e1e08d{--padding-top:30px;--padding-bottom:30px;--padding-left:20px;--padding-right:20px;}}@media(min-width:768px){.elementor-15941 .elementor-element.elementor-element-13e1e08d{--content-width:1500px;}}@media(max-width:767px){.elementor-15941 .elementor-element.elementor-element-13e1e08d{--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:25px;--padding-bottom:25px;--padding-left:20px;--padding-right:20px;}.elementor-15941 .elementor-element.elementor-element-10e7f3c1{--width:30%;--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-15941 .elementor-element.elementor-element-3aa99c2{text-align:center;}.elementor-15941 .elementor-element.elementor-element-3aa99c2 .elementor-heading-title{line-height:19px;}.elementor-15941 .elementor-element.elementor-element-2f905cf{--width:70%;--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;}.elementor-15941 .elementor-element.elementor-element-d79261a{text-align:center;}.elementor-15941 .elementor-element.elementor-element-d79261a .elementor-heading-title{line-height:19px;}.elementor-15941 .elementor-element.elementor-element-f4d7285{text-align:center;}.elementor-15941 .elementor-element.elementor-element-f4d7285 .elementor-heading-title{line-height:19px;}.elementor-15941 .elementor-element.elementor-element-107a4da{--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-15941 .elementor-element.elementor-element-4144485f{--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-15941 .elementor-element.elementor-element-7d6091b{text-align:center;font-size:13px;}}/* Start custom CSS for container, class: .elementor-element-13e1e08d */@media (max-width: 1024px) {

  /* Outer row becomes a column */
  .elementor-element-10e12c32 {
    flex-direction: column !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 18px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Both halves go full width instead of 50/50 */
  .elementor-element-10e7f3c1,
  .elementor-element-2f905cf {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 auto !important;
  }

  /* Left half: logo above centered copyright */
  .elementor-element-10e7f3c1 {
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    gap: 10px !important;
  }

  .elementor-element-10e7f3c1 .elementor-widget {
    width: 100% !important;
    text-align: center !important;
  }

  /* Copyright: was wrapping to four lines in a ~145px box */
  .elementor-element-3aa99c2 .elementor-heading-title {
    text-align: center !important;
    max-width: 32ch;
    margin-left: auto !important;
    margin-right: auto !important;
    line-height: 1.45 !important;
  }

  /* Right half: links centered, not jammed to the edge */
  .elementor-element-2f905cf {
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    gap: 6px !important;
  }

  .elementor-element-2f905cf .elementor-widget {
    width: 100% !important;
    text-align: center !important;
  }

  
  .elementor-element-10e12c32 .elementor-widget,
  .elementor-element-10e12c32 .elementor-widget-container {
    margin: 0 !important;
    padding: 0 !important;
  }

  .elementor-element-10e12c32 p,
  .elementor-element-10e12c32 .elementor-heading-title,
  .elementor-element-10e12c32 .elementor-icon-list-item {
    margin: 0 !important;
    line-height: 1.4 !important;
  }

  /* Phone link is inline-flex, so it needs centering on its own axis */
  .elementor-element-2f905cf a.csap-phone-link {
    display: inline-flex !important;
    justify-content: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* Logo: the anchor measured 0 wide, so give it a real box */
  .elementor-element-4600f5a {
    width: 100% !important;
    text-align: center !important;
  }

  .elementor-element-4600f5a a {
    display: inline-block !important;
  }

  .elementor-element-4600f5a img {
    max-width: 165px !important;
    height: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
  }

  /* Trim the footer container's own vertical padding */
  .elementor-element-10e12c32 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
}

/* ---------- Small phones ---------- */
@media (max-width: 420px) {
  .elementor-element-10e12c32 {
    gap: 16px !important;
  }

  .elementor-element-2f905cf {
    gap: 4px !important;
  }

  .elementor-element-4600f5a img {
    max-width: 145px !important;
  }
}

/* ============================================================
   STRUCTURAL FALLBACK
   The rules above target specific Elementor element IDs. If the footer
   renders a separate mobile variant, those IDs differ and none of the
   above applies — which is the most likely reason a phone still shows
   the two-column layout.

   These rules target the footer by location class and structure
   instead, so they hold regardless of element ID. Stacked and centered
   is the correct mobile footer layout in every case here, so the broad
   reach is intentional.
   ============================================================ */
@media (max-width: 1024px) {

  footer.elementor-location-footer .e-con.e-flex,
  footer.elementor-location-footer .e-con-full.e-flex {
    flex-direction: column !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
  }

  footer.elementor-location-footer .e-con.e-flex > .e-con,
  footer.elementor-location-footer .e-con-full.e-flex > .e-con {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 auto !important;
  }

  footer.elementor-location-footer .elementor-widget {
    width: 100% !important;
    text-align: center !important;
    margin: 0 !important;
  }

  footer.elementor-location-footer .elementor-widget-container {
    margin: 0 !important;
    padding: 0 !important;
  }

  footer.elementor-location-footer p,
  footer.elementor-location-footer .elementor-heading-title {
    margin: 0 !important;
    line-height: 1.45 !important;
    text-align: center !important;
  }

  footer.elementor-location-footer a[href^="tel:"] {
    display: inline-flex !important;
    justify-content: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  footer.elementor-location-footer img {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}/* End custom CSS */