.elementor-134 .elementor-element.elementor-element-dc08fc1{--display:flex;}.elementor-134 .elementor-element.elementor-element-340ce2b{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );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-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-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-134 .elementor-element.elementor-element-3e7072d{--display:flex;}.elementor-134 .elementor-element.elementor-element-104916e{--display:flex;}.elementor-widget-theme-site-logo .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-134 .elementor-element.elementor-element-a3c1a2d{--display:flex;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-134 .elementor-element.elementor-element-98b0579 .elementor-menu-toggle{margin:0 auto;}.elementor-134 .elementor-element.elementor-element-31edad9{--display:flex;}.elementor-134 .elementor-element.elementor-element-fde84f5{--display:flex;}.elementor-134 .elementor-element.elementor-element-7578e6c{--display:flex;}.elementor-134 .elementor-element.elementor-element-a520935{color:var( --e-global-color-ff62a75 );}.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-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:767px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}}/* Start custom CSS for container, class: .elementor-element-dc08fc1 *//* =========================================
   SACH — MODERN FOOTER
========================================= */

.sach-footer,
.sach-footer *,
.sach-footer *::before,
.sach-footer *::after {
  box-sizing: border-box;
}

/* Main footer */

.sach-footer {
  position: relative;
  width: 100% !important;
  margin: 0 !important;
  padding: clamp(70px, 7vw, 110px) 0 24px !important;
  overflow: hidden;

  font-family: "Inter", Arial, sans-serif;
  font-size: 17px;
  line-height: 1.65;

  color: #F5F7F8;
  background: #073F5B;
}

/* Decorative background */

.sach-footer::before {
  content: "";
  position: absolute;
  top: -220px;
  right: -180px;

  width: 520px;
  height: 520px;

  border: 1px solid rgba(168, 200, 197, 0.13);
  border-radius: 50%;
  pointer-events: none;
}

.sach-footer::after {
  content: "";
  position: absolute;
  bottom: -260px;
  left: -210px;

  width: 500px;
  height: 500px;

  border-radius: 50%;
  background: rgba(57, 127, 133, 0.13);
  filter: blur(2px);
  pointer-events: none;
}

/* Inner container */

.sach-footer .sach-footer__inner {
  position: relative;
  z-index: 2;

  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 0 !important;

  width: min(1440px, calc(100% - 80px)) !important;
  max-width: none !important;

  margin: 0 auto !important;
  padding: 0 !important;
}

/* =========================================
   TOP CTA
========================================= */

.sach-footer .sach-footer__cta {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  column-gap: clamp(40px, 7vw, 110px) !important;
  row-gap: 18px !important;

  width: 100% !important;
  margin: 0 !important;
  padding: 0 0 clamp(54px, 6vw, 82px) !important;

  border-bottom: 1px solid rgba(245, 247, 248, 0.2);
}

/* Eyebrow */

.sach-footer .sach-footer__eyebrow {
  grid-column: 1;
  position: relative;

  padding-left: 54px;
  margin: 0 !important;

  font-family: "Inter", sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase;

  color: #A8C8C5 !important;
}

.sach-footer .sach-footer__eyebrow::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;

  width: 36px;
  height: 1px;

  background: #D6A84B;
  transform: translateY(-50%);
}

/* CTA title */

.sach-footer .sach-footer__title {
  grid-column: 1;
}

.sach-footer .sach-footer__title,
.sach-footer .sach-footer__title h2,
.sach-footer .sach-footer__title .elementor-heading-title {
  margin: 0 !important;

  font-family: "DM Serif Display", Georgia, serif !important;
  font-size: clamp(44px, 5.4vw, 78px) !important;
  font-weight: 400 !important;
  line-height: 1.02 !important;
  letter-spacing: -0.035em !important;

  color: #F5F7F8 !important;
}

/* CTA introduction */

.sach-footer .sach-footer__intro {
  grid-column: 1;
  max-width: 830px;
}

.sach-footer .sach-footer__intro,
.sach-footer .sach-footer__intro p {
  margin: 0 !important;

  font-family: "Inter", sans-serif !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  line-height: 1.7 !important;

  color: rgba(245, 247, 248, 0.82) !important;
}

/* =========================================
   FOOTER CTA BUTTON
========================================= */

.sach-footer .sach-footer__button {
  grid-column: 2;
  grid-row: 1 / 4;

  align-self: center;
  justify-self: end;

  width: auto !important;
}

.sach-footer .sach-footer__button .elementor-button {
  position: relative;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-width: 230px;
  min-height: 60px;

  padding: 6px 66px 6px 28px !important;
  overflow: hidden;

  border: 1px solid rgba(245, 247, 248, 0.55) !important;
  border-radius: 100px !important;

  font-family: "Inter", sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;

  color: #073F5B !important;
  background: #F5F7F8 !important;

  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.16);

  transition:
    padding 0.5s cubic-bezier(.22, .7, .25, 1),
    background-color 0.35s ease,
    transform 0.35s ease;
}

.sach-footer .sach-footer__button .elementor-button::after {
  content: "↗";
  position: absolute;
  top: 6px;
  right: 6px;

  display: grid;
  place-items: center;

  width: 48px;
  height: 48px;

  border-radius: 50%;

  font-family: Arial, sans-serif;
  font-size: 22px;
  font-weight: 400;

  color: #F5F7F8;
  background: #397F85;

  transition:
    right 0.5s cubic-bezier(.22, .7, .25, 1),
    transform 0.5s cubic-bezier(.22, .7, .25, 1);
}

.sach-footer .sach-footer__button .elementor-button-text {
  position: relative;
  z-index: 2;
}

