html,
body {
  overflow-x: hidden; /* Prevent scroll on narrow devices */
}

body {
  padding-top: 56px;
}
#jv_events_filter_categories INPUT ,
#jv_events_filter_tags INPUT {
  margin-right: 8px;
}
.filter.organizer form .fieldsets fieldset label {
  font-weight: normal;
  display: inline-block;
  margin-right: 10px;
  min-width: 180px;
}


.hints P {
  padding-left: 8px;
}
/*   line is used  for headlines ! */
.max-1-line {
  max-height: 1.5rem;
  overflow:hidden;
}

.max-2-lines {
  max-height: 3rem;
  overflow:hidden;
}
.max-3-lines {
  max-height: 4.5rem;
  overflow:hidden;
}
.sm .max-3-lines {
  margin-bottom: 2rem !important;
}

.max-4-lines {
  max-height: 6rem;
  overflow:hidden;
}
.min-height-6-lines {
  min-height: 10rem;
}
.sm .min-height-6-lines {
  min-height: 4rem;
}

.position-bottom {
  position: absolute;
  bottom: 0;
}

.position-right {
  position: absolute;
  right: 0;
}
.position-left {
  position: absolute;
  left: 0;
}
.position-top {
  position: absolute;
  top: 0;
}
#mainnavIcons .navbar-nav {
  flex-direction: row;
}

@media (max-width: 768.98px) {
  .max-4-lines {
    max-height: 8rem;
  }
  .offcanvas-collapse {
    position: fixed;
    top: 56px; /* Height of navbar */
    bottom: 0;
    left: 100%;
    width: 100%;
    padding-right: 1rem;
    padding-left: 1rem;
    overflow-y: auto;
    visibility: hidden;
    background-color: #343a40;
    transition-timing-function: ease-in-out;
    transition-duration: .3s;
    transition-property: left, visibility;
  }
  .offcanvas-collapse.open {
    left: 0;
    visibility: visible;
  }
  .jv-events-singleLocation.jv-events-row .card-title {
    max-height: 1.5rem;
    overflow: hidden;
  }
  .jv-events-singleLocation.jv-events-row .card {
    border-top: none
  }
  .jv-events-singleLocation.jv-events-row .my-4 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .jv-events-singleLocation.jv-events-row {
    max-height: unset;
  }
}

.nav-scroller {
  position: relative;
  z-index: 2;
  height: 3.75rem;
  overflow-y: hidden;
  margin-bottom: 16px;
}

.nav-scroller .nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding-bottom: 1rem;
  margin-top: -1px;
  overflow-x: auto;
  color: rgba(255, 255, 255, .75);
  text-align: center;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
}

.nav-underline .nav-link {
  padding: .85rem 0.5rem .75rem 0 !important;
}
.nav-underline .nav-link:last-of-type {
  padding: .85rem 0.5rem .75rem 2rem !important;
}
.nav-underline .nav-link:first-of-type {
  padding-left: 0px !important;
}

.nav-underline .nav-link .btn SPAN {
  font-size: .8rem;
}

.mh-sm {
  margin-left: .5rem;
  margin-right: .5rem;
}
.mh-md {
  margin-left: 1rem;
  margin-right: 1rem;
}

.mv-sm {
  margin-top: .5rem;
  margin-bottom: .5rem;
}
.mv-md {
  margin-top: 1rem;
  margin-bottom: 1rem;
}


.text-white-50 { color: rgba(255, 255, 255, .5); }

.bg-red { background-color: #AA221d; }

.lh-100 { line-height: 1; }
.lh-125 { line-height: 1.25; }
.lh-150 { line-height: 1.5; }

main {
  margin-bottom: 80px;
}

.nav-tabs a.active {
  font-weight: bolder;
}

@keyframes fade {
  from { opacity: 1.0; }
  50% { opacity: 0.5; }
  to { opacity: 1.0; }
}

@-webkit-keyframes fade {
  from { opacity: 1.0; }
  50% { opacity: 0.5; }
  to { opacity: 1.0; }
}

.blink {
  animation:fade 1000ms infinite;
  -webkit-animation:fade 1000ms infinite;
}
.cursor-pointer {
  cursor: pointer;
}