/* Saintt Vintage Footer 55: exact Elementor container IDs verified in public DOM. */
/* Desktop: 5 aligned columns and hairline separators. */
.elementor-55 .elementor-element.elementor-element-e05ddd3d {
  padding-top: 46px !important;
  padding-bottom: 38px !important;
}
.elementor-55 .elementor-element.elementor-element-7814fff4,
.elementor-55 .elementor-element.elementor-element-7814fff4 > .e-con-inner {
  display: grid !important;
  grid-template-columns: minmax(0,1.65fr) minmax(0,.82fr) minmax(0,1.18fr) minmax(0,1.18fr) minmax(0,.78fr) !important;
  gap: 0 !important;
  align-items: start !important;
  width: 100% !important;
  max-width: 1240px !important;
  margin: 0 auto !important;
}
.elementor-55 .elementor-element.elementor-element-7814fff4 > .e-con,
.elementor-55 .elementor-element.elementor-element-7814fff4 > .e-con-inner > .e-con {
  min-width: 0 !important;
  max-width: none !important;
  width: 100% !important;
  flex: none !important;
  flex-basis: auto !important;
  margin: 0 !important;
  padding: 0 14px 0 22px !important;
  gap: 10px !important;
  align-items: flex-start !important;
}
.elementor-55 .elementor-element.elementor-element-c91ae0d9 {
  padding-left: 0 !important;
  padding-right: 28px !important;
}
.elementor-55 .elementor-element.elementor-element-74964f2e,
.elementor-55 .elementor-element.elementor-element-65fb1d6a,
.elementor-55 .elementor-element.elementor-element-1ce44ecc,
.elementor-55 .elementor-element.elementor-element-cb2c8bf1 {
  border-left: 1px solid rgba(249,239,226,.15) !important;
  padding-left: 23px !important;
}
/* Keep column headings and buttons on a consistent baseline. */
.elementor-55 .elementor-element.elementor-element-7814fff4 .elementor-widget-heading .elementor-heading-title {
  margin: 0 !important;
  line-height: 1.35 !important;
  letter-spacing: .65px !important;
}
.elementor-55 .elementor-element.elementor-element-7814fff4 .elementor-widget-text-editor p {
  margin: 0 0 7px !important;
  line-height: 1.55 !important;
}
.elementor-55 .elementor-element.elementor-element-7814fff4 .elementor-widget-button .elementor-button {
  box-sizing: border-box !important;
  display: inline-flex !important;
  min-height: 42px !important;
  min-width: 122px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 10px 16px !important;
  margin: 0 !important;
  line-height: 1.2 !important;
}
.elementor-55 .elementor-element.elementor-element-cb2c8bf1 .elementor-element.elementor-element-72818d2f {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 14px !important;
  flex-wrap: nowrap !important;
}
/* Copyright + legal links: one horizontal row and a subtle top divider. */
.elementor-55 .elementor-element.elementor-element-930922bf {
  display: flex !important;
  flex-direction: row !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 24px !important;
  border-top: 1px solid rgba(249,239,226,.13) !important;
  padding-top: 20px !important;
  padding-bottom: 24px !important;
}
.elementor-55 .elementor-element.elementor-element-930922bf > .elementor-widget,
.elementor-55 .elementor-element.elementor-element-930922bf > .e-con-inner > .elementor-widget {
  width: auto !important;
  max-width: none !important;
  flex: 0 1 auto !important;
  margin: 0 !important;
}
.elementor-55 .elementor-element.elementor-element-930922bf .elementor-widget-text-editor p {
  margin: 0 !important;
  line-height: 1.5 !important;
}
.elementor-55 .elementor-element.elementor-element-930922bf a {
  color: #e8d5c0 !important;
  text-decoration: none !important;
}
.elementor-55 .elementor-element.elementor-element-930922bf a:hover {
  color: #ffffff !important;
}
@media (max-width: 1199px) {
  .elementor-55 .elementor-element.elementor-element-7814fff4,
  .elementor-55 .elementor-element.elementor-element-7814fff4 > .e-con-inner {
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    row-gap: 28px !important;
  }
  .elementor-55 .elementor-element.elementor-element-7814fff4 > .e-con,
  .elementor-55 .elementor-element.elementor-element-7814fff4 > .e-con-inner > .e-con {
    border-left: 0 !important;
    padding: 0 18px 0 0 !important;
  }
  .elementor-55 .elementor-element.elementor-element-7814fff4 > .e-con:not(:nth-child(3n+1)) {
    border-left: 1px solid rgba(249,239,226,.12) !important;
    padding-left: 18px !important;
  }
}
@media (max-width: 767px) {
  .elementor-55 .elementor-element.elementor-element-e05ddd3d {
    padding-top: 36px !important;
    padding-bottom: 22px !important;
  }
  .elementor-55 .elementor-element.elementor-element-7814fff4,
  .elementor-55 .elementor-element.elementor-element-7814fff4 > .e-con-inner {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    row-gap: 24px !important;
  }
  .elementor-55 .elementor-element.elementor-element-c91ae0d9 {
    grid-column: 1 / -1 !important;
    border-bottom: 1px solid rgba(249,239,226,.12) !important;
    padding-bottom: 20px !important;
  }
  .elementor-55 .elementor-element.elementor-element-7814fff4 > .e-con,
  .elementor-55 .elementor-element.elementor-element-7814fff4 > .e-con-inner > .e-con {
    border-left: 0 !important;
    padding-left: 0 !important;
  }
  .elementor-55 .elementor-element.elementor-element-930922bf {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
  }
}
@media (max-width: 479px) {
  .elementor-55 .elementor-element.elementor-element-7814fff4,
  .elementor-55 .elementor-element.elementor-element-7814fff4 > .e-con-inner {
    grid-template-columns: 1fr !important;
    row-gap: 20px !important;
  }
  .elementor-55 .elementor-element.elementor-element-7814fff4 > .e-con,
  .elementor-55 .elementor-element.elementor-element-7814fff4 > .e-con-inner > .e-con {
    border-bottom: 1px solid rgba(249,239,226,.10) !important;
    padding-bottom: 16px !important;
  }
}
