/* Helper class used by the script to hide/show rows
   (keeps original display type when visible) */
.rowa-hidden {
  display: none !important;
}

:root {
  --rowa-admin-offset: 0px;
}

/* Small header (Zeile B): keep it pinned to the top of the viewport.
   Using fixed instead of sticky avoids "sticky container" edge cases
   where the header suddenly stops and scrolls away. */
.zeile-b {
  position: fixed;
  top: var(--rowa-admin-offset);
  left: 0;
  right: 0;
  z-index: 9999;
}

/* Fix: Logo wird in Safari/Firefox bei kleineren Viewports abgeschnitten */
@media (max-width: 1100px) {

  /* Safari/FF: Flex-Items dürfen sonst nicht sauber schrumpfen */
  .zeile-a .et_pb_menu__wrap,
  .zeile-b .et_pb_menu__wrap,
  .zeile-a .et_pb_row,
  .zeile-b .et_pb_row {
    min-width: 0 !important;
  }

  .zeile-a .et_pb_menu__logo-wrap,
  .zeile-b .et_pb_menu__logo-wrap {
    flex: 0 1 auto !important;   /* darf schrumpfen */
    min-width: 0 !important;     /* wichtig für Safari/FF */
    overflow: visible !important;
  }

  .zeile-a .et_pb_menu__logo,
  .zeile-b .et_pb_menu__logo {
    overflow: visible !important;
  }

  .zeile-a .et_pb_menu__logo img,
  .zeile-b .et_pb_menu__logo img {
    max-width: 100% !important;
    width: auto !important;
    height: auto !important;
    display: block !important;
  }

  /* optional: wenn es nur 1–2px „angeschnitten“ ist */
  .zeile-a .et_pb_menu__logo-wrap,
  .zeile-b .et_pb_menu__logo-wrap {
    padding-left: 4px !important;
    padding-right: 4px !important;
  }
}