.sach-footer .sach-footer__button .elementor-button:hover {
  padding-right: 28px !important;
  padding-left: 66px !important;

  color: #073F5B !important;
  background: #A8C8C5 !important;

  transform: translateY(-3px);
}

.sach-footer .sach-footer__button .elementor-button:hover::after {
  right: calc(100% - 54px);
  transform: rotate(45deg);
}

/* =========================================
   FOOTER COLUMNS
========================================= */

.sach-footer .sach-footer__grid {
  display: grid !important;
  grid-template-columns:
    minmax(260px, 1.35fr)
    minmax(150px, 0.7fr)
    minmax(210px, 0.9fr)
    minmax(240px, 1fr) !important;

  align-items: start !important;
  gap: clamp(36px, 5vw, 76px) !important;

  width: 100% !important;
  margin: 0 !important;
  padding: clamp(52px, 6vw, 80px) 0 !important;
}

/* All footer columns */

.sach-footer .sach-footer__brand,
.sach-footer .sach-footer__links,
.sach-footer .sach-footer__location,
.sach-footer .sach-footer__contact {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 18px !important;

  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Logo */

.sach-footer .sach-footer__brand img {
  display: block;
  width: auto !important;
  max-width: 230px !important;
  max-height: 90px !important;
  object-fit: contain;
  object-position: left center;
}

/* Column headings */

.sach-footer .sach-footer__links h2,
.sach-footer .sach-footer__links h3,
.sach-footer .sach-footer__location h2,
.sach-footer .sach-footer__location h3,
.sach-footer .sach-footer__contact h2,
.sach-footer .sach-footer__contact h3,
.sach-footer .sach-footer__links .elementor-heading-title,
.sach-footer .sach-footer__location .elementor-heading-title,
.sach-footer .sach-footer__contact .elementor-heading-title {
  margin: 0 !important;

  font-family: "Inter", sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase;

  color: #A8C8C5 !important;
}

/* Body text */

.sach-footer .sach-footer__brand p,
.sach-footer .sach-footer__location p,
.sach-footer .sach-footer__contact p {
  margin: 0 !important;

  font-family: "Inter", sans-serif !important;
  font-size: 17px !important;
  line-height: 1.7 !important;

  color: rgba(245, 247, 248, 0.8) !important;
}

/* Quick Links menu */

.sach-footer .sach-footer__links ul {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 11px !important;

  margin: 0 !important;
  padding: 0 !important;

  list-style: none !important;
}

.sach-footer .sach-footer__links li {
  margin: 0 !important;
  padding: 0 !important;
}

.sach-footer .sach-footer__links a,
.sach-footer .sach-footer__contact a {
  position: relative;

  font-family: "Inter", sans-serif !important;
  font-size: 17px !important;
  line-height: 1.5 !important;
  text-decoration: none !important;

  color: rgba(245, 247, 248, 0.82) !important;

  transition:
    color 0.3s ease,
    transform 0.3s ease;
}

.sach-footer .sach-footer__links a:hover,
.sach-footer .sach-footer__contact a:hover {
  color: #D6A84B !important;
}

/* Remove Elementor menu backgrounds */

.sach-footer .sach-footer__links .elementor-nav-menu a {
  padding: 3px 0 !important;
  background: transparent !important;
}

/* =========================================
   FOOTER BOTTOM
========================================= */

.sach-footer .sach-footer__bottom {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;

  width: 100% !important;
  margin: 0 !important;
  padding: 22px 0 0 !important;

  border-top: 1px solid rgba(245, 247, 248, 0.16);
}

.sach-footer .sach-footer__bottom,
.sach-footer .sach-footer__bottom p {
  margin: 0 !important;

  font-family: "Inter", sans-serif !important;
  font-size: 13px !important;
  line-height: 1.5 !important;

  color: rgba(245, 247, 248, 0.6) !important;
}

/* =========================================
   TABLET
========================================= */

@media (max-width: 1024px) {
  .sach-footer .sach-footer__inner {
    width: calc(100% - 48px) !important;
  }

  .sach-footer .sach-footer__cta {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .sach-footer .sach-footer__button {
    grid-column: 1;
    grid-row: auto;

    justify-self: start;
    margin-top: 14px;
  }

  .sach-footer .sach-footer__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {
  .sach-footer {
    padding: 64px 0 22px !important;
  }

  .sach-footer .sach-footer__inner {
    width: calc(100% - 36px) !important;
  }

  .sach-footer .sach-footer__title,
  .sach-footer .sach-footer__title h2,
  .sach-footer .sach-footer__title .elementor-heading-title {
    font-size: clamp(40px, 12vw, 54px) !important;
  }

  .sach-footer .sach-footer__button,
  .sach-footer .sach-footer__button .elementor-button {
    width: 100% !important;
  }

  .sach-footer .sach-footer__grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 42px !important;
  }

  .sach-footer .sach-footer__brand img {
    max-width: 190px !important;
  }

  .sach-footer .sach-footer__bottom {
    align-items: flex-start !important;
  }
}

/* Reduce empty space at top of footer */

.sach-footer {
  padding-top: 52px !important;
}

.sach-footer .sach-footer__cta {
  padding-top: 0 !important;
}

.sach-footer .sach-footer__eyebrow {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 18px !important;

  width: fit-content !important;
  padding-left: 0 !important;
  margin: 0 !important;
}

.sach-footer .sach-footer__eyebrow::before {
  content: "";
  position: static !important;
  flex: 0 0 36px;

  width: 36px;
  height: 1px;

  background: #D6A84B;
  transform: none !important;
}

.sach-footer .sach-footer__eyebrow p {
  margin: 0 !important;
  line-height: 1 !important;
}/* End custom CSS */