/* Project overrides: dark header + subtle animations */

/* Logo: ~10px smaller than template defaults; business name + tagline hidden in PHP when a custom logo is set in admin */
.page_header.iqr-header a.logo img {
  max-height: 70px;
  width: auto;
  height: auto;
  vertical-align: middle;
}
.page_footer a.logo img {
  max-height: 80px;
  width: auto;
  height: auto;
  vertical-align: middle;
}

.page_copyright .iqr-dev-credit {
  margin-top: 8px;
  margin-bottom: 0;
  opacity: 0.85;
}
.page_copyright .iqr-dev-credit a {
  color: inherit;
  text-decoration: underline;
}
.page_copyright .iqr-dev-credit a:hover,
.page_copyright .iqr-dev-credit a:focus {
  color: #ffc326;
}
.page_copyright .iqr-dev-credit .iqr-dev-heart {
  display: inline-block;
  margin-left: 3px;
  font-size: 1.1em;
  line-height: 1;
  vertical-align: middle;
}

.page_header.iqr-header {
  background: rgba(35, 35, 35, 0.72);
  -webkit-backdrop-filter: saturate(180%) blur(12px);
  backdrop-filter: saturate(180%) blur(12px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

/* When header is transparent over hero/intro, keep it truly transparent. */
.intro_section + .page_header_wrapper .page_header.iqr-header.header_transparent {
  background: transparent;
  border-bottom-color: transparent;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}

/* Sticky (Bootstrap affix) state */
.page_header.iqr-header.affix {
  background: rgba(35, 35, 35, 0.92);
  -webkit-backdrop-filter: saturate(180%) blur(14px);
  backdrop-filter: saturate(180%) blur(14px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.22);
  animation: iqrHeaderDrop 220ms ease-out both;
}

@keyframes iqrHeaderDrop {
  from { transform: translateY(-10px); opacity: 0.7; }
  to { transform: translateY(0); opacity: 1; }
}

/* Logo text on dark header */
.page_header.iqr-header .logo_text .highlight {
  color: #ffffff;
}
.page_header.iqr-header .logo_text span:not(.highlight) {
  color: rgba(255, 255, 255, 0.72);
}

/* Desktop menu: underline animation and softer hover */
@media (min-width: 992px) {
  .page_header.iqr-header .sf-menu > li > a {
    color: rgba(255, 255, 255, 0.92);
    transition: color 160ms ease, transform 160ms ease;
  }

  /* Compact menu spacing a bit on desktop */
  .page_header.iqr-header .sf-menu > li > a {
    font-size: 16px;
    padding-top: 22px;
    padding-bottom: 22px;
  }

  .page_header.iqr-header .sf-menu > li > a::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 12px;
    height: 2px;
    background: #ffc326;
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 180ms ease;
    opacity: 0.95;
  }

  .page_header.iqr-header .sf-menu > li > a:hover {
    color: #ffffff;
    transform: translateY(-1px);
  }

  .page_header.iqr-header .sf-menu > li > a:hover::after,
  .page_header.iqr-header .sf-menu > li.active > a::after {
    transform: scaleX(1);
  }
}

/* Mobile toggler: keep it visible on dark background */
.page_header.iqr-header .toggle_menu span,
.page_header.iqr-header .toggle_menu span:before,
.page_header.iqr-header .toggle_menu span:after {
  background-color: #ffffff;
}

@media (prefers-reduced-motion: reduce) {
  .page_header.iqr-header,
  .page_header.iqr-header .sf-menu > li > a {
    transition: none !important;
  }
  .page_header.iqr-header.affix {
    animation: none !important;
  }
  .page_header.iqr-header .sf-menu > li > a::after {
    transition: none !important;
  }
}

