/*
Theme Name: Betheme Child
Theme URI: https://themes.muffingroup.com/betheme
Author: Muffin group
Author URI: https://muffingroup.com
Description: Child Theme for Betheme
Template: betheme
Version: 2.0
*/

/* Header */
#Top_bar.is-sticky { height: 120px; }
#Top_bar.is-sticky .menu > li > a span:not(.description) {
  display: block;
  line-height: 60px;
  padding: 0 20px;
  white-space: nowrap;
  border-right-width: 1px;
  border-style: solid;
}
#Top_bar .logo .logo-sticky {
  max-height: unset!important;
  vertical-align: top;
  padding: 16px 0;
}
@media only screen and (min-width: 768px) {
#Top_bar.is-sticky .menu_wrapper {
  clear: none;
  padding-top: 46px;
}
#Top_bar.is-sticky .logo {
  width: auto;
  margin: 0 5px 0 100px;
  padding: 0;
}
}
@media only screen and (max-width: 767px) {
.mobile-sticky #Top_bar.is-sticky {
  position: fixed !important;
  height: 65px;
}
#Top_bar .logo {
  display: inline;
}
}
#Top_bar .logo {
  float: left;
  margin: 0 5px 0 100px;
}
.menu_wrapper {
  margin-right: 100px !important;
}
#Top_bar .menu > li > a span:not(.description) { padding: 0 12px !important; }
@media (max-width: 1475px) {
#Top_bar .logo {
  display: none;
}
#Subheader {
    padding: 60px 0 !important;
}
#Subheader .title {
    font-size: 30px !important;
}
}
@media only screen and (max-width: 1200px) {
#Top_bar .logo {
  display: inline;
}
#Subheader .title {
  color: #ffffff;
  font-size: 35px;
  line-height: 35px;
  text-shadow: 2px 2px 4px #091c57;
}

@media screen and (max-device-width: 767px) and (orientation: portrait) {
#Header {
    min-height: 65px !important;
}
}

/* Nav */
#Top_bar .menu li ul li {
  width: 250px !important;
}
#Top_bar .menu li ul li a {
  font-size: 17px;
  font-weight: 600;
}
#Top_bar a.responsive-menu-toggle i {
  font-size: 30px !important;
}

/* Footer */
.widget_nav_menu ul li a {
  display: block;
  padding: 4px 0 3px 3px;
}

/* Ansprechpartner */
.noico::after {
  display: none;
}

/* Tabelle */
@media only screen and (max-width: 420px){
.dcf-table-bordered, .dcf-table-bordered td, .dcf-table-bordered th {
    border: 1px solid #ffffff !important;
}
table tr:first-child td {
    box-shadow: inset 0 4px 3px -2px rgb(0 0 0 / 0%) !important;
}
}

th, td {
  text-align: left !important;
  vertical-align: top !important;
}
:root {
    --bg-table-stripe: #f6f6f5;
    --b-table: #e3e3e2;
    --caption: #242423;
}

table {
    background-color: transparent;
    border-collapse:collapse;
}
.dcf-txt-center {
      text-align: center!important
    }

    .dcf-txt-left {
      text-align: left!important
    }

    .dcf-txt-right {
      text-align: right!important
    }
.dcf-table caption {
      color: var(--caption);
      font-size: 1.13em;
      font-weight: 400;
      padding-bottom: .56rem
    }

    .dcf-table thead {
      font-size: .84em
    }

    .dcf-table tbody {
      border-bottom: 1px solid var(--b-table);
      border-top: 1px solid var(--b-table);
      font-size: .84em
    }

    .dcf-table tfoot {
      font-size: .84em
    }

    .dcf-table td, .dcf-table th {
      padding-right: 1.78em
    }

    .dcf-table-bordered, .dcf-table-bordered td, .dcf-table-bordered th {
      border: 1px solid var(--b-table)
    }

    .dcf-table-bordered td, .dcf-table-bordered th, .dcf-table-striped td, .dcf-table-striped th {
      padding-left: 1em;
      padding-right: 1em
    }

    .dcf-table-bordered tr:not(:last-child), .dcf-table-striped tr:not(:last-child) {
      border-bottom: 1px solid var(--b-table)
    }

    .dcf-table-striped tbody tr:nth-of-type(2n) {
      background-color: var(--bg-table-stripe)
    }

    .dcf-table thead td, .dcf-table thead th {
      padding-bottom: .75em;
      vertical-align: bottom
    }

    .dcf-table tbody td, .dcf-table tbody th, .dcf-table tfoot td, .dcf-table tfoot th {
      padding-top: .75em;
      vertical-align: top
    }

    .dcf-table tbody td, .dcf-table tbody th {
      padding-bottom: .75em
    }

    .dcf-table-bordered thead th {
      padding-top: 1.33em
    }

    .dcf-wrapper-table-scroll {
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
      left: 50%;
      margin-left: -50vw;
      margin-right: -50vw;
      padding-bottom: 1em;
      position: relative;
      right: 50%;
      width: 100vw
    }

    @media only screen and (max-width:42.09em) {
      .dcf-table-responsive thead {
        clip: rect(0 0 0 0);
        -webkit-clip-path: inset(50%);
        clip-path: inset(50%);
        height: 1px;
        overflow: hidden;
        position: absolute;
        width: 1px;
        white-space: nowrap
      }
      .dcf-table-responsive tr {
        display: block
      }
/*      .dcf-table-responsive td {
        -webkit-column-gap: 3.16vw;
        -moz-column-gap: 3.16vw;
        column-gap: 3.16vw;
        display: grid;
        grid-template-columns: 1fr 2fr;
        text-align: left!important
      }  */
      .dcf-table-responsive.dcf-table-bordered, .dcf-table-responsive.dcf-table-bordered thead th {
        border-width: 0
      }
      .dcf-table-responsive.dcf-table-bordered tbody td {
        border-top-width: 0
      }
      .dcf-table-responsive:not(.dcf-table-bordered) tbody tr {
        padding-bottom: .75em
      }
      .dcf-table-responsive:not(.dcf-table-bordered) tbody td {
        padding-bottom: 0
      }
      .dcf-table-responsive:not(.dcf-table-bordered):not(.dcf-table-striped) tbody td {
        padding-right: 0
      }
      .dcf-table-responsive.dcf-table-bordered tbody tr:last-child td:last-child {
        border-bottom-width: 0
      }
      .dcf-table-responsive tbody td:before {
        content: attr(data-label);
        float: left;
        font-weight: 700;
        padding-right: 1.78em
      }
    }

.dcf-overflow-x-auto {
      overflow-x: auto!important;
      -webkit-overflow-scrolling: touch
    }
    
.dcf-w-100\% {
  width: 100%!important;
		}
@media screen and (max-width: 60em) {
	table {
		width: 100%;
		margin: 0;
		border: none;
	}
	td {
		hyphens: auto;
	}
	table a {
		white-space: normal;
		hyphens: none;
	}
}
@media screen and (max-width: 45em) {
	tr, th, td {
 		display: block;
	}
	
	tr {
		padding: 1em;
		border-top: 0 none;
	}
	
	th {
		padding: 0;
	}
	
	td {
		padding: 1em 0 0;
	}
}

/* Blog / Aktuelles */
.single-post #Subheader { display: none !important; }
.button-love { display: none !important; }

/* NinjaForms */
.nf-form-content {
  max-width: 100% !important;
}

/* Notdienst */
body.page-id-42 #Subheader {
  padding: 481px 0 !important;
}
/* Misc */
.wp-caption-text {
  font-size: 16px !important;
}