/* Static Heylangu footer — matches heylangu.com (no tracking / no Vuetify) */
.hl-static-footer {
  --hl-footer-bg: #2d2d2d;
  --hl-footer-orange: #fbb03b;
  --hl-footer-link: hsla(0, 0%, 100%, 0.5);
  --hl-footer-text: #ffffff;
  --hl-footer-header-border: hsla(0, 0%, 100%, 0.2);
  --hl-footer-font: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;

  box-sizing: border-box;
  width: 100%;
  padding: 0 !important;
  margin: 0;
  font-size: 13px;
  color: var(--hl-footer-text) !important;
  font-family: var(--hl-footer-font);
  line-height: normal;
  background: transparent;
}

.hl-static-footer *,
.hl-static-footer *::before,
.hl-static-footer *::after {
  box-sizing: border-box;
}

.hl-static-footer__fluid {
  width: 100%;
  max-width: 100%;
}

.hl-static-footer__wrap {
  position: relative;
  margin-top: 168px;
  padding: 55px 0 30px;
  background-color: var(--hl-footer-bg);
}

@media (max-width: 479px) {
  .hl-static-footer__wrap {
    margin-top: 130px;
  }
}

.hl-static-footer__wave {
  position: absolute;
  width: 100%;
  left: 0;
  top: -178px;
  height: 178px;
  overflow: hidden;
  pointer-events: none;
  line-height: 0;
}

.hl-static-footer__wave img {
  display: block;
  width: 100%;
  height: 178px;
  object-fit: cover;
  object-position: center bottom;
}

@media (min-width: 1921px) {
  .hl-static-footer__wave img {
    object-fit: fill;
  }
}

.hl-static-footer__container {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

@media (min-width: 992px) {
  .hl-static-footer__container {
    max-width: 942px;
  }
}

@media (min-width: 1440px) {
  .hl-static-footer__container {
    max-width: 1140px;
  }
}

@media (min-width: 1644px) {
  .hl-static-footer__container {
    max-width: 1644px;
  }
}

.hl-static-footer__grid {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 auto;
}

@media (min-width: 1904px) {
  .hl-static-footer__grid {
    width: 83.333%;
  }
}

.hl-static-footer__main {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}

@media (min-width: 992px) {
  .hl-static-footer__main {
    width: 83.333%;
  }
}

.hl-static-footer__col {
  width: 50%;
  padding: 0 25px;
  margin-bottom: 45px;
}

@media (min-width: 992px) {
  .hl-static-footer__col {
    width: 25%;
    margin-bottom: 0;
  }
}

.hl-static-footer__col-header {
  color: var(--hl-footer-text);
  padding-bottom: 10px;
  border-bottom: 1px solid var(--hl-footer-header-border);
}

.hl-static-footer__nav {
  max-width: 210px;
}

.hl-static-footer__nav-item {
  margin-top: 9px;
}

.hl-static-footer__nav-item a {
  text-decoration: none;
  color: var(--hl-footer-link) !important;
  transition: color 0.2s ease;
}

.hl-static-footer__nav-item a:hover,
.hl-static-footer__nav-item a:focus-visible {
  color: var(--hl-footer-orange) !important;
  outline: none;
}

.hl-static-footer__col--social {
  width: 100%;
  padding: 0 25px;
  margin-bottom: 45px;
}

@media (min-width: 992px) {
  .hl-static-footer__col--social {
    width: 16.667%;
    margin-bottom: 0;
  }
}

@media (max-width: 991px) {
  .hl-static-footer__col--social {
    text-align: center;
  }

  .hl-static-footer__col--social .hl-static-footer__col-header {
    border-bottom: none;
  }

  .hl-static-footer__nav--social {
    max-width: 100%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }

  .hl-static-footer__nav--social .hl-static-footer__nav-item {
    margin-top: 0;
    margin-left: 12px !important;
    margin-right: 12px !important;
  }
}

.hl-static-footer__nav--social .hl-static-footer__nav-item {
  margin-top: 0;
}

@media (min-width: 992px) {
  .hl-static-footer__nav--social .hl-static-footer__nav-item:not(:last-child) {
    margin-bottom: 12px;
  }
}

.hl-static-footer__nav--social a {
  display: inline-flex;
  color: var(--hl-footer-link) !important;
}

.hl-static-footer__nav--social a:hover,
.hl-static-footer__nav--social a:focus-visible {
  color: var(--hl-footer-orange) !important;
}

.hl-static-footer__nav--social svg {
  width: 32px;
  height: 32px;
  display: block;
  fill: currentColor;
}

.hl-static-footer__bottom {
  width: 100%;
  padding: 68px 25px 0;
  font-size: 10px;
  line-height: 2;
  letter-spacing: 0.1px;
  text-align: center;
  color: var(--hl-footer-text);
}

@media (max-width: 991px) {
  .hl-static-footer__bottom {
    padding-top: 20px;
  }
}

/* Full-bleed when placed inside Elementor (e.g. learn.heylangu.com/blog) */
.elementor-widget-shortcode .hl-static-footer,
.elementor-shortcode .hl-static-footer {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.elementor-widget-shortcode:has(.hl-static-footer),
.elementor-element:has(.hl-static-footer),
.elementor-widget-shortcode:has(.hl-static-footer) .elementor-shortcode {
  overflow: visible !important;
  max-width: none;
}

/* Hide theme footer when static footer is present */
body:has(.hl-static-footer) footer.site-footer,
body:has(.hl-static-footer) #site-footer,
body.heylangu-blog-archive-page footer.site-footer,
body.heylangu-blog-archive-page #site-footer,
body.heylangu-blog-single-page footer.site-footer,
body.heylangu-blog-single-page #site-footer {
  display: none !important;
}
