/*
 *  blue = color:#003f8d;
 *  orange = color:#e99040;
 *  light grey = color:#e3e4e4;
 * font-family: 'Roboto', sans-serif; (100, 300, 400, 700, 900)
 */

 @font-face {
  font-family: 'opensansLight';
  font-style: normal;
  font-weight: 100;
  src: local('Open Sans light'), url('fonts/OpenSans-Light.ttf') format('truetype');
  }
  @font-face {
   font-family: 'opensans';
   font-style: normal;
   font-weight: 300;
   src: local('Open Sans regular'), url('fonts/OpenSans-Regular.ttf') format('truetype');
   }
   @font-face {
    font-family: 'opensansBold';
    font-style: normal;
    font-weight: 500;
    src: local('Open Sans semibold'), url('fonts/OpenSans-SemiBold.ttf') format('truetype');
    }
    @font-face {
     font-family: 'opensansBlack';
     font-style: normal;
     font-weight: 700;
     src: local('Open Sans bold'), url('fonts/OpenSans-Bold.ttf') format('truetype');
     }
* {
  box-sizing: border-box;
}

body {
    padding:0;
    margin:0;
    font-family: 'opensans', sans-serif;
    font-size:1em;
    -webkit-animation: fadeIn 2s;
    color:#003f8d;
    background:#fff;
    height:100%;
}
@-webkit-keyframes fadeIn {
    0% { opacity: 0; }
    100% { opacity: 1; }
}

/*
 * grid Layout mit Fallback!!
 */
.container {
    width:1200px;
    margin:0 auto;
}
.container-full {
    margin:0 auto;
    width:100%;
}
.pageWrapper {
  height:100%;
  min-height:100vh;
  position: relative;
  padding-bottom:100px;
}
/*
 * Flexbox, Grid Elemente
 */
.flexbox, .desktopFlex {
    display:flex;
    box-sizing:border-box;
    margin:0 -15px;
}
.flex_item {
    padding:15px;
}
.grid_section {
    display:flex;
    flex-wrap:wrap;

    display:grid;
    grid-template-columns:1fr;
    grid-gap: 15px;
}


/*
 * allgemeine formatierungen
 */
h1, h2, h3, h4 {
    font-weight:700;
}
a {
    transition:all 0.4s ease;
    color:#003f8d;
    text-decoration: underline;
}
a:hover, a:focus, .rootline a:hover, .rootline a:focus, .mainNav a:hover, .mainNav a:focus, .custom_nav a:hover, .custom_nav a:focus {
  color:#e99040;
}
p, a, li {
  font-weight:100;
}
p a, li a, .nav li li, span a {
    font-size:1em;
}
.text-center {
  text-align: center;
}
.orange {
  color:#e99040;
}
.mobile {
    display:none;
}
.desktop {
    display:block;
}
img {
    max-width:100%;
    height:auto;
}
strong {font-family: 'opensansBold';}
/*email verschlüsselung*/
 .email-show::before {
     content: 'kanzlei@'
 }
 .hpemail-show::before {
   content: 'hinweisgeber@';
 }
  .email-show::after, .hpemail-show::after {
     content: 'fels-legal.de';
}
.email-hide {
    display:none;
}
/*cookies*/
#gdpr-cookie-message {
  background:#C3C3C3;
  padding:15px;
  position:absolute;
  top:0;
  left:0;
}
#gdpr-cookie-message button {
  background:url(../assets/news_bg.jpg) no-repeat center center;
  background-size:cover;
  color:#fff;
  padding:5px 15px;
  text-decoration: none;
  border:none;
  margin-right: 15px;
}
#gdpr-cookie-message button:hover, #gdpr-cookie-message button:focus {
  color:#003f8d;
}
/*
 * header
 */
