html {
  scroll-behavior: smooth; }

body {
  margin: 0 auto;
  font-size: 16px; }

h2 {
  font-size: 32px !important;
  font-weight: 900 !important;
  color: #1e3957; }

[type="button"], [type="reset"], [type="submit"], button {
  -webkit-appearance: none !important; }

p a {
  text-decoration: underline; }

.fab.fa-facebook-f {
  width: 1px; }

.heading {
  hyphens: auto; }

.heading::before {
  content: "";
  display: block;
  height: 50px;
  width: 10px;
  background-color: #1e3957;
  position: absolute;
  left: 0; }

.btn.btn-primary {
  color: #1e3957;
  font-size: 24px;
  font-style: italic;
  font-weight: 300;
  background-color: transparent;
  border: none; }

.btn.btn-secondary {
  background-color: transparent;
  border-radius: 0;
  border: none;
  border-bottom: 2px solid #1E3957;
  min-width: 150px; }
  .btn.btn-secondary a {
    color: #1E3957;
    font-weight: bold;
    text-decoration: none; }
  .btn.btn-secondary a:hover, .btn.btn-secondary a:focus, .btn.btn-secondary a:focus-within, .btn.btn-secondary a:active {
    color: #cdcdca;
    font-weight: bold;
    text-decoration: none; }

.btn.btn-primary:hover, .btn.btn-primary:focus, .btn.btn-primary:focus-within, .btn.btn-primary:active {
  background-color: transparent !important;
  color: #1e3957 !important; }

.btn.btn-secondary:hover, .btn.btn-secondary:focus, .btn.btn-secondary:focus-within, .btn.btn-secondary:active {
  background-color: transparent !important;
  color: #1E3957 !important;
  border-bottom: 2px solid #1E3957 !important; }

.btn.btn-link {
  padding: 0; }

.collapse, .collapsing {
  color: #444;
  font-weight: 300;
  margin-bottom: 30px;
  padding: 0 30px; }

.cookie-btn {
  padding: 5px;
  background-color: #fff; }

#my-accordion .btn.btn-secondary a:hover, #my-accordion .btn.btn-secondary a:focus, #my-accordion .btn.btn-secondary a:focus-within, #my-accordion .btn.btn-secondary a:active {
  color: #1E3957; }

.accordion-item h4 {
  padding: 15px 30px !important;
  width: 100%;
  text-align: left;
  color: #1e3957;
  font-weight: 800;
  margin-bottom: 15px;
  border: none !important;
  border-bottom: 2px solid #1e3957 !important;
  border-radius: 0 !important;
  background-color: transparent !important; }
.accordion-item h4:hover {
  color: #1e3957;
  text-decoration: none; }

.carousel-caption {
  color: #444 !important;
  background-color: rgba(255, 255, 255, 0.8);
  padding: 5px !important;
  font-size: 11px; }

.sidebar {
  width: 30%;
  margin-left: 5%;
  text-align: center; }

header {
  height: 55px;
  width: 100vW;
  background-color: #ffffff; }
  header .container, header .row {
    height: 55px; }
  header .logo-img {
    position: absolute;
    left: 0;
    top: -25px; }
  header .nav-link {
    font-family: 'Lato';
    font-size: 16px;
    color: #dd000d; }

main {
  margin-top: 55px; }
  main .fullsize-slideshow .col-12 {
    padding: 0; }
  main .fullsize-slideshow .teaser-box {
    top: 55px;
    width: 100%;
    margin-left: 0;
    height: calc(100vH - 100px); }
  main .fullsize-slideshow .teaser {
    color: #fff;
    background-color: rgba(221, 0, 13, 0.7); }
    main .fullsize-slideshow .teaser h1 {
      font-size: 68px;
      font-weight: 900;
      text-transform: uppercase;
      margin: 15px 0 0 0; }
    main .fullsize-slideshow .teaser h2 {
      font-size: 28px;
      font-style: italic;
      margin-bottom: 15px;
      color: #ffffff; }
    main .fullsize-slideshow .teaser p {
      line-height: 24px; }
  main .fullsize-slideshow .control {
    width: 100%;
    margin: 0;
    height: 50px;
    bottom: 105px; }
    main .fullsize-slideshow .control .indicators {
      font-size: 28px;
      color: #ffffff;
      font-style: italic;
      display: flex;
      margin-top: 5px; }
      main .fullsize-slideshow .control .indicators .num {
        display: none; }
      main .fullsize-slideshow .control .indicators .num.active {
        display: block; }
      main .fullsize-slideshow .control .indicators p {
        margin: 0; }
      main .fullsize-slideshow .control .indicators .line {
        width: 100px;
        border-bottom: 2px solid #fff;
        position: relative;
        bottom: 18px;
        margin: 0 15px; }
    main .fullsize-slideshow .control .carousel-control-prev, main .fullsize-slideshow .control .carousel-control-next {
      width: 50px;
      height: 50px;
      background-color: #dd000d;
      opacity: 1;
      border-radius: 25px;
      cursor: pointer; }
    main .fullsize-slideshow .control .carousel-control-prev {
      left: unset;
      right: 125px; }
    main .fullsize-slideshow .control .carousel-control-next {
      right: 60px; }
  main #carousel-top {
    height: calc(100vH - 100px);
    width: 100%; }
  main .carousel .carousel-inner {
    height: 100%; }
    main .carousel .carousel-inner .carousel-item {
      height: 100%; }
      main .carousel .carousel-inner .carousel-item img {
        height: 100%;
        width: 100%;
        object-fit: cover;
        object-position: bottom; }
  main .text-2-cols p {
    font-weight: 300; }
  main .image-2-cols img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center; }
  main .news p {
    font-weight: 300; }
  main .news .thumb img {
    height: 165px;
    width: 100%;
    object-fit: cover;
    object-position: bottom; }
  main .news .box {
    min-height: 255px;
    background-color: #dd000d;
    position: relative;
    color: #ffffff; }
    main .news .box h3 {
      font-size: 20px;
      font-weight: 900; }
    main .news .box .date {
      position: absolute;
      right: 1.5rem;
      bottom: 0;
      font-style: italic; }
  main .news .modal-content {
    background-color: #dd000d;
    color: #fff; }
    main .news .modal-content .close, main .news .modal-content .close:hover {
      color: #fff;
      text-shadow: none;
      opacity: 1; }
    main .news .modal-content p {
      font-weight: 400 !important; }
    main .news .modal-content .modal-header {
      border-bottom: none; }
  main .news .news-item {
    display: none;
    cursor: pointer; }
  main .news .more {
    border-top: 2px solid #cdcdc3; }
  main .events {
    color: #cc922f; }
    main .events #plugin_wp_cal {
      width: 65%; }
    main .events .date {
      font-weight: 300;
      font-style: italic; }
    main .events .title a {
      color: #cc922f;
      font-weight: 900;
      font-size: 20px;
      text-decoration: none; }
    main .events .categorie {
      font-weight: 300;
      color: #000; }
    main .events .more {
      color: #cc922f;
      font-weight: 900; }
    main .events .date, main .events .title, main .events .categorie {
      margin-bottom: 5px; }
    main .events h3 {
      color: #0f1f2f;
      font-weight: 900;
      font-size: 32px; }
    main .events .ui-datepicker-prev-hover, main .events .ui-datepicker-next-hover {
      background-color: transparent;
      border: none; }
    main .events .ui-datepicker-title {
      color: #cc922f;
      text-transform: uppercase; }
    main .events .fas.fa-chevron-circle-left, main .events .fas.fa-chevron-circle-right {
      color: #cc922f;
      margin-top: 10px; }
    main .events .ui-state-default, main .events .ui-state-hover {
      background-color: transparent;
      color: #000;
      font-weight: 300;
      border: none;
      text-align: center !important; }
    main .events .ui-datepicker-today a {
      color: #cc922f;
      font-weight: bold; }
    main .events .ui-datepicker-current-day a {
      color: #ffffff;
      background-color: #cc922f;
      font-weight: bold; }
    main .events thead {
      border-bottom: 1px solid rgba(128, 128, 128, 0.25); }
    main .events .detailview .title h3 {
      color: #cc922f; }
    main .events .detailview .desc {
      color: #000; }
    main .events .detailview .place {
      color: #000;
      margin-bottom: 30px; }
  main .w-bgr {
    color: #cdcdc3; }
    main .w-bgr h2 {
      color: #cdcdc3;
      font-weight: bold !important;
      font-size: 68px !important; }
    main .w-bgr h3 {
      font-size: 32px;
      border-bottom: 2px solid #cdcdc3; }
    main .w-bgr p.subline {
      font-size: 28px !important;
      font-style: italic; }
    main .w-bgr .btn.btn-secondary {
      border-bottom: 2px solid #cdcdc3; }
      main .w-bgr .btn.btn-secondary a {
        color: #cdcdca; }
    main .w-bgr .btn.btn-secondary:hover, main .w-bgr .btn.btn-secondary:focus, main .w-bgr .btn.btn-secondary:focus-within, main .w-bgr .btn.btn-secondary:active {
      background-color: transparent !important;
      color: #cdcdca !important;
      border-bottom: 2px solid #cdcdca !important; }
    main .w-bgr .vorstand p {
      margin: 0; }
    main .w-bgr .vorstand .profil-img {
      width: 50%;
      position: relative; }
      main .w-bgr .vorstand .profil-img img {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        height: 100%;
        object-fit: cover;
        object-position: right;
        border-radius: 50%;
        width: 100%; }
    main .w-bgr .vorstand .profil-img::before {
      content: "";
      padding-top: 100%;
      display: block; }
    main .w-bgr .vorstand .name {
      font-family: "Roboto Condensed";
      text-transform: uppercase; }
    main .w-bgr .vorstand .unternehmen {
      font-weight: 300;
      text-transform: uppercase; }
  main .partner-slideshow .carousel-control-prev, main .partner-slideshow .carousel-control-next {
    top: -40px;
    height: 40px;
    color: #555;
    font-size: 30px;
    width: 0; }
  main .partner-slideshow .carousel-control-prev {
    text-align: left; }
  main .partner-slideshow .carousel-control-next {
    text-align: right; }
  main .partner-slideshow .img-fluid {
    object-fit: contain !important;
    object-position: center !important; }

footer {
  background-repeat: no-repeat;
  width: 100%;
  background-size: cover;
  background-position: center;
  color: #cdcdc3; }
  footer h2 {
    color: #cdcdc3; }
  footer .heading::before {
    background-color: #cdcdc3; }
  footer p {
    margin: 0;
    font-weight: 300; }
    footer p .right {
      position: absolute;
      left: 50px; }
  footer p.copyright {
    font-family: 'Roboto Condensed'; }
  footer a {
    color: #cdcdc3;
    text-decoration: none; }
  footer a:hover {
    color: #cdcdc3;
    text-decoration: none; }

#menu-toggle {
  width: 60px;
  height: 60px;
  background-color: #dd000d;
  position: fixed;
  bottom: 15px;
  right: 15px;
  z-index: 10;
  border-radius: 30px;
  display: table;
  cursor: pointer;
  display: none; }
  #menu-toggle .toggle-wrap {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    color: #fff;
    font-size: 24px; }

.menu-mobile {
  height: calc(100vH - 55px);
  top: 55px;
  background-color: #fff;
  z-index: 9;
  display: none; }
  .menu-mobile .nav-link {
    color: #dd000d; }

@media screen and (max-width: 992px) {
  h2 {
    font-size: 28px !important; }

  main .fullsize-slideshow .teaser h1 {
    font-size: 32px; }
  main .fullsize-slideshow .teaser h2 {
    font-size: 20px !important; }
  main .fullsize-slideshow .control {
    bottom: 50px; }
    main .fullsize-slideshow .control .carousel-control-prev {
      right: 95px; }
    main .fullsize-slideshow .control .carousel-control-next {
      right: 15px; }
  main .news .box {
    min-height: 200px; }
  main .news .thumb img {
    height: 280px; }
  main .news .lightbox {
    padding: 0;
    position: static;
    height: auto; }
    main .news .lightbox .content-wrap {
      min-height: unset; }
    main .news .lightbox .closer {
      display: none; }
    main .news .lightbox .lb-thumb {
      display: none; }
  main .events #plugin_wp_cal {
    width: 100%;
    padding: 60px 15px 0 15px !important; }
  main #partner-carousel {
    height: 50vW; }
    main #partner-carousel .col-3 {
      -ms-flex: 0 0 50%;
      flex: 0 0 50%;
      max-width: 50%; }
  main .partner-slideshow .carousel-item .row {
    height: 150px !important; }
  main .w-bgr h2 {
    font-size: 52px !important; }

  .sidebar {
    width: 100%;
    margin-left: 0; } }
@media screen and (max-width: 768px) {
  h2 {
    font-size: 24px !important; }

  main .fullsize-slideshow .teaser h1 {
    font-size: 24px; }
  main .fullsize-slideshow .teaser h2 {
    font-size: 18px !important; }
  main .news .lightbox .closer {
    right: calc(5vW + 15px);
    margin-top: 0; }
  main .w-bgr h2 {
    font-size: 42px !important; }
  main .w-bgr .vorstand .profil-img {
    margin-left: 25%; }
  main .w-bgr p.subline {
    font-size: 24px !important; }
  main .partner-slideshow .carousel-item .row {
    height: 100px !important; } }
@media screen and (max-width: 576px) {
  main .fullsize-slideshow .control .carousel-control-prev {
    right: 80px; }
  main .w-bgr h2 {
    font-size: 38px !important; } }
@media screen and (max-width: 480px) {
  main .w-bgr h2 {
    font-size: 32px !important; }
  main .w-bgr p.subline {
    font-size: 21px !important; } }
@media screen and (max-width: 379px) {
  main .text-2-cols .btn.btn-secondary.m-xl-0.m-lg-0.mt-4.mb-3.ml-5 {
    margin-left: 0 !important; } }
