/*
 * Layout only. Colors, type size, and spacing stay in each Elementor widget.
 * These rules cover the menu plugin's closed-state height and the underlines
 * Elementor Free cannot attach to a heading.
 */

html { scroll-padding-top: 80px; }
.elementor-menu-anchor { scroll-margin-top: 80px; }

.llj-rev-pre .elementor-heading-title { white-space: pre-line; }

.llj-rev-ul .elementor-heading-title,
.llj-rev-ul-orange .elementor-heading-title,
.llj-rev-ul-thin .elementor-heading-title {
  display: inline-block;
  border-bottom: 6px solid #1D2088;
  padding-bottom: 6px;
  line-height: 1.35;
}
.llj-rev-ul-orange .elementor-heading-title { border-bottom-color: #ED6F1F; }
.llj-rev-ul-thin .elementor-heading-title {
  border-bottom-width: 2px;
  padding-bottom: 4px;
}

.llj-rev-tick .elementor-heading-title::before {
  content: "";
  display: block;
  width: 32px;
  height: 4px;
  margin: 0 0 16px;
  background: #ED6F1F;
}

.llj-rev-close-btn .elementor-button {
  width: 550px;
  max-width: 100%;
  min-height: 66px;
  justify-content: flex-start;
}

@media (max-width: 1024px) {
  .llj-el-header {
    position: relative;
  }
  .llj-el-header > .elementor-container {
    flex-wrap: nowrap !important;
    align-items: center;
  }
  .llj-el-header > .elementor-container > .elementor-column {
    width: auto !important;
    min-height: 0;
  }
  .llj-el-header-logo {
    flex: 1 1 auto;
  }
  .llj-el-header-nav {
    margin-left: auto;
  }
  .llj-el-header .elementor-widget-image img {
    max-height: 28px;
    width: auto;
  }
  .llj-el-header .hfe-nav-menu__layout-horizontal {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    height: 0;
    min-height: 0;
    overflow: hidden;
    visibility: hidden;
  }
  .llj-el-header .hfe-active-menu + .hfe-nav-menu__layout-horizontal {
    height: auto;
    min-height: 0;
    overflow: visible;
    visibility: visible;
    background: #ffffff;
    z-index: 10001;
  }
}

@media (max-width: 767px) {
  .llj-rev-close-btn .elementor-button {
    width: 100%;
  }
}