.header_bg {
    background:url(../assets/header_bg.jpg) no-repeat center center;
    background-size:cover;
    width:100%;
    padding:50px 0 30px;
    position:relative;
    box-shadow: -1px 0px 12px rgba(0,0,0,0.4);
}
.custom_nav ul {
  margin:8px 0 0 0;
  padding:0;
  list-style: none;
  display:flex;
}
.headContent {
  justify-content: space-between;
}
.qs_form {
  text-align: right;
  position: relative;
}
#tx-indexedsearch-searchbox-sword-allpage {
  width:220px;
  background:#e3e4e4;
  border:1px solid #fff;
  box-shadow: none;
  -webkit-appearance:none;
  padding:5px;
  color:#003f8d;
}
#tx-indexedsearch-qs-button-submit {
  position:absolute;
  top:5px;
  right:5px;
  background:transparent;
  border:none;
  color:#e99040;
}
.logo {
  margin-top:15px;
}
#header_line {
  position: absolute;
  top:106px;
}
/*
* breadCrumb
*/
.rootline, .rootline ul {
  display:flex;
  margin:0;
  padding:0;
}
.rootline {
  padding:5px 0;
  color:#003f8d;
}
.rootline a {
  color:#003f8d;
  text-decoration: none;
}
.rootline li {
  list-style: none;
  padding:0 5px;
  font-weight: 100;
}
.rootline li:first-child {
  padding-left:0;
}
#page-1 .rootline {
  display:none;
}
/*
 * mmenu
 */

.menu_btn a {
    height:50px;
    display:block;
    width:40px;
}
.menu_btn a:before, .menu_btn a:after, .menu_btn a span {
    content: '';
    width:100%;
    height:5px;
    border-radius:3px;
    background:#003f8d;
    margin:8px 0;
    display:block;
    transition:all 0.4s ease;
}
html.mm-opened .menu_btn a:before {
    transform: rotate(45deg);
}
html.mm-opened .menu_btn a:after {
    transform: rotate(-45deg);
     margin-top:-12.5px;
}
html.mm-opened .menu_btn a span {
    display:none;
}
html.mm-opened .menu_btn a {
    margin-top:20px;
}
/*
 * desktop menu
 */
 .navContainer {
   padding:5px 0 0 0;
   border-bottom: 1px dotted #333;
 }
 .mainNav {
   padding:0 15px;
   justify-content: space-between;
 }
.mainNav ul {
    margin:0;
    padding:0;
    display:flex;

}
.mainNav li {
    list-style:none;
    position:relative;
}
.mainNav li a, .custom_nav li a {
  font-weight:500;
  padding:10px 20px;
  display:inline-block;
  color:#003f8d;
  text-decoration: none;
}
.mainNav .icons a {
  width:25px;
  height:auto;
  display:inline-block;
  padding:10px 0 0 5px;
}
.mainNav .icons a img {
  width:100%;
  height:auto;
}
.custom_nav li a {
  font-weight:300;
}
.custom_nav li:last-child a {
  padding-right:0;
}
.mainNav li:first-child a {
  padding-left: 0;
}
.submenu {
  position: relative;
}
.submenu ul {
    position:absolute;
    left:0;
    z-index:500;
    display:none;
    transition:all 0.4s ease;
    background:#003f8d;
}

.hasSub:hover a, .hasSub:focus a {
  color:#e99040;
}
.hasSub:hover .submenu a, .hasSub:focus .submenu a {
  color:#fff;
}
.hasSub:hover .submenu a:hover, .hasSub:focus .submenu a:focus {
  color:#e99040;
}
.submenu li a {
  padding-left:15px !important;
}
.mainNav li:hover  ul {
    display:block;
}
.mainNav li ul li a {
    display:block;
    color:#fff;
    white-space: nowrap;
    padding:10px 15px;
    font-size:0.9em;
}

/*
*Content
*/
.contentWrapper li {
  padding-bottom:5px;
}
.frame-default header {
  padding-left:15px;
  position: relative;
}
.frame-default header::before {
  border-left:2px solid #e99040;
  position:absolute;
  width:0;
  content:'';
  bottom:5px;
  top:11px;
  left:0 ;
}
.frame-default header h3 {
  margin-top:0;
  font-weight:300;
  font-size:1.1em;
}
.frame-default header h2 {
  margin-bottom:0;
  font-weight:400;
  font-size:2em;
}
.content-left {
  width:66.6%;
  padding-top:30px;
  padding-bottom:30px;
}
.frame-layout-1 .ce-bodytext {
  -moz-column-count:2;
  -moz-column-gap:15px;
  -webkit-column-count:2;
  -webkit-column-gap:15px;
  column-count:2;
  column-gap:15px;
  text-align: justify;
  hyphens: auto;
}
.frame-layout-1 p {
  margin-top:0;
}
.content-right {
  width:33.3%;
  padding-left:30px;
  padding-top:30px;
  padding-bottom:30px;
}
#page-15 .content-right {
  display:none;
}

