/* Flexnav Base Styles */
 .flexnav {
    margin: 0;
    padding: 0;
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
    -webkit-transform-style: preserve-3d;
    overflow: hidden;
    margin: 0 auto;
    width: 100%;
}
 .flexnav.opacity {
/*     opacity: 0;*/
}
 .flexnav.flexnav-show {
     max-height: 2000px;
     opacity: 1;
     -webkit-transition: all .5s ease-in-out;
     -o-transition: all .5s ease-in-out;
     transition: all .5s ease-in-out;
}
 .flexnav.one-page {
     position: fixed;
     top: 50px;
     right: 5%;
     max-width: 200px;
}
 .flexnav li {
     font-size: 100%;
     position: relative;
     overflow: hidden;
     list-style-type: none;
}
 .flexnav li a {
    position: relative;
    display: block;
    padding: 1em;
    z-index: 2;
    border-bottom: 1px solid white;
    -webkit-transition: color 0.4s ease-in-out;
    -o-transition: color 0.4s ease-in-out;
    transition: color 0.4s ease-in-out;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.flexnav li a:hover {
    color: #006ab3;
}
.flexnav li ul li a:hover {
    color: #b3b3b3;
}
 .flexnav li ul {
     width: 100%;
}
 .flexnav li ul li {
     font-size: 100%;
     position: relative;
     overflow: hidden;
     border-bottom: 1px solid #a6a6a2;
}
 .flexnav li ul.flexnav-show li {
     overflow: visible;
}
 .flexnav .touch-button {
    position: absolute;
    z-index: 999;
    top: 0;
    right: 10px;
    width: 50px;
    height: 63px;
    display: inline-block;
    background: rgba(255, 255, 255, 0.2);
    text-align: center;
}
 .flexnav .touch-button:hover {
     cursor: pointer;
}
 .flexnav .touch-button .navicon {
     visibility: hidden;
}
 .menu-button {
     position: relative;
     background: #a6a6a2;
     cursor: pointer;
}
 .menu-button.one-page {
     position: fixed;
     top: 0;
     right: 5%;
     padding-right: 45px;
}

 .menu-button .touch-button .navicon {
     font-size: 16px;
     position: relative;
     top: 1em;
     color: #333333;
}

/* wbox variables.less Wert @breakpoint-desktop verwenden */
 @media all and (min-width: 991px) {
     body.one-page {
         padding-top: 70px;
    }
     .flexnav {
         overflow: visible;
    }
     .flexnav.opacity {
         opacity: 1;
    }
     .flexnav.one-page {
         top: 0;
         right: auto;
         max-width: 1080px;
    }
     .flexnav li {
         position: relative;
         width: auto;
         list-style: none;
         float: left;
         display: block;
         overflow: visible;
    }
     .flexnav > li {
         padding: 0 0.3em;
     }
     .flexnav li a {
         border-bottom: none;
         padding: 0;
         font-weight: 700;
    }
     /* .flexnav > li > a {
         border-bottom: 1px solid transparent;
     } */
     .flexnav > li.nav-selected > a, 
     .flexnav > li.nav-path-selected > a {
        color: #006ab3;
     }

    .flexnav>li:last-child { 
        padding-right: 0;
     }
     .flexnav > li a:after {
        content: '\007C'; /* Trennungszeichen zwischen Menus */
        display: inline-block;
        padding-left: 10px;
        font-weight: normal;
        color: #006ab3;
      }
      .flexnav >li:last-child a:after, 
      .flexnav > li > ul > li a:after {
        content: none; /* Ausblenden letztes Trennungszeichen */
        padding-left: 0;
      }
     .flexnav li > ul {
         position: absolute;
         top: auto;
         left: 0;
         display: none;
    }

     .flexnav li:last-child > ul li {
         padding-right: 0;
     }
     .flexnav li ul  {
        margin-left: 0px;
        margin-top: 10px;
        min-width: 250px;
        padding: 0;
    }
     .flexnav li > ul li {
         width: 100%;
         overflow: visible;
    }
     .flexnav > li > ul > li {
          background: rgba(0,0,0,0.6);
          border-bottom: 1px solid grey;
    }
    
     .flexnav li:last-child > ul li > ul {
         right:100%;
         left: initial;
     }
     .flexnav li ul li > ul {
         margin-left: -webkit-calc(100% - 27px);
         margin-left: calc(100% - 27px);
         top: 5px;
    }
     .flexnav li ul li a {
         border-bottom: none;
         font-weight: 300;
         font-size: 0.9em;
         color: #ffffff;
         padding:0.2em 0.4em;
    }
     .flexnav li ul.open {
         display: block;
         opacity: 1;
         visibility: visible;
         z-index: 1;
    }
     .flexnav li ul.open li {
         overflow: visible;
         max-height: 100px;
    }
     .flexnav li ul.open ul.open {
         margin-left: 100%;
         top: 0;
    }
    ul.flexnav-show { 
        z-index: 50; 
    }
    .menu-button, .flexnav .touch-button {
        display: none;
    }
}

@media (min-width: 768px) and (max-width: 1140px) {
    .flexnav li:last-child > ul {
        right:0;
        left:initial;
    }
}
@media (max-width:1200px){
         .flexnav li a {
         /*font-size:1.1em;*/
    }
}
@media (min-width:1200px){
             .flexnav li ul li a {
         
    }
}

/* no break mainnav > tablet
 tablet landscape styling*/
/*
@media (min-width: 768px) and (max-width: 991px) {
    .flexnav li a {
        padding: 0.4em 0.4em 0.4em 0.4em;
        font-size: 0.8em;   
    }
    .flexnav li ul li a {
         padding: 0.4em 0.4em;
    }

}
*/

/* wbox variables.less Wert @breakpoint-mobile verwenden */
 @media all and (max-width:992px){
     .flexnav {
/*        position: absolute;*/
        background: #ffffff;
/*        top: 60px;*/
     }
     .flexnav li ul {
         margin-left: 0;
         padding-left: 0;
     }
     
     .flexnav li a {
         padding: 1em;
         /*font-size:1em;*/
    }
    /*Zweite Stufe*/
     .flexnav > li > ul > li > a {
         padding-left:-webkit-calc(1.03em + 15px);
         padding-left:calc(1.03em + 15px);
    }
     .flexnav > li > ul > li > ul > li > a {
         padding-left:-webkit-calc(1.03em + 25px);
         padding-left:calc(1.03em + 25px);
    }
    .flexnav li ul li {
        border-bottom: none;
    }
    .flexnav li ul li a {
        font-size: 0.9em;
        color: rgba(255, 255, 255, 0.5);
    }
     
    .flexnav .touch-button:after,
    .flexnav .touch-button:before{
        width: 15px;
        height: 2px;
        background-color: #333333;
        position: absolute;
        top: 50%;
        left: 13px;  
        content: '';
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
        -webkit-transition: -webkit-transform 0.5s;
        transition: -webkit-transform 0.5s;
        -o-transition: transform 0.5s;
        transition: transform 0.5s;
        transition: transform 0.5s, -webkit-transform 0.5s;    
    }
    .flexnav .touch-button:before{
        -webkit-transform: translate(11px) rotate(-45deg);
        -ms-transform: translate(10px) rotate(-45deg);
        transform: translate(10px) rotate(-45deg);    
    }
    .flexnav  .touch-button.active:after{
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);  
    }
    .flexnav  .touch-button.active:before{
        -webkit-transform: translate(11px) rotate(45deg);
        -ms-transform: translate(10px) rotate(45deg);
        transform: translate(10px) rotate(45deg);
    } 
}

