/* RITTER IMMOBILIEN - Obsidian Publish CSS */

/* 1. Hide Obsidian's own top bar */
.site-body-header { display: none !important; }

/* 2. Header wrap — always white */
#wp-header-wrap {
  position: fixed !important;
  top: 0 !important; left: 0 !important;
  width: 100% !important;
  z-index: 99999 !important;
  height: 70px !important;
  overflow: hidden !important;
  display: block !important;
  background: #ffffff !important;
  box-shadow: 0 2px 15px rgba(0,0,0,0.1) !important;
}

/* 3. Elementor root — row */
#wp-header-wrap .elementor-6635,
#wp-header-wrap #sticky-header-fixed {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  height: 70px !important;
  max-height: 70px !important;
  padding: 0 30px !important;
  box-sizing: border-box !important;
  background: transparent !important;
}

/* 4. Outer boxed container */
#wp-header-wrap .elementor-element-2fba93b {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important; height: 70px !important; max-height: 70px !important;
  padding: 0 !important; margin: 0 !important;
  background: transparent !important; flex: 1 !important;
}
#wp-header-wrap .elementor-element-2fba93b > .e-con-inner {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important; height: 70px !important; max-height: 70px !important;
  padding: 0 !important; margin: 0 !important; background: transparent !important;
}

/* 5. Left column — logo */
#wp-header-wrap .elementor-element-27fb92f {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  height: 70px !important; max-height: 70px !important;
  flex: 0 0 auto !important;
  padding: 0 !important; margin: 0 !important;
  background: transparent !important; overflow: visible !important;
}

/* 6. Right column — nav + icons */
#wp-header-wrap .elementor-element-183a4ac {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-end !important;
  height: 70px !important; max-height: 70px !important;
  flex: 1 !important; gap: 24px !important;
  padding: 0 !important; margin: 0 !important;
  background: transparent !important; overflow: visible !important;
}

/* 7. Logo — colored only */
#wp-header-wrap .logo-1 { display: none !important; }
#wp-header-wrap .logo-2 { display: flex !important; align-items: center !important; }
#wp-header-wrap .elementor-widget-image img {
  max-width: 60px !important; width: auto !important;
  height: auto !important; max-height: 50px !important; display: block !important;
}

/* 8. Colors — always blue */
#wp-header-wrap .uael-menu-item,
#wp-header-wrap .uael-nav-menu li a,
#wp-header-wrap .elementor-icon i { color: #004B64 !important; }

/* 9. Nav horizontal */
#wp-header-wrap .uael-nav-menu-layout {
  display: flex !important; flex-direction: row !important; align-items: center !important;
}
#wp-header-wrap .uael-nav-menu__layout-horizontal {
  position: static !important; display: flex !important;
  flex-direction: row !important; align-items: center !important;
  background: transparent !important; width: auto !important; max-width: none !important;
  left: auto !important; top: auto !important; box-shadow: none !important;
  padding: 0 !important; margin: 0 !important;
}
#wp-header-wrap .uael-nav-menu__layout-horizontal > ul.uael-nav-menu {
  display: flex !important; flex-direction: row !important; align-items: center !important;
  list-style: none !important; margin: 0 !important; padding: 0 !important; gap: 20px !important;
}
#wp-header-wrap .uael-nav-menu li {
  display: flex !important; align-items: center !important; float: none !important;
}
#wp-header-wrap .uael-menu-item {
  text-decoration: none !important; font-weight: 600 !important;
  font-size: 14px !important; white-space: nowrap !important;
  line-height: 1 !important; padding: 0 !important;
}