.frame-ruler-after::after {
  margin-top:5px;
}
.ce-left .ce-gallery {
  width:100%;
}
.ce-gallery[data-ce-columns="3"] .ce-column {
  width:32%;
}
.ce-gallery[data-ce-columns="3"] .ce-column img, .ce-gallery[data-ce-columns="3"] .ce-column .image {
  width:100%;
  height:auto;
}
/*
*Referenzen
*/
.slick-prev {
  left:-20px;
  width:15px;
  height:15px;
}
.slick-next {
  right:-20px;
  width:15px;
  height:15px;
}
.slick-prev::before, .slick-next::before {
  content:'';
  width:100%;
  height:100%;
  position:absolute;
  top:0;
  left:0;
}
.slick-prev::before {
  border-bottom:2px solid #e99040;
  border-left:2px solid #e99040;
  transform: rotate(45deg);
}
.slick-next::before {
  border-top:2px solid #e99040;
  border-right:2px solid #e99040;
  transform: rotate(45deg);
}
.slick-slide {
  padding:5px;
}
.slick-list {
  margin:0 -5px 0 -5px;
}
/*
*news
*/
.article .header, .nhHeader {
  padding-left:60px;
  position: relative;
}
.article .header:before, .nhHeader:before {
  content:'';
  width:50px;
  height:50px;
  background:url(../assets/news-icon.png) no-repeat center center;
  background-size:contain;
  position: absolute;
  top:0;
  left:0;
}
.article .header h3, .nhHeader h3 {
  margin-top:0;
}
.news-list-view .article .news-img-wrap {
  margin:15px 15px 15px 0;
}
.nhHeader h3 a {
  text-decoration:none;
  font-size:0.95em;
  font-weight:500;
}
.news-list-date {
  text-decoration: underline;
  font-weight:100;
}
.news-homeList {
  padding:15px;
  border:2px solid #e99040;
}
.news-homeList .article, .news-list-view .article {
  border-bottom:2px solid #e3e4e4;
}
.news .news-homeList .article:last-child {
  padding-bottom:15px;
  margin-bottom:15px;
}
.news-list-view .more, .news-backlink-wrap a {
  text-decoration: none;
  padding:5px 15px;
  background:url(../assets/more_bg.jpg) no-repeat center center;
  background-size:cover;
}
.moreNews {
  background:url(../assets/news_bg.jpg) no-repeat center center;
  background-size:cover;
  color:#fff;
  padding:5px 15px;
  text-decoration: none;
}
.moreNews:hover, .moreNews:focus, .powermail_submit:hover, .powermail_submit:focus {
  color:#003f8d;
}
.news-homeList .linkWrapper, .powermail_fieldwrap_type_submit .powermail_field {
  display: flex;
  justify-content: flex-end;
}
.news-single .teaser-text p {
  font-weight: 400;
  color:#003f8d;
  font-size:1.05em;
}