/* Flexnav Fix for MS Edge and Windows Phone */
 @media screen (-ms-high-contrast: active) and (-ms-high-contrast: none) {
     .flexnav li a {
         overflow: hidden;
    }
}
 

div.ccm-block-switch-language-flags{display:inline-block}div.ccm-block-switch-language-flags-label{float:left;margin-right:8px}div.ccm-block-switch-language-flags a{float:left;margin:2px;opacity:.4}div.ccm-block-switch-language-flags a.ccm-block-switch-language-active-flag{opacity:1}


.ccm-page .wbox-sprachumschalter {padding:0; margin-left: 15px;}
.ccm-page .wbox-sprachumschalter a {
    padding: 0 8px;
    position: relative;
    font-size: 0.9em;
}

.ccm-page .wbox-sprachumschalter a:hover {
   color: #006ab3
}

.ccm-page .wbox-sprachumschalter .ccm-block-switch-language-active-flag {
    color: #006ab3;

}

@media (max-width: 767px) {
    .ccm-page .wbox-sprachumschalter .ccm-block-switch-language-active-flag {
        color: #222222;
        font-weight: 700;
    }
}


/* .wbox-sprachumschalter a:first-child {display: none;} */
.ccm-page .wbox-sprachumschalter a:last-child:before {
    content: '';
    display: inline-block;
    border-left: 1px solid #006ab3; 
    height: 25px;
    position: absolute;
    left: -2px;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}
