/* Schriften definieren */
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  font-weight:400 !important;
}
/* Kein Unterstrich bei Links */
a,
a:visited {
  text-decoration: none;
}

/* Blocksatz möglich machen */
.text-justify {
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
}

/* häufig sinnvoll, weil RTE gern <p><span>…</span></p> erzeugt */
.text-justify * {
  hyphens: auto;
}

/* Nirgendwo Radien */
*,
*::before,
*::after {
  border-radius: 0 !important;
}

/* Kontaktseite */
.pt-widget-contacts li {
    list-style: none;
    margin-bottom: 15px;
    position: relative;
    position:center;
    padding-left: 10px;
}

/* ==================================================== */
/* Home Slider anpassen */
/* Der Flex-Container soll die volle Breite nutzen */
.carousel-item-type-call_to_action .carousel-content-inner {
  display: flex;
  width: 100%;
}

/* Box nach rechts schieben */
.carousel-item-type-call_to_action .carousel-box {
  margin-left: auto;
  margin-right: 10%;
  float: none;
  flex: 0 0 auto;       /* verhindert, dass sie sich „streckt“ */
  color: #fff;
  background-color: rgba(40,143,183,0.8);
}
.carousel-item a{
  background: #555;
  border-color: #555;
  color: #fff;
}

.carousel-item a:hover{ 
  background: #ccc;
  border-color: #ccc;
  color: #555;
}

/* ==================================================== */
/* Footer anpassen */

/* Footer: Hintergrund */
#page-footer.bp-page-footer,
#page-footer.bp-page-footer .footer-section-content,
#page-footer.bp-page-footer .footer-section-meta {
  background-color: rgb(232, 232, 232);
}

/* Footer: Textfarben */

#page-footer.bp-page-footer,
#page-footer.bp-page-footer p,
#page-footer.bp-page-footer li {
  color: rgb(33, 33, 33);
}

/* ==================================================== */
/* Header mit Navigation anpassen */

.navbar-default {
  background-color: #e8e8e8 !important;
}

@media (min-width: 992px) { /* Desktop */
  #page-header .container-mainnavigation {
    display: flex;
    align-items: center;
  }

  /* Navi-Leiste schmaler */
  .navbar-mainnavigation {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  #page-header #mainnavigation {
    margin-left: auto;        /* schiebt die Navigation nach rechts */
  }

  #page-header #mainnavigation {
    margin-left: auto;
    width: auto;
    flex: 0 0 auto;
  }

  /* Logo darf nicht skalieren/transformieren */
  #page-header .navbar-brand img.navbar-brand-logo-normal,
  #page-header .navbar-brand img.navbar-brand-logo-inverted {
    height: 48px;
    max-height: 48px;
    width: auto;
  }

    /* Toggle/Pfeil/Indicator ausblenden */
  #page-header #mainnavigation .nav-link-toggle,
  #page-header #mainnavigation .nav-link-indicator,
  #page-header #mainnavigation .nav-link-text.visually-hidden {
    display: none !important;
  }

  /* Referenzpunkt für Dropdown-Position */
  #page-header #mainnavigation .nav-item {
    position: relative;
  }

  /* Dropdown-Grundlayout (geschlossen) */
  #page-header #mainnavigation .nav-item > .dropdown-menu {
    display: none;
    top: 100%;
    left: 0;
    margin-top: 6px;
    transform: none;
    width: max-content;

    /* Optik/Usability */
    padding: 0.5rem 0;          /* vertikales Padding im Menü */
  }

   /* Hover-Brücke: verhindert "Box geht zu" beim Übergang */
  #page-header #mainnavigation .nav-item::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    height: 10px;            /* Übergangsbereich */
  }

  /* Items im Dropdown: klickbar machen + Radien weg */
  #page-header #mainnavigation .dropdown-menu a,
  #page-header #mainnavigation .dropdown-menu .dropdown-item {
    display: block;
    padding: 0.1rem 1rem;
    white-space: nowrap;        /* optional: verhindert Zeilenumbrüche */
  }

  /* --- Öffnen nur bei echten Submenus --- */

  /* Standard: nur öffnen, wenn mindestens ein Link im Dropdown existiert */
  #page-header #mainnavigation .nav-item:hover > .dropdown-menu:has(a) {
    display: block;
  }
}

@media (max-width: 991.98px) {  /* mobile */

  /* Headerhöhe für die Position des Overlays (anpassen, falls nötig) */
  :root { --fl-header-h: 70px; }

  /* Offset auf den eigentlichen Content-Bereich geben */
  main#page-content,
  .bp-page-content {
    padding-top: var(--fl-header-h) !important;
  }
  
  /* Header über dem Content */
  #page-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 4000;
  }

  /* MAINNAV als Overlay nur im geöffneten/öffnenden Zustand */
  #page-header #mainnavigation.navbar-collapse.collapse.show,
  #page-header #mainnavigation.navbar-collapse.collapsing {
    position: fixed;
    top: var(--fl-header-h);
    left: 0;
    right: 0;
    z-index: 3500;

    background: rgb(232, 232, 232);
    max-height: calc(100vh - var(--fl-header-h));
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  /* Wenn geschlossen: nicht sichtbar */
  #page-header #mainnavigation.navbar-collapse.collapse:not(.show) {
    display: none;
  }

  /* Default: Submenu zu */
  #page-header #mainnavigation .dropdown-menu {
    display: none;
  }

  /* Offen: anzeigen (je nach Markup) */
  #page-header #mainnavigation .dropdown-menu.show,
  #page-header #mainnavigation .show > .dropdown-menu,
  #page-header #mainnavigation .dropdown.show > .dropdown-menu {
    display: block;
  }

  /* Submenu: inline/accordionartig statt floating box */
  #page-header #mainnavigation .dropdown-menu,
  #page-header #mainnavigation .dropdown-menu.dropdown-menu-simple {
    position: static !important;
    transform: none !important;

    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;

    margin: 0 !important;
    padding: 0.25rem 0 0.5rem 1rem !important;
  }

  /* Falls Box-Optik von inneren Elementen kommt */
  #page-header #mainnavigation .dropdown-menu * {
    box-shadow: none !important;
    border: 0 !important;
    background: transparent !important;
  }

  /* Submenu-Einträge immer vertikal */
  #page-header #mainnavigation .dropdown-menu ul,
  #page-header #mainnavigation .dropdown-menu li,
  #page-header #mainnavigation .dropdown-menu a,
  #page-header #mainnavigation .dropdown-menu .dropdown-item {
    display: block !important;
    width: 100% !important;
    flex: none !important;
    white-space: normal;
  }
}


/* Tab Layout Leistungen */
.tab-navigation {
    margin-bottom:0px;
}

.tab-content > .active{
    border-style: solid;
    border-color: #dee2e6;
    border-width: 1px;
    border-top-color: #fff;
    background-color: #fff;
    padding: 1em;
    padding-top: 2em;
}

.nav-tabs .nav-link {
    border: 1px solid #dee2e6;
}

.nav-tabs .nav-link.active, .nav-tabs .nav-item.show .nav-link {
    color: #495057;
    background-color: #fff;
    border-color: #dee2e6 #dee2e6 #ffffff;
}


