


/*######## forms formulare ##########*/

/*generell*/
input,textarea,select              { border: none; }
input[type="text"],
input[type="email"],
input[type="password"],
textarea                           { -webkit-appearance: none; width: 100%;  border:1px solid lightgrey; padding: 0.417em 0.833em; }
form                               { color: #333; font-size: 1.6rem;  }
input[disabled="disabled"],input[disabled=""]         { opacity: 0.5; cursor: not-allowed;  }

input[type="checkbox"]             { border: none; margin-top: 15px; margin-right: 5px;  }
label[for="accept"] a              { font-weight: 400; color: #3473c5;  }

input::-webkit-input-placeholder   { color: #888888; }
input:-moz-placeholder             { color: #888888; }
input::-moz-placeholder            { color: #888888; }
input:-ms-input-placeholder        { color: #888888; }

.fieldgroup + .fieldgroup,
.fieldgroup + .field               { margin-top: 14px;  }
.fieldgroup span + span            { margin-left: 12px; margin-top: 0;  }
.fieldgroup span                   { display: block; width: 48%; float: left; }
.fieldgroup:after                  { content:''; display: table; clear: both;  }
.fieldgroup + input[type="submit"] { margin-top: 12px;  }
textarea.field                     { width: 100%;   }



/*wdmform*/

form,.formwrap                         { position: relative;  }
.sent form                             { opacity: 0.1;  }
.msgoverlay                            { opacity: 0; height: 0; overflow: hidden;  }
.sent .msgoverlay                      { opacity: 1; height: auto;  }
.msgoverlay                            { position: absolute; text-align: center; top: 40%; -webkit-transform: translateY(-40%); transform: translateY(-40%);  width: 100%;  }
.msgoverlay--text                      { top: 50%; position: relative;  }
.msgoverlay--icon                      { margin-bottom: 15px;  }

form .errormsg                         { display: none; max-width: 500px; font-size: 18px; margin-top: 30px; padding: 5px 10px; }
form.notvalid .errormsg                { display: block; -webkit-box-shadow: 0px 0px 0px 2px red; box-shadow: 0px 0px 0px 2px red;-webkit-transition: all .2s;transition: all .2s;  }
input.error                            { -webkit-box-shadow: 0px 0px 0px 2px red; box-shadow: 0px 0px 0px 2px red;-webkit-transition: all .2s;transition: all .2s;  }

.contactform .field + .field          { margin-top: 1em;  }
.contactform .submit                  { cursor: pointer;  }

/*wait*/
body.wait *                          { cursor: wait !important;  }




/*validation*/
.wpcf7-form.sent .fieldgroup + p,
.wpcf7-form.sent .field + p             {  display: none; }
.wpcf7 .screen-reader-response          { height: 0; overflow: hidden;  }
div.wpcf7-mail-sent-ok,
div.wpcf7-validation-errors             {  position: relative; margin: 0; padding: 0; margin-top: 1em; padding-left: 2em; border: none; color: #3473c5; font-weight: 600; }
div.wpcf7-validation-errors,
.wpcf7-not-valid-tip                    {  color: red; }
div.wpcf7-mail-sent-ok:before,      
div.wpcf7-validation-errors:before      { content:'\f00c'; position: absolute; top: -2px; left: 0; font-family: 'FontAwesome'; margin-right: 7px; font-size: 2rem;}
div.wpcf7-validation-errors:before      { content:'\f00d'; }
.fieldgroup .wpcf7-not-valid-tip        { width: 100%;  }
div.wpcf7 .ajax-loader                  { visibility: hidden; display: inline-block; background-image: url('/wp-content/plugins/contact-form-7/images/ajax-loader.gif'); width: 16px; height: 16px; border: none; padding: 0; margin: 0 0 0 4px; vertical-align: middle; }
div.wpcf7 .ajax-loader.is-active        { visibility: visible; }

@media all and (max-width: 768px){
  form                        { font-size: 1.4rem;  }
  .fieldgroup input           { width: 100%;  }
  .fieldgroup span + span     { margin-left: 3%;  }
  .fieldgroup + .fieldgroup   { margin-top: 3%;  }
  .fieldgroup input + input   { margin-top: 3%; margin-left: 0;  }
}


/*newsletter form formular*/
.nl-form.teaser               { padding-left: 0; padding-right: 0;  }
.nl-form.teaser .sheet        { padding: 42px 0;  }
.nl-form p                    { margin-bottom: 12px;  }
.nl-form input[type="submit"] { margin-left: 12px; margin-top: 0; }
.nl-form input[type="email"]  { width: 50%; float: left; }

/*Service Form - service form*/
.service-form                 { font-size: 1.8rem;  }
.service-form p               { font-weight: 600;  }
.service-form p+p             { margin-top: .25em;  }
.service-form a               { font-weight: inherit; color: inherit; text-decoration: none;  }

/*consult form formular*/
.consult-form .info           { color: #3473c5; cursor:pointer;  }
.consult-form img             { margin-bottom: .5em;  }



@media all and (max-width: 768px){

  /*nl-form*/
  .nl-form input[type="email"] { padding: 8px;   }


  /*service form formular*/
  .teaser-form .c + .c         { margin-top: 24px;  }
  .teaser-form .btn            { margin-top: 3%;  }


  /*Abstände*/
  .sheet > .video-container    { margin: 24px 0;  }

  /*karten padding*/
  .card.pad .d66 > *,
  .card.pad .d75 > *           { padding: 0; }
  .card.pad .d66 .btn          { padding:0.469em 0.938em; margin-left: 0;  }


  /*artikelseiten s-a*/

  .s-a .article-tags           { width: 100%;  }
  .s-a .kicker                 { margin-bottom: 0;  }

  /*artikel teaser innerhalb artikel / Seiten*/
  .social                      { width: 16.5%;  }
  .socialicons                 { margin-top: 17px; }
  
  /*s-a footer*/
  .s-a footer                  { padding-top: 30px; margin-top:30px; }
  .s-a footer .article-tags,  
  .s-a footer .socialicons     { float: none;  }

  /*buttons*/
  .btn                         { font-size: 1.4rem;  }
  
 
  /*teaser*/
  .teaser img                  { width: 100%;  }

  /*footer*/
  #footer                      { margin-top: 30px;  }
  #footer .r                   { padding: 30px 0;  }
  #footer .tag-alphabet        { margin-bottom: 0;  }
}



.sheet:empty {
  display: none;
}



/* @-webkit-keyframes fadeInCards       { 0% { opacity: 0; transform: scale(0.97); } 100% { opacity: 1; transform: scale(1); } }
@keyframes fadeInCards               { 0% { opacity: 0; transform: scale(0.97); } 100% { opacity: 1; transform: scale(1);  } }
.card.fadeIn                         { -webkit-animation-name: fadeInCards; animation-name: fadeInCards; } */


/* Lazy Video */
.video-container.lazy                 { position: relative; }
.video-container.lazy .info           { text-align: center; z-index: 1000; position: absolute; width: 80%; max-width: 500px; left: 50%; top: 50%; transform: translate(-50%,-50%); }
.d50 .video-container.lazy .info p.is-title { display: none; }
.d50 .video-container.lazy .info      { font-size: 14px; }
.video-container.lazy p               { line-height: 1.3; }
@media only screen and (max-width: 740px) {
.video-container.lazy                 { font-size: 14px; }
.video-container.lazy .info           { width: 80%; }
.video-container.lazy a.btn           { margin-top: 0; }
.video-container.lazy p               { line-height: 1.2; }
}

/*! Lity - v2.2.2 - 2016-12-14
* http://sorgalla.com/lity/
* Copyright (c) 2015-2016 Jan Sorgalla; Licensed MIT */
.lity                                                                         { z-index:9990;position:fixed;top:0;right:0;bottom:0;left:0;white-space:nowrap;background:#0b0b0b;background:rgba(0,0,0,0.9);outline:none !important;opacity:0;-webkit-transition:opacity .3s ease;transition:opacity .3s ease}.lity.lity-opened { opacity:1}.lity.lity-closed { opacity:0}.lity * {box-sizing:border-box}.lity-wrap { z-index:9990;position:fixed;top:0;right:0;bottom:0;left:0;text-align:center;outline:none !important}.lity-wrap:before { content:'';display:inline-block;height:100%;vertical-align:middle;margin-right:-0.25em}.lity-loader { z-index:9991;color:#fff;position:absolute;top:50%;margin-top:-0.8em;width:100%;text-align:center;font-size:14px;font-family:Arial,Helvetica,sans-serif;opacity:0;-webkit-transition:opacity .3s ease;transition:opacity .3s ease}.lity-loading .lity-loader { opacity:1}.lity-container { z-index:9992;position:relative;text-align:left;vertical-align:middle;display:inline-block;white-space:normal;max-width:100%;max-height:100%;outline:none !important}.lity-content { z-index:9993;width:100%;-webkit-transform:scale(1);transform:scale(1);-webkit-transition:-webkit-transform .3s ease;transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease, -webkit-transform .3s ease}.lity-loading .lity-content,.lity-closed .lity-content { -webkit-transform:scale(.8);transform:scale(.8)}.lity-content:after { content:'';position:absolute;left:0;top:0;bottom:0;display:block;right:0;width:auto;height:auto;z-index:-1;box-shadow:0 0 8px rgba(0,0,0,0.6)}.lity-close { z-index:9994;width:35px;height:35px;position:fixed;right:0;top:0;-webkit-appearance:none;cursor:pointer;text-decoration:none;text-align:center;padding:0;color:#fff;font-style:normal;font-size:35px;font-family:Arial,Baskerville,monospace;line-height:35px;text-shadow:0 1px 2px rgba(0,0,0,0.6);border:0;background:none;outline:none;box-shadow:none}.lity-close::-moz-focus-inner { border:0;padding:0}.lity-close:hover,.lity-close:focus,.lity-close:active,.lity-close:visited { text-decoration:none;text-align:center;padding:0;color:#fff;font-style:normal;font-size:35px;font-family:Arial,Baskerville,monospace;line-height:35px;text-shadow:0 1px 2px rgba(0,0,0,0.6);border:0;background:none;outline:none;box-shadow:none}.lity-close:active { top:1px}.lity-image img { max-width:100%;display:block;line-height:0;border:0}.lity-iframe .lity-container,.lity-youtube .lity-container,.lity-vimeo .lity-container,.lity-facebookvideo .lity-container,.lity-googlemaps .lity-container { width:100%;max-width:964px}.lity-iframe-container { width:100%;height:0;padding-top:56.25%;overflow:auto;pointer-events:auto;-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-overflow-scrolling:touch}.lity-iframe-container iframe { position:absolute;display:block;top:0;left:0;width:100%;height:100%;box-shadow:0 0 8px rgba(0,0,0,0.6);background:#000}.lity-hide { display:none}
.lity                                                                         { background: rgba(0,0,0,0.6); }
.lity-close                                                                   { font-size: 3em; position: absolute; right: 0; top: 0; -webkit-transform: translateX(35px) translateY(-35px); transform: translateX(35px) translateY(-35px); }
.lity-close:hover, .lity-close:focus, .lity-close:active, .lity-close:visited { font-size: 3em;  }


@media all and (max-width: 1024px){
.lity-close                                                                   { -webkit-transform: translateX(0px) translateY(-45px); transform: translateX(0px) translateY(-45px);  }
}

/*awesomeplete*/
.awesomplete [hidden]{display:none}.awesomplete .visually-hidden{position:absolute;clip:rect(0,0,0,0)}.awesomplete{display:inline-block;position:relative}.awesomplete>input{display:block}.awesomplete>ul{position:absolute;left:0;z-index:1;min-width:100%;box-sizing:border-box;list-style:none;padding:0;border-radius:.3em;margin:.2em 0 0;background:hsla(0,0%,100%,.9);background:-webkit-linear-gradient(top left,#fff,hsla(0,0%,100%,.8));background:linear-gradient(to bottom right,#fff,hsla(0,0%,100%,.8));border:1px solid rgba(0,0,0,.3);box-shadow:.05em .2em .6em rgba(0,0,0,.2);text-shadow:none}.awesomplete>ul:empty{display:none}@supports ((-webkit-transform: scale(0)) or (transform: scale(0))){.awesomplete>ul{-webkit-transition: .3s cubic-bezier(.4,.2,.5,1.4);transition:.3s cubic-bezier(.4,.2,.5,1.4);-webkit-transform-origin:1.43em -.43em;transform-origin:1.43em -.43em}.awesomplete>ul:empty,.awesomplete>ul[hidden]{opacity:0;-webkit-transform:scale(0);transform:scale(0);display:block;-webkit-transition-timing-function:ease;transition-timing-function:ease}}.awesomplete>ul:before{content:"";position:absolute;top:-.43em;left:1em;width:0;height:0;padding:.4em;background:#fff;border:inherit;border-right:0;border-bottom:0;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.awesomplete>ul>li{position:relative;padding:.2em .5em;cursor:pointer}.awesomplete>ul>li:hover{background:#b7d2e0;color:#000}.awesomplete>ul>li[aria-selected=true]{background:#3d6c8e;color:#fff}.awesomplete mark{background:none; font-weight: 600;}.awesomplete li:hover mark{background:none; }.awesomplete li[aria-selected=true] mark{background:#3c6b00;color:inherit}
.awesomplete { display: block;  }

/* WP Edit */
.wpedit          { display: none; }
.wpedit a        { color: #555; text-decoration: none; }
.desktop .wpedit { display: block; position: fixed; z-index: 11000; bottom: 0px; left: 0px; padding: 4px; color: #555; background: #ccc; font-size: 12px; }


.no-js .privacytoggle--btn,
.js .privacytoggle--btn.hide { display: none;  }
.privacytoggle--btn { cursor: pointer; opacity: 0.5;  }
.privacytoggle--btn:before { content: '\f055'; font-family: 'FontAwesome'; margin-right: 5px;  }
.privacytoggle--btn:hover { opacity: 0.4; transition: opacity .4s;  }
.js .privacytoggle--text {  display: none;   }
.js .open.privacytoggle--text {  display: inline-block;  }

/* source-sans-pro-300 - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/source-sans-pro-v13-latin-300.eot'); /* IE9 Compat Modes */
  src: local('Source Sans Pro Light'), local('SourceSansPro-Light'),
       url('../fonts/source-sans-pro-v13-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/source-sans-pro-v13-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/source-sans-pro-v13-latin-300.woff') format('woff'), /* Modern Browsers */
       url('../fonts/source-sans-pro-v13-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/source-sans-pro-v13-latin-300.svg#SourceSansPro') format('svg'); /* Legacy iOS */
}

/* source-sans-pro-regular - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/source-sans-pro-v13-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Source Sans Pro Regular'), local('SourceSansPro-Regular'),
       url('../fonts/source-sans-pro-v13-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/source-sans-pro-v13-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/source-sans-pro-v13-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/source-sans-pro-v13-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/source-sans-pro-v13-latin-regular.svg#SourceSansPro') format('svg'); /* Legacy iOS */
}

/* source-sans-pro-600 - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/source-sans-pro-v13-latin-600.eot'); /* IE9 Compat Modes */
  src: local('Source Sans Pro SemiBold'), local('SourceSansPro-SemiBold'),
       url('../fonts/source-sans-pro-v13-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/source-sans-pro-v13-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/source-sans-pro-v13-latin-600.woff') format('woff'), /* Modern Browsers */
       url('../fonts/source-sans-pro-v13-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/source-sans-pro-v13-latin-600.svg#SourceSansPro') format('svg'); /* Legacy iOS */
}

/* source-sans-pro-700 - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/source-sans-pro-v13-latin-700.eot'); /* IE9 Compat Modes */
  src: local('Source Sans Pro Bold'), local('SourceSansPro-Bold'),
       url('../fonts/source-sans-pro-v13-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/source-sans-pro-v13-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/source-sans-pro-v13-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/source-sans-pro-v13-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/source-sans-pro-v13-latin-700.svg#SourceSansPro') format('svg'); /* Legacy iOS */
}

