/* Customized CSS */
/* fira-sans-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Fira Sans';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/fira-sans-v17-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* fira-sans-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Fira Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/fira-sans-v17-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* fira-sans-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Fira Sans';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/fira-sans-v17-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* fira-sans-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Fira Sans';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/fira-sans-v17-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* fira-sans-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Fira Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/fira-sans-v17-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* fira-sans-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Fira Sans';
  font-style: normal;
  font-weight: 800;
  src: url('../fonts/fira-sans-v17-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* bad-script-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Bad Script';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/bad-script-v16-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


html, body {
  font-family: 'Fira Sans' !important;
  /*font-family: 'Open Sans'; */
}
body {
  background: white;
  color: #1D1D1B !important;
}
main {
  min-height: 62vh;
}
h1, h2, h3, h4, h5, h6, a {
  font-family: 'Fira Sans' !important;
}
.text_deco {
  font-family: 'Bad Script' !important;
}
.container-fluid {
    padding: 0 !important;
}

.container {
  max-width: 992px !important;
}

header, footer {
  padding: 0;
  z-index: 1520 !important;
}
.bg-darkrosa {
  /*background: rgb(128, 24, 71);*/
  background: #801847;
}
.text-darkrosa {
  /*color: rgb(128, 24, 71);*/
  color: #801847;
}
.text-rosa {
  /*color: rgb(230, 42, 88);*/
  color: #E62A58;
}

.bg-green {
  background: rgb(174, 185, 21);
  background: #aeb915;
}
.text-green {
  color: rgb(174, 185, 21);  
  color: #aeb915;
}

.bg-hellgray {
  background: rgb(248, 249, 243);  
  background: #F7F9F2;
}

.bg-yellow {
  /*background: rgb(253, 193, 0);*/
  background: #FDC100;
}
.bg-yellow1 {
  /*background: rgb(250, 211, 31);*/
  background: #FAD31F;
}
#logo-text {
  max-height: 105px;
}

.nav-top {
  background: #aeb915;
}
#logo-img img {
  position: fixed;
  top: .5rem;
  right: 1.0rem;
  max-width: 300px;
  z-index: 1560;
}

.nav-item {
  background: #801847  !important;
  min-width: 105px;
  margin-left: 1.5rem;
}
a.nav-link {
  padding: .75rem .75rem 0 .75rem !important;
  text-align: center !important;
  font-weight: 500 !important;
  color: white !important;
}
.nav-item:hover a.nav-link, 
.nav-item.active a.nav-link {
  color: #aeb915 !important;
}
.nav-item:hover {
  background: #E62A58  !important;
}
.navbar-toggler-icon,
.btn-close:not(.alert .btn-close) {
  filter: invert(100%);
}
main {
  margin-top: 275px;
}
.anmelde {
  min-height: 52vh !important;
  background: #F7F9F2;
}
.anmelde-form {
  max-width: 280px;
  min-width: 250px;
}
.start-bottom {
  background: url('../images/home/start_bottom.jpg') no-repeat center;
  background-position: center;
  background-size: cover;
}
.concept-bottom {
  background: #FDC100 url('../images/concept/concept-imgH.jpg') no-repeat;
  background-size: contain;
}
/* ----- Taste scroll-Top ----- */
.scrollup {
    position: fixed;
    bottom: 20px;
    right: 10px;
    background: rgba(0, 0, 0, .5) !important;
    color: rgb(255, 255, 255);
    cursor: pointer;
    z-index: 1540;
}
#ds_blok {
  background: rgba(0,0,0, .5);
}
#send-alert, #fehler-alert {
  display: none;
  max-height: 70px;
  /*
  left: 1.0rem;
  right: 1.0rem;
  bottom: .5rem;
  */
}
.alert.erfolg {
  z-index: 1600 !important;
}
.personen {
  position: relative;
  background: #F7F9F2;
}
.personen .fs-5 {
  font-size: 1.1rem !important;
}
.personen .facebook img {
  max-height: 36px;
  width: auto;
}
.foto-persona img {
  max-width: 180px;
}
.firma-logo img {
  max-width: 160px;
}
.kontakt img {
  max-width: 300px !important;
}
.galerie {
  background: rgba(0, 0, 0, .7);
}
article {
  min-height: 56vh;
}
.members_new form div:nth-child(n+2),
.chronik_new form div:nth-child(n+2) {
  background: #F7F9F2;
}

