/* ========================================================================== 
   LEAFORGE 365 — REFERENCE HEADER
   Top bar + main navigation only. Loaded last so the approved reference
   treatment wins without changing slider or page content.
   ========================================================================== */
.lf-fw2-header {
  --lf-ref-topbar: #016E63;
  --lf-ref-nav: #0D1719;
  --lf-ref-white: #FFFFFF;
  --lf-ref-muted-white: rgba(255,255,255,.92);
  --lf-ref-accent: #10FEFE;
  --lf-ref-border: rgba(255,255,255,.17);
  --lf-ref-font: "Poppins", "Segoe UI", Arial, sans-serif;
}

/* Top bar */
.lf-fw2-header .lf-fw2-topbar,
.lf-fw2-header.is-scrolled .lf-fw2-topbar {
  position: relative;
  z-index: 2147483002;
  width: 100%;
  height: 44px;
  min-height: 44px;
  max-height: 44px;
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background: var(--lf-ref-topbar) !important;
  border: 0 !important;
  box-shadow: none !important;
  color: var(--lf-ref-white);
  font-family: var(--lf-ref-font);
}
.lf-fw2-header .lf-fw2-topbar .lf-fw2-container,
.lf-fw2-header .lf-fw2-topbar .lf-fw2-topbar-inner,
.lf-fw2-header .lf-fw2-topbar-inner {
  width: 100%;
  max-width: 1430px;
  height: 44px;
  min-height: 44px;
  max-height: 44px;
  margin: 0 auto;
  padding: 0 18px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: transparent;
}
.lf-ref-topbar-left,
.lf-ref-topbar-right {
  height: 100%;
  display: flex;
  align-items: center;
  color: var(--lf-ref-white);
  white-space: nowrap;
}
.lf-ref-topbar-left { gap: 20px; }
.lf-ref-topbar-right { gap: 20px; }
.lf-ref-topbar-item,
.lf-ref-topbar-right > a,
.lf-ref-topbar-search {
  min-height: 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  margin: 0;
  padding: 0;
  color: var(--lf-ref-white) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  font-family: var(--lf-ref-font);
  font-size: 12.5px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  text-decoration: none !important;
}
.lf-ref-topbar-item svg,
.lf-ref-topbar-search svg {
  width: 15px;
  height: 15px;
  display: block;
  flex: 0 0 15px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.lf-ref-topbar-search svg {
  width: 20px;
  height: 20px;
  flex-basis: 20px;
  stroke-width: 2;
}
.lf-ref-topbar-sep {
  width: 1px;
  height: 16px;
  flex: 0 0 1px;
  display: inline-block;
  background: rgba(255,255,255,.42);
}
.lf-ref-topbar-item:hover,
.lf-ref-topbar-item:focus-visible,
.lf-ref-topbar-right > a:hover,
.lf-ref-topbar-right > a:focus-visible {
  color: #FFFFFF !important;
  opacity: .82;
}
.lf-fw2-topbar-announcement,
.lf-fw2-topbar-links { display: none !important; }

/* Main navigation shell */
.lf-fw2-header .lf-fw2-main,
.lf-fw2-header.is-scrolled .lf-fw2-main {
  position: relative;
  z-index: 999999;
  width: 100%;
  overflow: visible;
  background: var(--lf-ref-nav) !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(255,255,255,.05) !important;
  box-shadow: none !important;
}
.lf-fw2-header .lf-fw2-main-inner,
.lf-fw2-header.is-scrolled .lf-fw2-main-inner {
  width: 100%;
  max-width: 1430px;
  height: 109px;
  min-height: 109px;
  margin: 0 auto;
  padding: 0 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  overflow: visible;
}
.lf-fw2-header .lf-fw2-logo,
.lf-fw2-logo {
  min-width: 285px !important;
  width: 285px;
  display: inline-flex;
  align-items: center;
  flex: 0 0 285px;
  padding: 0;
  margin: 0;
  background: transparent !important;
}
.lf-fw2-header .lf-fw2-logo img,
.lf-fw2-header .lf-fw2-logo-img,
.lf-fw2-header.is-scrolled .lf-fw2-logo img,
.lf-fw2-header.is-scrolled .lf-fw2-logo-img {
  width: 285px !important;
  max-width: 285px !important;
  max-height: 72px !important;
  height: auto !important;
  object-fit: contain;
  filter: none !important;
}
.lf-fw2-brand-tagline { display: none !important; }

@media (min-width: 1101px) {
  .lf-fw2-header .lf-fw2-nav,
  .lf-fw2-header.is-scrolled .lf-fw2-nav {
    position: relative;
    z-index: 2;
    margin-left: auto;
    display: flex !important;
    align-items: center;
    overflow: visible;
  }
  .lf-fw2-header .lf-fw2-nav > ul,
  .lf-fw2-header.is-scrolled .lf-fw2-nav > ul {
    height: 109px;
    display: flex;
    align-items: stretch;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .lf-fw2-header .lf-fw2-nav > ul > li,
  .lf-fw2-header.is-scrolled .lf-fw2-nav > ul > li {
    position: relative;
    height: 109px;
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  .lf-fw2-header .lf-fw2-nav > ul > li > a,
  .lf-fw2-header.is-scrolled .lf-fw2-nav > ul > li > a,
  .lf-fw2-header .lf-fw2-ai-insight,
  .lf-fw2-header.is-scrolled .lf-fw2-ai-insight {
    position: relative;
    height: 109px !important;
    min-height: 109px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center;
    gap: 7px;
    margin: 0 !important;
    padding: 0 20px !important;
    color: var(--lf-ref-muted-white) !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-family: var(--lf-ref-font) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    text-decoration: none !important;
    transform: none !important;
    white-space: nowrap;
  }
  .lf-fw2-header .lf-fw2-nav > ul > li > a::before,
  .lf-fw2-header .lf-fw2-ai-insight::before {
    content: none !important;
    display: none !important;
  }
  .lf-fw2-header .lf-fw2-nav > ul > li > a::after,
  .lf-fw2-header .lf-fw2-ai-insight::after {
    content: "";
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 28px;
    height: 3px;
    border-radius: 1px;
    background: var(--lf-ref-accent);
    opacity: 0;
    transform: scaleX(.55);
    transition: opacity .18s ease, transform .18s ease;
  }
  body.home-page .lf-fw2-header .lf-fw2-nav > ul > li:first-child > a,
  .lf-fw2-header .lf-fw2-ai-insight { color: #FFFFFF !important; }
  body.home-page .lf-fw2-header .lf-fw2-nav > ul > li:first-child > a::after,
  .lf-fw2-header .lf-fw2-ai-insight::after,
  .lf-fw2-header .lf-fw2-nav > ul > li:hover > a::after,
  .lf-fw2-header .lf-fw2-nav > ul > li:focus-within > a::after {
    opacity: 1;
    transform: scaleX(1);
  }
  .lf-fw2-header .lf-fw2-nav > ul > li:hover > a,
  .lf-fw2-header .lf-fw2-nav > ul > li:focus-within > a,
  .lf-fw2-header .lf-fw2-nav > ul > li > a:hover,
  .lf-fw2-header .lf-fw2-nav > ul > li > a:focus-visible,
  .lf-fw2-header .lf-fw2-ai-insight:hover,
  .lf-fw2-header .lf-fw2-ai-insight:focus-visible {
    color: #FFFFFF !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  .lf-fw2-header .lf-fw2-arrow {
    width: 8px !important;
    height: 8px !important;
    display: inline-block !important;
    margin: -4px 1px 0 1px !important;
    border: 0 !important;
    border-right: 1.6px solid currentColor !important;
    border-bottom: 1.6px solid currentColor !important;
    transform: rotate(45deg) !important;
    opacity: .88;
  }
  .lf-fw2-header .lf-fw2-menu-toggle,
  .lf-fw2-header.is-scrolled .lf-fw2-menu-toggle { display: none !important; }
  .lf-fw2-mobile-ai-insight { display: none !important; }
}

@media (min-width: 1101px) and (max-width: 1499px) {
  .lf-fw2-header .lf-fw2-logo,
  .lf-fw2-logo { min-width: 245px !important; width: 245px; flex-basis: 245px; }
  .lf-fw2-header .lf-fw2-logo img,
  .lf-fw2-header .lf-fw2-logo-img,
  .lf-fw2-header.is-scrolled .lf-fw2-logo img,
  .lf-fw2-header.is-scrolled .lf-fw2-logo-img { width: 245px !important; max-width: 245px !important; }
  .lf-fw2-header .lf-fw2-nav > ul > li > a,
  .lf-fw2-header .lf-fw2-ai-insight { padding-left: 14px !important; padding-right: 14px !important; font-size: 14px !important; }
  .lf-fw2-header .lf-fw2-nav > ul > li > a::after,
  .lf-fw2-header .lf-fw2-ai-insight::after { left: 14px; right: 14px; }
}

@media (max-width: 1100px) {
  .lf-fw2-header .lf-fw2-topbar,
  .lf-fw2-header.is-scrolled .lf-fw2-topbar {
    height: 38px;
    min-height: 38px;
    max-height: 38px;
  }
  .lf-fw2-header .lf-fw2-topbar .lf-fw2-container,
  .lf-fw2-header .lf-fw2-topbar .lf-fw2-topbar-inner,
  .lf-fw2-header .lf-fw2-topbar-inner {
    height: 38px;
    min-height: 38px;
    max-height: 38px;
    padding: 0 14px;
  }
  .lf-ref-topbar-left { gap: 12px; }
  .lf-ref-topbar-right { display: none; }
  .lf-ref-topbar-item { font-size: 11.5px; font-weight: 400; gap: 6px; }
  .lf-ref-topbar-item svg { width: 14px; height: 14px; flex-basis: 14px; }
  .lf-ref-topbar-left .lf-ref-topbar-sep { height: 16px; }
  .lf-ref-topbar-left > :nth-child(5),
  .lf-ref-topbar-left > :nth-child(4) { display: none; }
  .lf-fw2-header .lf-fw2-main-inner,
  .lf-fw2-header.is-scrolled .lf-fw2-main-inner {
    height: 82px !important;
    min-height: 82px !important;
    padding: 0 14px !important;
  }
  .lf-fw2-header .lf-fw2-logo,
  .lf-fw2-logo { min-width: 205px !important; width: 205px; flex-basis: 205px; }
  .lf-fw2-header .lf-fw2-logo img,
  .lf-fw2-header .lf-fw2-logo-img,
  .lf-fw2-header.is-scrolled .lf-fw2-logo img,
  .lf-fw2-header.is-scrolled .lf-fw2-logo-img { width: 205px !important; max-width: 205px !important; max-height: 58px !important; }
}

@media (max-width: 640px) {
  .lf-ref-topbar-left > :nth-child(2),
  .lf-ref-topbar-left > :nth-child(3) { display: none; }
  .lf-fw2-header .lf-fw2-logo,
  .lf-fw2-logo { min-width: 175px !important; width: 175px; flex-basis: 175px; }
  .lf-fw2-header .lf-fw2-logo img,
  .lf-fw2-header .lf-fw2-logo-img,
  .lf-fw2-header.is-scrolled .lf-fw2-logo img,
  .lf-fw2-header.is-scrolled .lf-fw2-logo-img { width: 175px !important; max-width: 175px !important; }
}

/* ========================================================================== 
   V104 — HEADER STATE FIXES
   1) Keep the reference top bar visible while scrolling.
   2) Force the Home / Get AI Insight cyan underline and Home active color.
   ========================================================================== */
.lf-fw2-header.is-scrolled .lf-fw2-topbar {
  display: flex !important;
  position: relative !important;
  inset: auto !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  opacity: 1 !important;
  visibility: visible !important;
  overflow: hidden !important;
  pointer-events: auto !important;
  background: var(--lf-ref-topbar) !important;
}

@media (max-width: 1100px) {
  .lf-fw2-header.is-scrolled .lf-fw2-topbar {
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
  }
}

@media (min-width: 1101px) {
  .lf-fw2-header .lf-fw2-nav > ul > li > a::after,
  .lf-fw2-header.is-scrolled .lf-fw2-nav > ul > li > a::after,
  .lf-fw2-header .lf-fw2-ai-insight::after,
  .lf-fw2-header.is-scrolled .lf-fw2-ai-insight::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 20px !important;
    right: 20px !important;
    bottom: 22px !important;
    height: 3px !important;
    border: 0 !important;
    border-radius: 1px !important;
    background: var(--lf-ref-accent) !important;
    opacity: 0 !important;
    transform: scaleX(.55) !important;
    transform-origin: center !important;
  }

  body.home-page .lf-fw2-header .lf-fw2-nav > ul > li:first-child > a,
  body.home-page .lf-fw2-header.is-scrolled .lf-fw2-nav > ul > li:first-child > a {
    color: var(--lf-ref-accent) !important;
  }

  body.home-page .lf-fw2-header .lf-fw2-nav > ul > li:first-child > a::after,
  body.home-page .lf-fw2-header.is-scrolled .lf-fw2-nav > ul > li:first-child > a::after,
  .lf-fw2-header .lf-fw2-ai-insight::after,
  .lf-fw2-header.is-scrolled .lf-fw2-ai-insight::after,
  .lf-fw2-header .lf-fw2-nav > ul > li:hover > a::after,
  .lf-fw2-header .lf-fw2-nav > ul > li:focus-within > a::after,
  .lf-fw2-header.is-scrolled .lf-fw2-nav > ul > li:hover > a::after,
  .lf-fw2-header.is-scrolled .lf-fw2-nav > ul > li:focus-within > a::after {
    opacity: 1 !important;
    transform: scaleX(1) !important;
  }

  .lf-fw2-header .lf-fw2-ai-insight,
  .lf-fw2-header.is-scrolled .lf-fw2-ai-insight {
    color: #FFFFFF !important;
  }
}

@media (min-width: 1101px) and (max-width: 1499px) {
  .lf-fw2-header .lf-fw2-nav > ul > li > a::after,
  .lf-fw2-header.is-scrolled .lf-fw2-nav > ul > li > a::after,
  .lf-fw2-header .lf-fw2-ai-insight::after,
  .lf-fw2-header.is-scrolled .lf-fw2-ai-insight::after {
    left: 14px !important;
    right: 14px !important;
  }
}

/* ========================================================================== 
   V108 — COMPACT MAIN NAVIGATION
   Reduce only the main navigation/header height while preserving its design.
   ========================================================================== */
@media (min-width: 1101px) {
  .lf-fw2-header .lf-fw2-main-inner,
  .lf-fw2-header.is-scrolled .lf-fw2-main-inner,
  .lf-fw2-header .lf-fw2-nav > ul,
  .lf-fw2-header.is-scrolled .lf-fw2-nav > ul,
  .lf-fw2-header .lf-fw2-nav > ul > li,
  .lf-fw2-header.is-scrolled .lf-fw2-nav > ul > li,
  .lf-fw2-header .lf-fw2-nav > ul > li > a,
  .lf-fw2-header.is-scrolled .lf-fw2-nav > ul > li > a,
  .lf-fw2-header .lf-fw2-ai-insight,
  .lf-fw2-header.is-scrolled .lf-fw2-ai-insight {
    height: 96px !important;
    min-height: 96px !important;
  }

  .lf-fw2-header .lf-fw2-logo img,
  .lf-fw2-header .lf-fw2-logo-img,
  .lf-fw2-header.is-scrolled .lf-fw2-logo img,
  .lf-fw2-header.is-scrolled .lf-fw2-logo-img {
    max-height: 64px !important;
  }

  .lf-fw2-header .lf-fw2-nav > ul > li > a::after,
  .lf-fw2-header .lf-fw2-ai-insight::after {
    bottom: 22px !important;
  }
}

@media (max-width: 1100px) {
  .lf-fw2-header .lf-fw2-main-inner,
  .lf-fw2-header.is-scrolled .lf-fw2-main-inner {
    height: 76px !important;
    min-height: 76px !important;
  }

  .lf-fw2-header .lf-fw2-logo img,
  .lf-fw2-header .lf-fw2-logo-img,
  .lf-fw2-header.is-scrolled .lf-fw2-logo img,
  .lf-fw2-header.is-scrolled .lf-fw2-logo-img {
    max-height: 54px !important;
  }
}

/* ========================================================================== 
   V109 — TOP BAR SUPPORT HOURS
   ========================================================================== */
.lf-ref-topbar-right-sep {
  margin: 0 2px;
}
.lf-ref-support-hours {
  min-height: 26px;
  display: inline-flex;
  align-items: center;
  color: var(--lf-ref-white);
  font-family: var(--lf-ref-font);
  font-size: 12.5px;
  font-weight: 400;
  line-height: 1;
  white-space: nowrap;
  opacity: .88;
}
@media (max-width: 1100px) {
  .lf-ref-support-hours {
    font-size: 11.5px;
  }
}
@media (max-width: 640px) {
  .lf-ref-topbar-right-sep,
  .lf-ref-support-hours {
    display: none;
  }
}