/*  Hinweisgeberportal*/
.bgBlue {
  background:#00305b;
  color:#fff;
}
.bgBlue .navContainer {
  background:#fff;
}
.bgBlue .rootline a, .bgBlue .rootline li, .bgBlue a {
  color:#fff;
}
.bgBlue .custom_nav_mobile li a {
  color:#00305b;
}
.bgBlue .rootline {
  position:relative;
  z-index:10;
}
.blueBg .expTitle {
  color:#fff;
}
.sliderWrapper {
  margin-top:-32px;
}
.headerSlider .cycle-item {
  position:relative;
}
.headerSlider img {
  width:100% !important;
}
.sliderTxtWrapper {
  position:absolute;
  left:0;
  right:0;
  top:0;
  bottom:0;
}
.siderTXT {
  padding:15px 0;
  color:#fff;
  font-size:3.8em;
  font-family: 'opensansBold';
}
.buttonContainer .flexbox {
  flex-wrap:wrap;
  justify-content: space-between;
  margin:0;
}
.buttonContainer .orangeBtn {
  display:inline-block;
  width:48%;
  padding:15px;
  text-align:center;
  background:#ee7203;
  border:1px solid #ee7203;
  color:#fff;
  margin:15px 0;
  text-decoration:none;
}
.orangeBtn:hover, .orangeBtn:focus {
  color:#ee7203;
  background:transparent;
}
.bgBlue .expert {
  padding-bottom:15px;
  margin-bottom:15px;
}
.bgBlue .experts_border {
  border-color:#fff;
}
.bgBlue footer {
  background:#fff;
  color:#00305b;
}
/*
 * form
 */
 .border, #page-1 #c34 {
   padding:15px;
   border:2px solid #e99040;
 }
.powermail_fieldset {
    padding:0;
    border:none;
}
.powermail_form {
  font-weight: 100;
}
.powermail_form h3 {
  margin-bottom:0;
  font-size:1em;
}
.powermail_legend {
    display:none;
}
.powermail_fieldwrap {
    /*fallback*/
   /* display:flex;
   flex-wrap:wrap;

   display:grid;
   grid-template-columns: 1fr 3fr;
   margin-top:10px; */
}
.powermail_fieldset_1 .powermail_label {
  display:none;
}
.powermail_fieldwrap_captcha .powermail_label {
  display:block;
}
.powermail_field {
    width:100%;
    margin:10px 0;
}
.powermail_captcha {
  margin-bottom:10px;
  width:100%;
}
.powermail_submit {
  background:url(../assets/news_bg.jpg) no-repeat center center;
  border:none;
  color:#fff;
  padding:5px 15px;
  font: 'opensans';
  font-size:1em;
  font-weight: 100;
  transition:all 0.4s ease;
}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  font-family: 'opensans';
  font-size: 12px;
}
::-moz-placeholder { /* Firefox 19+ */
  font-family: 'opensans';
  font-size:12px;

}
:-ms-input-placeholder { /* IE 10+ */
  font-family: 'opensans';
  font-size: 12px;
}
:-moz-placeholder { /* Firefox 18- */
  font-family: 'opensans';
  font-size: 12px;
}
.powermail_fieldset_1 .checkbox label {
  font-size:12px;
}
.powermail_input, .powermail_select, .powermail_textarea, .powermail_date {
    padding:5px 10px;
    border-radius:0;
    border:1px solid #999;
    width:100%;
    box-sizing:border-box;
}

/*
*accordion
*/
.toggle_container {
  overflow:hidden;
  max-height:0;
  height:auto;
  transition:all 0.5s ease;
}
.open .toggle_container {
  max-height:2000px;
}
.accordion_title {
  padding-left:30px;
  position: relative;
  cursor:pointer;
}
.accordion_title::before {
  content:'+';
  color:#fff;
  position: absolute;
  top:-5px;
  left:0;
  font-size:1.8em;
  font-weight: 100;
  line-height: 0.9em;
}
.open .accordion_title {
  border-bottom:2px solid #e99040;
}
.open .accordion_title::before {
  content:'-';
  color:#e99040;
  top:-9px;
}
/*
*experten
*/
.experts {
  position: relative;
}
.experts .flexbox {
  flex-wrap: wrap;
}
.experts .flex_item {
  width:50%;
}
.experts_border {
  left:0;
  bottom:0;
  width:100%;
  position: relative;
  border-bottom:1px solid rgba(0,0,0,0.25);
  margin:0 15px;
}
.mBorder {
  display:none;
}
.expTitle {
  margin-bottom:10px;
  color:#e99040;
}
.expert .description p {
  margin:0;
  font: 400 1em 'opensans', sans-serif;
}
.expPhone, .expMail {
  font: 100 1em 'opensans', sans-serif;
  margin-top:16px;
  padding-left:30px;
  position: relative;
}
.expPhone::before, .expMail::before {
  content:'';
  width:20px;
  height:20px;
  position: absolute;
  top:0;
  left:0;
}
.expMail::before {
  background:url(../assets/mail.png) no-repeat center center;
  background-size:100% auto;
}
.expPhone::before {
  background:url(../assets/phone.png) no-repeat center center;
  background-size:100% auto;
}
.expPhone .desktop {
  display:inline-block;
}
/*search*/
.tx-indexedsearch-rules, .tx-indexedsearch-info {
  display:none;
}
/*
 * Footer
 */
 footer {
   border-top:1px dotted #333;
   flex:1;
   position:absolute;
   width:100%;
   bottom:0;
 }
