.elementor-5224 .elementor-element.elementor-element-44f5812{--grid-template-columns:repeat(0, auto);--grid-column-gap:5px;--grid-row-gap:0px;}.elementor-5224 .elementor-element.elementor-element-44f5812 .elementor-widget-container{text-align:left;}.elementor-5224 .elementor-element.elementor-element-44f5812 .elementor-icon{border-radius:5px 5px 5px 5px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS *//* =========================================
   SG&G FOOTER — COMPLETE RESPONSIVE CSS
   Desktop: 1281px+
   Tablet: 768px–1280px
   Mobile: 767px and below
   ========================================= */


/* =========================================
   SHARED FOOTER FOUNDATION
   ========================================= */

.elementor-5224 {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  background-color: #0B0B0A !important;
}

.elementor-5224 .sg-footer-inner {
  display: flex !important;
  flex-direction: column !important;
  max-width: 1440px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.elementor-5224 .sg-footer-main {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.elementor-5224 .sg-footer-brand {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.elementor-5224 .sg-footer-links-area {
  align-items: start !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}


/* =========================================
   FOOTER LINK COLUMNS
   ========================================= */

.elementor-5224 .sg-footer-link-column {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
  align-content: flex-start !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 10px !important;
  box-sizing: border-box !important;
}

.elementor-5224 .sg-footer-link-column > * {
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-5224 .sg-footer-link-column h1,
.elementor-5224 .sg-footer-link-column h2,
.elementor-5224 .sg-footer-link-column h3,
.elementor-5224 .sg-footer-link-column h4,
.elementor-5224 .sg-footer-link-column h5,
.elementor-5224 .sg-footer-link-column h6,
.elementor-5224 .sg-footer-link-column p {
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
  padding: 0 !important;
}


/* =========================================
   FOOTER LINK TYPOGRAPHY
   ========================================= */

.elementor-5224 .sg-footer-link {
  display: block !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #BFB8AD !important;
  font-family: inherit !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-decoration: none !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  transition:
    color 180ms ease,
    transform 180ms ease !important;
}

.elementor-5224 .sg-footer-link *,
.elementor-5224 .sg-footer-link a,
.elementor-5224 .sg-footer-link .elementor-heading-title,
.elementor-5224 .sg-footer-link .elementor-heading-title a {
  color: #BFB8AD !important;
  font-family: inherit !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-decoration: none !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

.elementor-5224 .sg-footer-link a {
  display: inline-block !important;
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-5224 .sg-footer-link:hover {
  color: #D0551A !important;
  transform: translateX(4px);
}

.elementor-5224 .sg-footer-link:hover *,
.elementor-5224 .sg-footer-link:hover a {
  color: #D0551A !important;
}


/* =========================================
   SOCIAL ICONS
   ========================================= */

.elementor-5224 .sg-footer-socials {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: auto !important;
  margin: 2px 0 0 !important;
  padding: 0 !important;
}

.elementor-5224 .sg-footer-socials .elementor-social-icons-wrapper {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin: 0 !important;
}

.elementor-5224 .sg-footer-socials .elementor-social-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 38px !important;
  height: 38px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #F5F2ED !important;
  font-size: 15px !important;
  background-color: #171715 !important;
  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  border-radius: 50% !important;
  box-shadow: none !important;
  transition:
    transform 180ms ease,
    color 180ms ease,
    background-color 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease !important;
}

.elementor-5224 .sg-footer-socials .elementor-social-icon i {
  color: inherit !important;
}

.elementor-5224 .sg-footer-socials .elementor-social-icon svg {
  width: 15px !important;
  height: 15px !important;
  fill: currentColor !important;
}

.elementor-5224 .sg-footer-socials .elementor-social-icon:hover {
  color: #FFFFFF !important;
  background-color: #D0551A !important;
  border-color: #D0551A !important;
  transform: translateY(-3px);
  box-shadow: 0 10px 22px rgba(208, 85, 26, 0.28) !important;
}

.elementor-5224 .sg-footer-socials .elementor-social-icon:focus-visible {
  outline: 3px solid rgba(208, 85, 26, 0.35) !important;
  outline-offset: 3px !important;
}


/* =========================================
   DIVIDER AND LEGAL TEXT
   ========================================= */

.elementor-5224 .sg-footer-divider {
  display: block !important;
  width: 100% !important;
  height: 1px !important;
  min-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  background-color: rgba(255, 255, 255, 0.12) !important;
}

.elementor-5224 .sg-footer-bottom {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.elementor-5224 .sg-footer-legal-text {
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-5224 .sg-footer-legal-text,
.elementor-5224 .sg-footer-legal-text * {
  color: #8F8980 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  text-decoration: none !important;
}


/* =========================================
   DESKTOP — 1281PX AND ABOVE
   ========================================= */

@media (min-width: 1281px) {

  .elementor-5224 {
    padding: 72px 0 28px !important;
  }

  .elementor-5224 .sg-footer-inner {
    width: min(92%, 1440px) !important;
    gap: 42px !important;
  }

  .elementor-5224 .sg-footer-main {
    display: grid !important;
    grid-template-columns:
      minmax(280px, 0.85fr)
      minmax(0, 1.75fr) !important;
    align-items: start !important;
    gap: 48px !important;
  }

  .elementor-5224 .sg-footer-brand {
    width: 100% !important;
    max-width: 420px !important;
    gap: 16px !important;
  }

  .elementor-5224 .sg-footer-links-area {
    display: grid !important;
    grid-template-columns:
      minmax(170px, 1fr)
      minmax(240px, 1.3fr)
      minmax(190px, 1.1fr) !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 32px !important;
  }

  .elementor-5224 .sg-footer-bottom {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 24px !important;
  }

  .elementor-5224 .sg-footer-legal-text {
    width: auto !important;
    max-width: 48% !important;
  }

  .elementor-5224 .sg-footer-legal-text,
  .elementor-5224 .sg-footer-legal-text * {
    font-size: 13px !important;
  }
}


/* =========================================
   TABLET / SMALL LAPTOP — 768PX TO 1280PX
   ========================================= */

@media (min-width: 768px) and (max-width: 1280px) {

  .elementor-5224 {
    padding: 60px 0 28px !important;
  }

  .elementor-5224 .sg-footer-inner {
    width: 92% !important;
    max-width: 1440px !important;
    gap: 34px !important;
  }

  .elementor-5224 .sg-footer-main {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    gap: 32px !important;
  }

  .elementor-5224 .sg-footer-brand {
    width: 100% !important;
    max-width: 560px !important;
    align-self: flex-start !important;
    gap: 14px !important;
  }

  .elementor-5224 .sg-footer-links-area {
    display: grid !important;
    grid-template-columns:
      minmax(155px, 1fr)
      minmax(225px, 1.3fr)
      minmax(190px, 1.15fr) !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 20px !important;
  }

  .elementor-5224 .sg-footer-bottom {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 18px !important;
  }

  .elementor-5224 .sg-footer-legal-text {
    width: auto !important;
    max-width: 48% !important;
  }

  .elementor-5224 .sg-footer-legal-text,
  .elementor-5224 .sg-footer-legal-text * {
    font-size: 12px !important;
  }
}


/* =========================================
   MOBILE — 767PX AND BELOW
   ========================================= */

@media (max-width: 767px) {

  .elementor-5224 {
    padding: 48px 0 90px !important;
  }

  .elementor-5224 .sg-footer-inner {
    width: calc(100% - 40px) !important;
    max-width: none !important;
    gap: 28px !important;
  }

  .elementor-5224 .sg-footer-main {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    gap: 28px !important;
  }

  .elementor-5224 .sg-footer-brand {
    width: 100% !important;
    max-width: none !important;
    gap: 12px !important;
  }

  .elementor-5224 .sg-footer-brand img {
    width: 190px !important;
    max-width: 100% !important;
  }

  .elementor-5224 .sg-footer-socials .elementor-social-icon {
    width: 36px !important;
    height: 36px !important;
    font-size: 14px !important;
  }

  .elementor-5224 .sg-footer-links-area {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 26px !important;
  }

  .elementor-5224 .sg-footer-link-column {
    width: 100% !important;
    max-width: 100% !important;
    gap: 9px !important;
  }

  .elementor-5224 .sg-footer-bottom {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
  }

  .elementor-5224 .sg-footer-legal-text {
    width: 100% !important;
    max-width: 100% !important;
    text-align: left !important;
  }

  .elementor-5224 .sg-footer-legal-text,
  .elementor-5224 .sg-footer-legal-text * {
    font-size: 12px !important;
    text-align: left !important;
  }
}/* End custom CSS */