/* 10. Social icons */
#wp-header-wrap .elementor-social-icons-wrapper {
  display: flex !important; flex-direction: row !important;
  align-items: center !important; gap: 10px !important;
}
#wp-header-wrap .elementor-grid-item { display: flex !important; align-items: center !important; }
#wp-header-wrap .elementor-screen-only,
#wp-header-wrap .screen-reader-text {
  position: absolute !important; width: 1px !important; height: 1px !important;
  overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important;
}
#wp-header-wrap .elementor-icon {
  display: flex !important; align-items: center !important;
  justify-content: center !important; width: 30px !important; height: 30px !important;
  text-decoration: none !important;
}
#wp-header-wrap .elementor-icon i {
  font-size: 16px !important; display: block !important; color: #004B64 !important;
}

/* 11. Hide HTML widget */
#wp-header-wrap .elementor-widget-html { display: none !important; }

/* 12. Desktop: hide burger */
@media (min-width: 1025px) {
  #wp-header-wrap .uael-nav-menu__toggle { display: none !important; }
}

/* 13. MOBILE */
@media (max-width: 1024px) {
  #wp-header-wrap { height: 60px !important; overflow: visible !important; }

  #wp-header-wrap .elementor-6635,
  #wp-header-wrap #sticky-header-fixed {
    height: 60px !important; max-height: 60px !important; padding: 0 16px !important;
  }
  #wp-header-wrap .elementor-element-2fba93b,
  #wp-header-wrap .elementor-element-2fba93b > .e-con-inner,
  #wp-header-wrap .elementor-element-27fb92f {
    height: 60px !important; max-height: 60px !important;
  }

  /* Right column: row, both on right */
  #wp-header-wrap .elementor-element-183a4ac {
    height: 60px !important; max-height: 60px !important;
    gap: 12px !important; overflow: visible !important;
    flex-direction: row !important;
    justify-content: flex-end !important;
  }

  /* Social icons: order 1 (left of burger) */
  #wp-header-wrap .elementor-widget-social-icons {
    display: flex !important;
    order: 1 !important;
  }

  /* Nav widget (contains burger): order 2 (rightmost) */
  #wp-header-wrap .elementor-widget-uael-nav-menu {
    order: 2 !important;
  }

  /* Hide desktop nav */
  #wp-header-wrap .uael-nav-menu__layout-horizontal { display: none !important; }

  /* Show burger */
  #wp-header-wrap .uael-nav-menu__toggle {
    display: flex !important; align-items: center !important;
    cursor: pointer !important; color: #004B64 !important;
    background: transparent !important; border: none !important; padding: 0 !important;
  }
  #wp-header-wrap .uael-nav-menu__toggle i { font-size: 22px !important; color: #004B64 !important; }

  /* Mobile dropdown */
  #wp-header-wrap .uael-nav-menu__layout-horizontal.my-menu-open {
    display: flex !important; flex-direction: column !important;
    position: fixed !important; top: 60px !important; left: 0 !important; right: 0 !important;
    width: 100vw !important; max-width: 100vw !important;
    background: #ffffff !important; box-shadow: 0 4px 15px rgba(0,0,0,0.12) !important;
    z-index: 999999 !important; padding: 8px 0 !important; margin: 0 !important;
  }
  #wp-header-wrap .uael-nav-menu__layout-horizontal.my-menu-open > ul.uael-nav-menu {
    flex-direction: column !important; gap: 0 !important; width: 100% !important;
  }
  #wp-header-wrap .uael-nav-menu__layout-horizontal.my-menu-open li {
    width: 100% !important; border-bottom: 1px solid rgba(0,75,100,0.08) !important;
  }
  #wp-header-wrap .uael-nav-menu__layout-horizontal.my-menu-open li a {
    color: #004B64 !important; padding: 12px 20px !important;
    display: flex !important; width: 100% !important; justify-content: flex-end !important;
  }
  #obsidian-spacer { height: 60px !important; }
}

/* 14. Spacer + body */
#obsidian-spacer { height: 70px !important; display: block !important; width: 100% !important; }
.published-container { position: relative !important; z-index: 1 !important; }
body { margin-top: 0 !important; padding-top: 0 !important; }
