/* Logo size — desktop */
.custom-logo-link img.custom-logo { max-width: 280px !important; height: auto !important; }

/* Logo size — mobile */
@media (max-width: 767px) {
  .custom-logo-link img.custom-logo { max-width: 160px !important; }
}

/* Hide duplicate tagline below logo */
.site-description { display: none !important; }

/* Hide WordPress page title on Elementor pages */
.elementor-page .entry-title,
.elementor-page h1.page-title,
body.page .entry-title {
  display: none !important;
}

/* Fix Elementor animations sitewide — no blank flash on load */
.elementor-invisible {
  opacity: 1 !important;
  visibility: visible !important;
  animation: none !important;
}
.elementor-element {
  animation-duration: 0.01ms !important;
  animation-delay: 0ms !important;
}

/* === MOBILE NAVBAR FIX (Hello Elementor 3.4.9) === */
@media (max-width: 1024px) {
  /* Hide the hamburger toggle entirely */
  .site-navigation-toggle-holder { display: none !important; }

  /* Show the desktop nav inline on mobile, with wrap */
  header#site-header .site-navigation:not(.site-navigation-dropdown) {
    display: flex !important;
    flex: 1 1 100%;
    width: 100%;
    order: 99;
    margin-top: 8px;
  }
  header#site-header .site-navigation:not(.site-navigation-dropdown) > ul.menu {
    display: flex !important;
    flex-wrap: wrap;
    gap: 4px 14px;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 4px 0 8px;
    margin: 0;
    list-style: none;
  }
  header#site-header .site-navigation:not(.site-navigation-dropdown) > ul.menu > li { list-style: none; margin: 0; padding: 0; }
  header#site-header .site-navigation:not(.site-navigation-dropdown) > ul.menu > li > a {
    font-size: 14px !important;
    font-weight: 600;
    padding: 4px 6px !important;
    color: inherit;
    white-space: nowrap;
  }

  /* Hide the broken dropdown nav (collapsed scaleY(0) version) */
  .site-navigation-dropdown { display: none !important; }

  /* Make header layout wrap (logo + tagline on top, menu wraps below) */
  .site-header .header-inner { flex-wrap: wrap !important; row-gap: 0; padding: 10px 16px !important; }
  .site-branding { flex: 1 1 auto; }

  /* Hide stray duplicated tagline text under logo */
  body.elementor-page > p, .site-description + p { display: none !important; }
}

/* Prevent any horizontal overflow on the whole site */
html, body { overflow-x: hidden !important; max-width: 100vw !important; }
@media (max-width: 1024px) {
  .elementor-section, .elementor-container, .elementor-row, .e-con, .e-con-inner { max-width: 100% !important; }
  img, video, iframe { max-width: 100% !important; height: auto !important; }
}
/* === END MOBILE NAVBAR FIX === */

/* === FIX: header z-index over hero overlay === */
.site-header { position: relative !important; z-index: 9999 !important; background: #fff !important; }
@media (max-width: 1024px) {
  .site-header { padding-bottom: 6px !important; }
  /* Push hero down so it doesn't overlap menu row 2 */
  .elementor-section.elementor-top-section:first-of-type { margin-top: 0 !important; }
}
.site-header .header-inner { background: #fff; }
/* Force menu items to be clickable above any overlay */
.site-navigation:not(.site-navigation-dropdown) ul.menu, .site-navigation:not(.site-navigation-dropdown) ul.menu li, .site-navigation:not(.site-navigation-dropdown) ul.menu li a { position: relative; z-index: 10000 !important; }