.form-control-sm {
  min-height: 1.7rem !important;
}
.form-check .form-check-input {
  margin-left: 0 !important;
}
.form-check-input:checked {
  background-color: #801847 !important;
  border-color: #801847 !important;
}
.chronik_update table, 
form#chronik_update {
  max-width: 300px !important;
}
.members_update table {
  max-width: 400px !important;
}
.chronik_update .table-container, 
.members_update .table-container {
  max-height: 375px !important;
  
}
.chronik_update td, .members_update td {
  padding: .173rem .4rem !important;
}
.chronik_update tbody tr td:nth-child(2) {
  text-align: center !important;
}
table.scroll thead tr:after {	
  /*content: '';	*/
  overflow-y: scroll;	
  visibility: hidden;
}
table.scroll thead td {	
  border-bottom: 0 !important;
}
table.scroll tbody {	
  display: block;	
  width: 100%;	
  overflow-y: auto;	
  height: auto;
  max-height: 375px !important;
}
table.scroll thead tr,
table.scroll tbody tr {	
  display: flex;
  justify-content: space-between;
}
table.scroll tbody tr td {	
  flex: 1 auto;	
  word-wrap: break;
}
table.scroll tbody tr td:first-child {	
  max-width: 3.0rem !important;
}
table.scroll tbody tr td:last-child {	
  max-width: 4.0rem !important;
}
footer .nav-item {
  max-width: 130px !important;
  margin-left: 1.0rem;
}
footer img {
  max-width: 45px;
  height: auto;
}
footer a {
  color: white;
}
footer .nav-item:hover, footer .nav-item.active {
  background: #ab2f13  !important;
  box-shadow: none !important;
}

@media screen and (max-width: 1400px){

}
@media screen and (max-width: 1300px){
  #logo-img img {
    max-width: 200px;
  }
}
@media screen and (max-width: 992px) {
  #offcanvasDarkNavbar {
    background: #801847 !important;
    z-index: 1560 !important;
  }
  #offcanvasDarkNavbar .nav-link {
    padding: 1.0rem !important;
    border: none !important;
  }
  .icon-link img {
    max-width: 50px;
  }
  .card-group {
    display: block !important;
    flex-flow: row wrap;
  }
  .home .card:nth-child(2) {
    max-width: 100% !important;
  }
  .nav-item {
    width: 100%;
    padding-bottom: 0 !important;
    margin-left: .5rem !important;
  }
  #logo-text { 
    width: 50vw !important;
    top: 20px;
  }
  #logo-img img {
    right: .5rem;
  }
  main {
    margin-top: 180px;
  }
  .jobs form textarea {
    height: 130px;
  }
  .start-bottom {
    background-position-x: left 35%;
  }
  .concept-bottom {
    background: #FDC100;
  }
  .concept-bottom ul {
    max-width: 450px;
    margin: 1.5rem auto !important;
    margin-top: 0 !important;
  }
}

@media screen and (max-width: 780px){
  header h5 {
    font-size: 1.0rem !important;
  }
  #logo-img img {
    width: 22vw;
  }
  .start-bottom {
    background: #F7F9F2;
  }
  .start-bottomM {
    background: url('../images/home/start_bottom.jpg') no-repeat center;
    background-position: center;
    background-size: cover;
  }
  .chronik_update .table-container, 
  .members_update .table-container  {
    max-height: 375px !important;
  }
  
  form#members_update {
    max-width: 400px !important;
  }
}

@media screen and (max-width: 580px){
  header p.fs-5 {
    font-size: 1.0rem !important;
    text-align: center;
  }
  .kontakt p {
    font-size: 1.0rem !important;
  }
  #logo-text { 
    top: 0px;
    max-height: 50px;
  }
  main {
    margin-top: 150px;
  }
  footer img {
    max-width: 40px;
    height: auto;
  }
}

@media screen and (max-width: 420px) {
  #logo-text { 
    max-height: 40px;
  }
  .navbar-brand.fs-4 {
    font-size: 1.0rem !important;
  }
  .navbar-brand .fs-6 {
    font-size: .87rem !important;
  }
  main {
    margin-top: 120px;
  }
  .start-bottomM {
    background-position-x: left 75%;
  }
}