body {
  overflow-x: hidden;
}


/* ===========================
   Hauptlayout
   =========================== */


/* ===========================
   Sidebar
   =========================== */


.sidebar {
  width: 260px;
  min-width: 260px;
  min-height: 100vh;
  background: #fff;
  box-shadow: 1px 0 0 #E9ECEF;
}


/* Überschrift */
.sidebar h4 {
  color: #212529;
}


/* Navigation */

.sidebar .nav-link {
  color: #495057;
  display: flex;
  align-items: center;
  border-radius: .5rem;
  margin-bottom: .25rem;
  transition: all .2s ease;
}


/* Icons */

.sidebar .nav-link i {
  width: 24px;
  text-align: center;
  color: #6c757d;
}


/* Hover */

.sidebar .nav-link:hover {
  background: #f8f9fa;
  color: #0d6efd;
}

.sidebar .nav-link:hover i {
  color: #0d6efd;
}


/* Aktiver Menüpunkt */

.sidebar .nav-link.active {
  background: #e7f1ff;
  color: #0d6efd;
  font-weight: 600;
}

.sidebar .nav-link.active i {
  color: #0d6efd;
}


/* ===========================
   Hauptinhalt
   =========================== */

.flex-grow-1 {
  flex: 1;
}


/* ===========================
   Kleine Bildschirme
   Sidebar nur mit Symbolen
   =========================== */

@media (max-width: 991.98px) {

  .sidebar {
    width: 80px;
    min-width: 80px;
  }


  /* Menütexte ausblenden */
  .sidebar .nav-link span {
    display: none;
  }


  /* Überschrift Text ausblenden */
  .sidebar h4 span {
    display: none;
  }


  /* Icons zentrieren */
  .sidebar .nav-link {
    justify-content: center;
    padding: .75rem;
    font-size: 1.4rem;
  }


  .sidebar .nav-link i {
    width: auto;
  }


  /* Überschrift */
  .sidebar h4 {
    text-align: center;
  }

}

/* Dashboard Hero Card */
.hero-card {
  background: linear-gradient(135deg, #ffffc8, #6ea8fe);

  border-radius: 20px;
}

.hero-banner {
  min-height: 360px;
  border-radius: .75rem;
  overflow: hidden;

  background: #fff url("../images/familie-dellhofen.jpg") center center no-repeat;
  background-size: cover;
}

.hero-banner .card-body {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.hero-card .row {
  min-height: 360px;
}

.hero-card .col-lg-6 {
  display: flex;
}

.hero-card .col-lg-6 > * {
  flex: 1;
}

.rpl {
  padding-right: 30px;
}

footer {
  background: #f8f9fa;
}

.navbar h5 {
  color: #374151;
}

.sidebar-brand {
  font-size: 22px;
  font-weight: 700;
  color: #4B49AC;
  padding: 30px 25px;
}