/* .ccm-page .wbox-sprachumschalter a.lang-active {color: #333333; } */

.ccm-page .mobile-servicenav .wbox-sprachumschalter {
    float: none;
    padding: inherit;
    margin-left: 0;
    margin-bottom: 15px;
}
.ccm-page .mobile-servicenav .wbox-sprachumschalter a {
    padding: 2px;
}

@media (max-width: 768px) {
    .ccm-page .wbox-sprachumschalter {
        height: 52px;
        position: relative;
        top: 15px;
        background: #666666;
        margin: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
    .ccm-page .wbox-sprachumschalter a {
        font-size: 1em;
        color: white;
    }
    .ccm-page .wbox-sprachumschalter a:last-child:before {
        left: 0;
        border-left: 1px solid white; 
    }
}

    div[data-formidable-type="date"] input[id="geburtsdatum_42"] {
        position: relative;
        min-height: 38px;
    }
    div[data-formidable-type="date"] input[id="geburtsdatum_42"]:before {
        position: absolute;
        content: attr(data-date);
        display: inline-block;
        width: 100%;
        top:0;
    }
    div[data-formidable-type="date"] input[id="geburtsdatum_42"]::-webkit-datetime-edit, div[data-formidable-type="date"] input[id="geburtsdatum_42"]::-webkit-inner-spin-button, div[data-formidable-type="date"] input[id="geburtsdatum_42"]::-webkit-clear-button {
        display: none;
    }
    div[data-formidable-type="date"] input[id="geburtsdatum_42"]::-webkit-calendar-picker-indicator {
        position: absolute;
        opacity: 1;
        right: 10px;
    }

.formidable {}

.formidable .processing {}

.formidable .hide {
    display: none;
}

.formidable [type="submit"] i {
    display: none;
}
.formidable .processing [type="submit"] i {
    display: inline-block;
}

.formidable .valid-feedback,
.formidable .invalid-feedback {
    display: block;
}

.formidable div[data-formidable-message] p {
    margin-bottom: 0;
}

.formidable div[data-formidable-message] p + p {
    margin-top: 10px;
}

.formidable div[data-formidable-countable] {
    position: relative;
}

.formidable div[data-formidable-countable] div[data-range] {
    position: absolute;
    font-size: 13px;
    color: #ccc;
    top: 9px;
    right: 9px;
}

.formidable div[data-formidable-countable] select[multiple="true"]+div[data-range] {
    right: 25px;
}

.formidable div[data-formidable-countable] select.is-invalid,
.formidable div[data-formidable-countable] select.is-valid {
    background-position: right calc(0.375em + 2.1875rem) top calc(9px);
}

.formidable div[data-formidable-countable] select[multiple="true"].is-invalid,
.formidable div[data-formidable-countable] select[multiple="true"].is-valid {
    background-position: right calc(0.375em + 2.7875rem) top calc(9px);
}



.formidable div[data-formidable-countable] select:not([multiple="true"])+div[data-range],
.formidable div[data-formidable-type="file"] div[data-formidable-countable] div[data-range] {
    display: none;
}

.formidable div[data-formidable-countable] .is-invalid,
.formidable div[data-formidable-countable] .is-valid {
    background-position: right calc(.375em + 2.5875rem) center;
    padding-right: calc(1.5em + 2.75rem);
}

.formidable div[data-formidable-type="address"] .col.address1,
.formidable div[data-formidable-type="address"] .col.address2 {

}

.formidable div[data-formidable-type="address"] .col.number,
.formidable div[data-formidable-type="address"] .col.number_suffix {
    flex: 0 0 auto;
    width: 20%;
}

.formidable div[data-formidable-type="address"] .break {
    margin-bottom: 15px;
}

.formidable div[data-formidable-type="date"] [type="date"].is-invalid,
.formidable div[data-formidable-type="date"] [type="date"].is-valid {
    background-position: right calc(.375em + 2.1875rem) center;
}
.formidable div[data-formidable-type="date"] [type="date"]:before {
    background-color: white !important;
}


.formidable div[data-formidable-type="file"] div[data-formidable-countable] .is-invalid,
.formidable div[data-formidable-type="file"] div[data-formidable-countable] .is-valid {
    background-position: right calc(0.375em + .1875rem) center;
}

.formidable div[data-formidable-type="file"] .add-file {
    float: right
}

.formidable div[data-formidable-type="range"] div.range {
    display:flex;
    flex-direction: row;
}
.formidable div[data-formidable-type="range"] div.range span[data-range-value] {
    padding: 6px 10px;
    height: 1.5rem;
    position: relative;
    margin-left: 10px;
}
.formidable div[data-formidable-type="range"] div.range span[data-range-value]:after {
    position: absolute;
    top: 5px;
    left: -7px;
    width: 0;
    height: 0;
    border-top: 7px solid transparent;
    border-right: 7px solid #373a3b;
    border-bottom: 7px solid transparent;
    content: '';
}

.formidable div[data-formidable-type="captcha"] .captcha-verified {
    /* display: none; */
}

.formidable .option-other {
    display: none;
}
.formidable .option-other.enabled {
    display: block;
}

.formidable .formidable-dropzone .dropzone-box,
.formidable .formidable-dropzone .dropzone-box * {
    box-sizing: border-box
}

.formidable .formidable-dropzone .dropzone-box {
    border: 2px dashed #ccc;
    border-radius: 5px;
    padding: 20px 20px;
}

.formidable .formidable-dropzone .dropzone-box.dz-clickable {
    cursor: pointer
}

.formidable .formidable-dropzone .dropzone-box.dz-clickable * {
    cursor: default
}

.formidable .formidable-dropzone .dropzone-box.dz-clickable .dz-message,
.formidable .formidable-dropzone .dropzone-box.dz-clickable .dz-message * {
    cursor: pointer
}

.formidable .formidable-dropzone .dropzone-box.dz-started .dz-message {
    display: none
}

.formidable .formidable-dropzone .dropzone-box.dz-drag-hover {
    border-style: solid
}

.formidable .formidable-dropzone .dropzone-box.dz-drag-hover .dz-message {
    opacity: .5
}

.formidable .formidable-dropzone .dropzone-box .dz-message {
    text-align: center;
    margin: 2em 0
}

.formidable .formidable-dropzone .dropzone-box .dz-message .dz-button {
    background: none;
    color: inherit;
    border: none;
    padding: 0;
    font: inherit;
    cursor: pointer;
    outline: inherit
}
.formidable .formidable-dropzone .dz-image-preview img {
    max-width: 50px;
}
.formidable .formidable-dropzone .dz-image-preview .dz-title span {
    font-size: 13px;
    margin-bottom: 5px;
}
.formidable .formidable-dropzone .dz-image-preview .dz-title span b,
.formidable .formidable-dropzone .dz-image-preview .dz-title span strong {
    font-weight: normal;
}
.formidable .formidable-dropzone .dz-progress .progress-bar {
    height: 10px;
}
.formidable .formidable-dropzone [data-dz-remove]:hover,
.formidable .formidable-dropzone [data-dz-remove]:hover i {
    cursor: pointer;
}


/* STEPS */
.formidable .has-steps .steps .current-info {
    position: absolute;
    left: -999em;
}
.formidable .has-steps .steps ul {
    list-style: none !important;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: row;
}
.formidable .has-steps .steps ul > li {
    padding: 0 10px;
}
.formidable .has-steps .steps ul > li.first {
    padding-left: 0;
}
.formidable .has-steps .steps ul > li.last {
    padding-right: 0;
}

.formidable .has-steps .content > .title {
    position: absolute;
    left: -999em;
}
.formidable .has-steps .content {
    background: #eee;
    display: block;
    margin: 15px 0;
    overflow: hidden;
    position: relative;
    width: auto;
}
.formidable .has-steps .content > .body {
    width: 100%;
    padding: 15px;
}
/* hide "back"-button on first step */
.formidable .has-steps .content > .body.first > .step-navigation [data-formidable-step-previous] {
    display:none
}

.formidable .has-steps .step-navigation {
    display: flex;
    justify-content: space-between;
    margin-top: 15px;
}
.formidable .has-steps .step-navigation > *:last-child {
    margin-left: auto;
}

.formidable .signature-holder {
    position: relative;
}
.formidable .signature-holder .signature {
    width: 100%;
    margin-bottom: 10px;
}
.formidable .signature-holder[disabled="disabled"] .overlay {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #eee;
    z-index:2;
}
.formidable .signature-holder[disabled="disabled"] a {
    display: none;
}

.formidable .step-navigation [data-formidable-step-next] i {
    display: none;
}
.formidable .processing .step-navigation [data-formidable-step-next] i {
    display: inline-block;
}