footer .flexbox {
  align-items: center;
  justify-content: space-between;
}

/*mediaqueries*/

/*
 * grid layout from 767px
 */
@media screen and (min-width:768px) {
    /*columns*/
        .section_1_cols {
            grid-template-columns: 1fr;
        }
        .section_2_cols {
            grid-template-columns: 1fr 1fr;
        }
        .section_3_cols {
            grid-template-columns: 1fr 1fr 1fr;
        }
        .section_4_cols {
            grid-template-columns: 1fr 1fr 1fr 1fr;
        }
        .section_5_cols {
            grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
        }
        .section_6_cols {
            grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
        }
        /*rows*/
        .section_1_rows {
            grid-template-rows: auto;
        }
        .section_2_rows {
            grid-template-rows: auto auto;
        }
        .section_3_rows {
            grid-template-rows: auto auto auto;
        }
        .section_4_rows {
            grid-template-rows: auto auto auto auto;

        }

        .header_top {
            grid-template-columns:  1fr 1fr 3fr;
        }

        .footer-wrapper {
            grid-template-columns: 2fr 1fr 2fr;
        }
    }

/*
 * media queries responsive
 */
@media screen and (max-width:1200px) {
    .container {
        width:1024px;
    }
    .mainNav li a {
      padding:10px;
      font-size:1em;
    }
}
@media screen and (max-width:1024px) {
    .container {
        width:100%;
        padding:0 15px;
    }
    .mainNav li a {
      padding:10px;
      font-size:0.85em;
      font-weight:400;
    }
    .siderTXT {
      font-size:2.4em;
    }
}
@media screen and (max-width:850px) {
  .mobile{
  display:block;
  }
  .desktop, .desktopFlex, .custom_nav {
    display:none;
  }
  .contentWrapper, footer .flexbox {
      flex-wrap:wrap;
  }
  .contentWrapper > .flex_item, footer .flexbox > .flex_item {
      width:100%;
  }
  .content-right, .content-left {
    padding:15px;
  }
  .custom_nav_mobile ul {
    margin:5px 0;
    padding:0 0 0 15px;
    display:flex;
    flex-wrap: wrap;
    border-left:2px solid #e99040;
  }
  .custom_nav_mobile li {
    list-style: none;
    padding:5px;
  }

}
@media screen and (max-width:767px) {

    .expPhone .mobile {
      display:inline-block;
    }
     .expPhone .desktop {
        display:none;
    }

    .header_bg {
      padding:15px 0;
    }
    .slick-list {
      margin:0 5px;
    }
    .slick-prev {
      left:-5px;
    }
    .slick-next {
      right:-5px;
    }

}
@media screen and (max-width:627px) {
  .headerRight, #header_line {
    display:none;
  }
  .pageWrapper {
    padding-bottom:150px;
  }
  .siderTXT {
    font-size:1.4em;
  }
  .experts .flex_item {
    width:100%;
  }

}
@media screen and (max-width:500px) {
  .mBorder {
    display:block;
  }
  .dBorder {
    display:none;
  }
  .experts .flex_item {
    width:100%;
  }
  .frame-layout-1 .ce-bodytext {
    column-count:1;
    text-align: left;
  }
  .ce-gallery[data-ce-columns="3"] .ce-column {
    width:100%;
    margin-bottom:10px;
    text-align:center;

  }
}
@media screen and (max-width:375px) {
    .form-group {
    /*old browsers*/
    display:flex;
    flex-wrap:wrap;
    grid-template-columns:1fr;
    }
    .form-group label, .form-group .input {
        width:100%;
    }
    .flex_item {
        width:100% !important;
    }
}
