header,footer,nav,section,aside,main,article,figure,figcaption{display:block}body,div,h1,h2,h3,h4,h5,h6,p,blockquote,pre,code,ol,ul,li,dl,dt,dd,figure,table,th,td,form,fieldset,legend,input,textarea{margin:0;padding:0}table{border-spacing:0;border-collapse:collapse}caption,th,td{text-align:left;text-align:start;vertical-align:top}abbr,acronym{font-variant:normal;border-bottom:1px dotted #666;cursor:help}blockquote,q{quotes:none}fieldset,img,iframe{border:0}ul{list-style-type:none}sup{vertical-align:text-top}sub{vertical-align:text-bottom}del{text-decoration:line-through}ins{text-decoration:none}body{font:12px/1 "Lucida Grande","Lucida Sans Unicode",Verdana,sans-serif;color:#000}input,button,textarea,select{font-family:inherit;font-size:99%;font-weight:inherit}pre,code{font-family:Monaco,monospace}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400}h1{font-size:1.8333em}h2{font-size:1.6667em}h3{font-size:1.5em}h4{font-size:1.3333em}table{font-size:inherit}caption,th{font-weight:700}a{color:#00f}h1,h2,h3,h4,h5,h6{margin-top:1em}h1,h2,h3,h4,h5,h6,p,pre,blockquote,table,ol,ul,form{margin-bottom:12px}
body,form,figure{margin:0;padding:0}img{border:0}header,footer,nav,section,aside,article,figure,figcaption{display:block}body{font-size:100.01%}select,input,textarea{font-size:99%}#container,.inside{position:relative}#main,#left,#right{float:left;position:relative}#main{width:100%}#left{margin-left:-100%}#right{margin-right:-100%}#footer{clear:both}#main .inside{min-height:1px}.ce_gallery>ul,.content-gallery>ul{margin:0;padding:0;overflow:hidden;list-style:none}.ce_gallery>ul li,.content-gallery>ul li{float:left}.ce_gallery>ul li.col_first,.content-gallery>ul li.col_first{clear:left}.float_left,.media--left>figure{float:left}.float_right,.media--right>figure{float:right}.block{overflow:hidden}.media{display:flow-root}.clear,#clear{height:.1px;font-size:.1px;line-height:.1px;clear:both}.invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.custom{display:block}#container:after,.custom:after{content:"";display:table;clear:both}
@charset "UTF-8";
.contao-cookiebar{position:fixed;left:0;right:0;top:0;bottom:0;z-index:9999;font-size:0;text-align:center;padding:65px 70px;max-height:100vh;box-sizing:border-box;pointer-events:none;overflow:hidden;display:flex;align-items:flex-end;justify-content:flex-end}.contao-cookiebar *{box-sizing:border-box}.contao-cookiebar::before{content:"";display:inline-block;height:100%;vertical-align:middle}.contao-cookiebar .cc-inner{display:inline-block;width:390px;box-sizing:border-box;overflow-y:auto;max-height:100%;max-width:100%;opacity:0;pointer-events:none;visibility:hidden;font-size:0.85rem;text-align:left;box-shadow:0 0 80px rgba(0, 0, 0, 0.15);border-radius:0}.contao-cookiebar .cc-inner a{font-size:1em}.contao-cookiebar.cc-top{align-items:flex-start;justify-content:center}.contao-cookiebar.cc-top.cc-active .cc-inner{animation:cookiebar-top-in 0.5s ease-in-out forwards}.contao-cookiebar.cc-top.cc-saved .cc-inner{animation:cookiebar-top-out 0.5s ease-in-out forwards}.contao-cookiebar.cc-bottom{align-items:flex-end;justify-content:flex-end}.contao-cookiebar.cc-bottom.cc-active .cc-inner{animation:cookiebar-bottom-in 0.5s ease-in-out forwards}.contao-cookiebar.cc-bottom.cc-saved .cc-inner{animation:cookiebar-bottom-out 0.5s ease-in-out forwards}.contao-cookiebar.cc-middle{align-items:center;justify-content:center}.contao-cookiebar.cc-middle.cc-active .cc-inner{animation:cookiebar-middle-in 0.5s ease-in-out forwards}.contao-cookiebar.cc-middle.cc-saved .cc-inner{animation:cookiebar-middle-out 0.5s ease-in-out forwards}.contao-cookiebar .cc-head h1:first-child,.contao-cookiebar .cc-head h2:first-child,.contao-cookiebar .cc-head h3:first-child,.contao-cookiebar .cc-head h4:first-child,.contao-cookiebar .cc-head h5:first-child,.contao-cookiebar .cc-head h6:first-child{margin-top:0}.contao-cookiebar .cc-head p{margin-bottom:15px}.contao-cookiebar .cc-btn{font-size:1.25em;border:2px solid;border-radius:0;transition:background-color ease-out 0.3s, color ease-out 0.3s;cursor:pointer;padding:1em 1.6em}.contao-cookiebar .cc-btn.success{background-color:#005491;color:#fff;border-color:#005491}.contao-cookiebar .cc-btn.success:hover{background-color:#fff;color:#005491}.contao-cookiebar .cc-btn.warn{background-color:#fff;color:#000;border-color:#fff}.contao-cookiebar .cc-btn.warn:hover{color:#005491;background-color:#fff;border-color:#fff}.contao-cookiebar .cc-btn.info{padding:0;margin:0;background:none;border:none}.contao-cookiebar .cc-btn.info svg{width:15px;height:15px}.contao-cookiebar .cc-btn.info:hover svg{fill:#005491}.contao-cookiebar .cc-btn:last-child{margin-bottom:0;border-color:#F0F0F0}.contao-cookiebar label{position:relative;display:block;padding:8px 13px 8px 0;line-height:1.2}.contao-cookiebar label.group{font-weight:600}.contao-cookiebar input{position:absolute;width:1px;height:1px;outline:0 none;opacity:0}.contao-cookiebar input+label{padding:8px 13px 8px 50px;cursor:pointer}.contao-cookiebar input+label::before{content:"";position:absolute;top:6px;left:0;width:35px;height:18px;margin:0;box-sizing:content-box;border-radius:10px;background:#fff;border:2px solid #9c9b99;transition:border-color 0.2s}.contao-cookiebar input+label::after{display:block;content:"";position:absolute;top:10px;left:4px;width:14px;height:14px;border-radius:10px;background:#9c9b99;transition:background 0.2s, margin-left 0.2s, padding 0.2s}.contao-cookiebar input+label:active::after{padding-left:5px}.contao-cookiebar input.cc-group-half+label::after{background:linear-gradient(to right, #9c9b99 0%, #9c9b99 50%, #005491 50%, #005491 100%)}.contao-cookiebar input:checked+label::after{background:#005491;margin-left:17px}.contao-cookiebar input:checked+label:active::after{margin-left:12px}.contao-cookiebar input:checked+label::before{background:#fff;border-color:#005491}.contao-cookiebar input:disabled+label{pointer-events:none}.contao-cookiebar input:disabled+label:after{background:#c8c7c5}.contao-cookiebar input:disabled+label:before{background:#f4f4f4;border-color:#c8c7c5}.contao-cookiebar.cc-active .cc-inner{opacity:1;pointer-events:auto;visibility:visible}.contao-cookiebar.cc-active.cc-blocked{pointer-events:auto;animation:cookiebar-overlay-in 0.5s ease-in-out forwards}.contao-cookiebar.cc-saved.cc-inner{opacity:0;pointer-events:none;visibility:hidden}.contao-cookiebar.cc-saved.cc-blocked{pointer-events:none;animation:cookiebar-overlay-out 0.5s ease-in-out forwards}@keyframes cookiebar-overlay-in{0%{background:rgba(0, 0, 0, 0)}100%{background:rgba(0, 0, 0, 0.75)}}@keyframes cookiebar-overlay-out{0%{background:rgba(0, 0, 0, 0.75)}100%{background:rgba(0, 0, 0, 0);visibility:hidden}}@keyframes cookiebar-top-in{0%{opacity:0;transform:translateY(-100%)}100%{opacity:1;transform:translateY(0)}}@keyframes cookiebar-top-out{0%{opacity:1;visibility:visible;transform:translateY(0)}100%{opacity:0;visibility:hidden;transform:translateY(-100%)}}@keyframes cookiebar-middle-in{0%{opacity:0;transform:scale(0)}100%{opacity:1;transform:scale(1)}}@keyframes cookiebar-middle-out{0%{opacity:1;visibility:visible;transform:scale(1)}100%{opacity:0;visibility:hidden;transform:scale(0)}}@keyframes cookiebar-bottom-in{0%{opacity:0;transform:translateY(100%)}100%{opacity:1;transform:translateY(0)}}@keyframes cookiebar-bottom-out{0%{opacity:1;visibility:visible;transform:translateY(0)}100%{opacity:0;visibility:hidden;transform:translateY(100%)}}.cookiebar_simple{color:#666}.cookiebar_simple p{color:#666;line-height:1.4}.cookiebar_simple .cc-inner{padding:25px;-webkit-box-shadow:0 0 10px 0 rgba(0, 0, 0, 0.25);box-shadow:0 0 10px 0 rgba(0, 0, 0, 0.25);background:#fff}.cookiebar_simple .cc-groups{display:none;padding-top:15px}.cookiebar_simple .cc-groups .cc-group{position:relative;border:1px solid #d0d0d0;border-radius:0;margin-bottom:10px;text-align:left}.cookiebar_simple .cc-groups .cc-group>label{margin:5px 130px 5px 10px}.cookiebar_simple .cc-group .cc-detail-btn{position:absolute;right:0;top:0;border:0 none;outline:0 none;background:transparent;font-size:13px;letter-spacing:0;text-transform:initial;cursor:pointer;padding:13px;color:#a2a2a2}.cookiebar_simple .cc-group .cc-detail-btn:hover{color:#717171}.cookiebar_simple .cc-group .cc-detail-btn span:nth-child(2){display:none}.cookiebar_simple .cc-group .cc-detail-btn.cc-active span:nth-child(1){display:none}.cookiebar_simple .cc-group .cc-detail-btn.cc-active span:nth-child(2){display:inline}.cookiebar_simple .cc-cookies{display:none;background:#fbfbfb}.cookiebar_simple .cc-cookies>p{font-size:0.875rem}.cookiebar_simple .cc-cookies>p,.cookiebar_simple .cc-cookies>.cc-cookie{margin:0;padding:15px;border-top:1px solid #e6e6e6}.cookiebar_simple .cc-cookies .cc-cookie .cc-cookie-info>div+div{margin-top:5px}.cookiebar_simple .cc-cookies .cc-cookie label.cookie{margin-bottom:10px}.cookiebar_simple .cc-cookies .cc-cookie p{margin:0 0 15px;font-size:0.875rem}.cookiebar_simple .cc-info{margin-top:15px}.cookiebar_simple .cc-info>p{font-size:0.875rem}.cookiebar_simple .cc-info>a{display:inline-block;font-size:0.813rem;color:#a2a2a2;text-decoration:none}.cookiebar_simple .cc-info>a:hover{color:#717171}.cookiebar_simple .cc-info>a+a::before{display:inline-block;content:"·";margin-right:5px}@media (min-width:768px){.contao-cookiebar .cc-btn{width:auto;margin-bottom:0}.contao-cookiebar .cc-inner{max-width:750px}}@media screen and (max-width:500px){.contao-cookiebar{padding:5%}}
/* Kacheln =================================================================================================== */
.mod_article:not(.doppelkachel),
.doppelkachel .content-text,
.doppelkachel .content-image {
  width: 50%;
  float: left;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.datenschutz .mod_article,
.datenschutz .mod_article .width,
.impressum .mod_article,
.impressum .mod_article .width {
  width: 100% !important;
  display: block !important;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.mod_article:not(.doppelkachel),
.doppelkachel .content-text {
  display: table;
}
.mod_article:not(#kontakt) .width {
  display: table-cell;
}
.doppelkachel {
  width: 100%;
}
.mod_article .rte {
  padding-left: 4.3em;
  font-size: 1em;
  line-height: 1.5;
  color: #898989;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}
.impressum .mod_article .rte {
  padding-left: 2em;
}
#main .inside .doppelkachel .width {
  padding: 0;
}
.doppelkachel .content-text {
  padding: 10em;
}
.doppelkachel .content-image {
  height: 1px;
  background-position: right center;
  background-repeat: no-repeat;
  background-size: cover;
}
#michael-tarabochia .content-image {
  background-position: center center;
}
#leistungen h2 {
  max-width: 8em;
}
#kontakt h2 {
  max-width: 16.5em;
}
#kontakt p:last-child {
  position: relative;
}
#kontakt p:last-child::before {
  left: -1em;
  position: absolute;
  font-family: FontAwesome;
  color: #b0b0b0;
  content: "\F041";
}
#kontakt p:not(:last-child) a:first-child {
  color: #898989;
}
#kontakt p:not(:last-child) a:first-child:hover {
  color: #898989;
}

/* Artikel =================================================================================================== */
.mod_article {
  background-color: #fff;
}
#michael-tarabochia,
#kontakt {
  background-color: #fff;
}
.mod_article:nth-child(2) {
  background-color: #f0f0f0;
}
.mod_article.zweispaltig .inside,
.mod_article.dreispaltig .inside,
.mod_article.vierspaltig .inside {
  overflow: hidden;
}
.impressum .mod_article .inside > :nth-child(1) {
  -webkit-flex-basis: 100%;
  -ms-flex-preferred-size: 100%;
  flex-basis: 100%;
}
#datenschutz {
  border-bottom: 1px solid #fff;
}

/* zweispaltig --------------------------------------------------------------------------------------------------- */
.mod_article.zweispaltig .inside > div {
  width: 46%;
  float: left;
}
.mod_article.zweispaltig .inside > div + div {
  margin-top: 0;
  margin-left: 8%;
}

/* dreispaltig --------------------------------------------------------------------------------------------------- */
.mod_article.dreispaltig .inside > div,
.mod_newslist.dreispaltig > div {
  width: 31%;
  float: left;
}
.mod_article.dreispaltig .inside > div + div,
.mod_newslist.dreispaltig > div + div {
  margin-top: 0;
  margin-left: 3.5%;
}

/* vierspaltig --------------------------------------------------------------------------------------------------- */
.mod_article.vierspaltig .inside > div {
  width: 22%;
  float: left;
}
.mod_article.vierspaltig .inside > div + div {
  margin-top: 0;
  margin-left: 4%;
}
.mod_article.center {
  text-align: center;
}
.mod_article.dreispaltig .inside > div:nth-of-type(3n + 1) {
  margin-left: 0;
}
.mod_article.zweispaltig .inside > div:nth-of-type(2n + 1) {
  margin-left: 0;
}
.mod_article.vierspaltig .inside > div:nth-of-type(4n + 1) {
  margin-left: 0;
}
.mod_article.vierspaltig.flex .inside > div + div {
  margin-left: 0;
}
.mod_article.vierspaltig.flex .inside > div {
  float: none;
}
.mod_article.zweispaltig.flex .inside > div + div {
  margin-left: 0;
}
.mod_article.dreispaltig.flex .inside > div {
  float: none;
}
.mod_article.dreispaltig.flex .inside > div + div {
  margin-left: 0;
}
.mod_article.flex .inside {
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.mod_article.zweispaltig.flex .inside > div {
  float: none;
}

/* Colorbox =================================================================================================== */
#cboxOverlay {
  background-color: #005491;
}
#cboxContent {
  margin-top: 0;
  background-color: #fff;
}
#cboxLoadedContent {
  border: 0px;
}
#colorbox {
  -webkit-box-shadow: 0 0 50px rgba(0, 0, 0, 0.4);
  box-shadow: 0 0 50px rgba(0, 0, 0, 0.4);
  behavior: url("assets/css3pie/1.0.0/PIE.htc");
}
#cboxClose {
  width: 80px;
  height: 80px;
  right: 0;
  top: 0;
  position: fixed;
  background-position: center center;
  background-repeat: no-repeat;
  text-indent: 0;
  background-image: url("../../files/css/files/layout/white_cross.png");
  background-size: 32px 32px;
}
#cboxPrevious,
#cboxNext {
  width: 50%;
  height: 100%;
  left: 0;
  top: 0;
  margin-top: 0;
  background-image: none;
}
#cboxNext {
  left: auto;
  right: 0;
}
#cboxPrevious:after,
#cboxNext:after {
  top: 50%;
  position: absolute;
  display: block;
  margin-top: -30px;
  color: #fff;
  text-indent: 0;
  font: 60px/60px FontAwesome;
  content: "\f104";
  left: 20px;
  opacity: 0;
}
#cboxNext:after {
  left: auto;
  right: 20px;
  content: "\f105";
}
#cboxPrevious:hover:after,
#cboxNext:hover:after {
  opacity: 1;
}
#cboxLoadingGraphic {
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url("../../files/css/files/layout/loading.gif");
}
#cboxClose:hover {
  background-position: center center;
}
#cboxTitle,
#cboxCurrent {
  display: none !important;
}
#colorbox,
#cboxWrapper,
#cboxWrapper > div,
#cboxContent {
  overflow: visible;
}
#cookie-bar #close-button {
  float: right;
  margin-left: 1em;
  white-space: nowrap;
  background-color: #2171b8;
}
#cookie-bar p {
  display: table-cell;
  vertical-align: middle;
}
#cookie-bar .inside {
  width: 100%;
  display: table;
  padding: 0.5em 0.5em 0.5em 1em;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* Cookie Leiste --------------------------------------------------------------------------------------------------- */
#cookie-bar {
  bottom: 0;
  left: 0;
  right: 0;
  position: fixed;
  display: none;
  background-color: #fff;
  font-size: 0.85em;
  line-height: 1.3em;
  -webkit-box-shadow: 0 0 80px rgba(0, 0, 0, 0.15);
  box-shadow: 0 0 80px rgba(0, 0, 0, 0.15);
  behavior: url("assets/css3pie/1.0.0/PIE.htc");
  z-index: 1000;
}

/* Downloads =================================================================================================== */
.ce_download .mime_icon,
.ce_downloads .mime_icon {
  display: none;
}
a[href$=".pdf"]:before {
  padding-right: 0.5em;
  color: #d60404;
  content: "\f1c1";
}

/* Footer =================================================================================================== */
#footer {
  position: relative;
  padding: 1.5em 0;
  background-color: #f0f0f0;
}
#footer #footer-nav li {
  float: left;
}
#footer #footer-nav li > a {
  display: block;
  padding-top: 1.5em;
  padding-bottom: 1.5em;
}
#footer #footer-nav li + li > a {
  padding-left: 1em;
}
#copyright {
  margin-right: 16em;
  margin-left: 16em;
  text-align: center;
  font-size: 0.85em;
  color: #b2b2b2;
}
#logo_small {
  top: -1.5em;
  position: absolute;
  margin-left: 7.5em;
  left: 0;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
#logo_small::before {
  width: 4em;
  height: 4em;
  right: 50%;
  position: absolute;
  display: block;
  margin-top: -2em;
  margin-right: -2em;
  background-color: #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  z-index: -1;
}
#logo_small img {
  max-width: 4.4em;
}
#copyright a {
  color: #b2b2b2;
}
#copyright a:hover {
  color: #005491;
}

/* Formulare =================================================================================================== */
.ce_form .text,
.ce_form .captcha,
.ce_form textarea,
.ce_form select {
  width: 100%;
  position: relative;
  padding: 0.5em 0.8em;
  border: 1px solid #d1d1d1;
  border-radius: 0;
  behavior: url("assets/css3pie/1.0.0/PIE.htc");
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.ce_form .captcha {
  width: 3em;
  margin-right: 1em;
  text-align: center;
}
.ce_form .captcha_text {
  font-style: italic;
}
.ce_form .grid {
  width: 49%;
  float: left;
}
.ce_form .grid + .grid {
  margin-left: 2%;
}
.ce_form label {
  display: block;
  font-size: 0.9em;
}

/* Error --------------------------------------------------------------------------------------------------- */
p.error {
  font-size: 0.9em;
  color: #f00;
}
.ce_form .text:hover,
.ce_form .captcha:hover,
.ce_form textarea:hover {
  border-color: #005491;
}
.ce_form .text:focus,
.ce_form .captcha:focus,
.ce_form textarea:focus {
  border-color: #f0f0f0;
  background-color: rgba(2171b8, 0.05);
}
.ce_form .text.error,
.ce_form .captcha.error,
.ce_form textarea.error {
  border-color: #f00;
}
.ce_form .widget {
  margin-bottom: 1em;
}
.firefox .ce_form select option {
  padding: 0.25em 0.4em;
}

/* Browserspezifische Formatierungen --------------------------------------------------------------------------------------------------- */
.firefox .ce_form select {
  padding: 0.25em 0.4em;
}

/* Galerie =================================================================================================== */
.ce_gallery ul {
  overflow: hidden;
  margin: -1%;
}
.ce_gallery li {
  width: 23%;
  float: left;
  margin: 1%;
  clear: none !important;
}

/* Mouse over --------------------------------------------------------------------------------------------------- */
a.cboxElement {
  position: relative;
  display: block;
  background-color: #005491;
}
a.cboxElement:hover img {
  opacity: 0.4;
}
a.cboxElement:after {
  left: 50%;
  position: absolute;
  margin-top: -10px;
  margin-left: -12px;
  font-size: 30px;
  color: #fff;
  top: 50%;
  content: "\f002";
  opacity: 0;
  pointer-events: none;
}
a.cboxElement:hover:after {
  opacity: 1;
}
.ce_gallery.zweispaltig li {
  width: 48%;
}
.ce_gallery.dreispaltig li {
  width: 31.333%;
}

/* Header ======================================================================================== */
#header {
  left: 0;
  right: 0;
  top: 0;
  position: fixed;
  padding: 2em 0;
  background-color: #fff;
  border-bottom: 1px solid #b0b0b0;
  z-index: 9999;
}
#logo {
  max-width: 17em;
  display: block;
}
#header .content-text {
  right: 0;
  bottom: 0;
  position: absolute;
}
#header .content-text p {
  float: left;
  margin: 0;
  padding-right: 1em;
  color: #333;
}
#header .content-text p:last-child {
  padding-right: 0;
}
#header .content-text p::before {
  padding-right: 0.5em;
  font-family: FontAwesome;
  color: #b0b0b0;
}
#header .content-text p:first-child::before {
  content: "\F041";
}
#header .content-text p:nth-child(2)::before {
  content: "\F095";
}
#header .content-text p:last-child::before {
  content: "\F003";
}
#header .content-text p:nth-child(2) a {
  color: #333;
}
#header .phone_mobile {
  display: none;
}
#header .phone_mobile::before {
  right: 0;
  bottom: 15px;
  position: absolute;
  font-size: 2.5em;
  content: "\f095";
}
#header.smaller #logo {
  max-width: 12em;
}
#header.smaller {
  padding-top: 1em;
  padding-bottom: 1em;
}

/* Hauptnavigation --------------------------------------------------------------------------------------------------- */
#main-nav ul {
}
#main-nav .level_1 > li {
  float: left;
}
#main-nav .level_1 > li > a {
  display: block;
  padding-top: 3em;
  padding-bottom: 3em;
  font: 15px/1em open_sansregular;
}
#main-nav .level_1 > li > a.active,
#main-nav .level_1 > li > a:hover,
#main-nav .level_1 > li > a.trail,
#main-nav .level_1 > li > a.open {
  color: #005491;
}
#main-nav .level_1 > li > a.active,
#main-nav .level_1 > li > a.trail {
  font-family: open_sanssemibold;
}

/* Mobile Button -------------------------------------------------------------------------------- */
#mobile-button {
  width: 24px;
  display: none;
  margin-left: auto;
  padding: 30px;
  cursor: pointer;
}
#mobile-button .space {
  height: 3px;
}
#mobile-button .line {
  height: 4px;
  background-color: #005491;
}
#mobile-button.active .line,
#mobile-button:hover .line {
  background-color: #f0f0f0;
}

/* Level 2 */
#main-nav .level_2 {
  position: absolute;
  display: none;
  background-color: #f0f0f0;
  -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
  behavior: url("assets/css3pie/1.0.0/PIE.htc");
}
#main-nav .level_2 > li > a {
  display: block;
  padding: 0.5em 0.75em;
  font-size: 0.85em;
  color: #fff;
}
#main-nav .level_2 li.submenu > a:after {
  float: right;
  content: "\f105";
}
p.back a,
.ce_hyperlink {
  margin-top: 1.4em;
}

/* Links =================================================================================================== */
a {
  text-decoration: none;
  color: #005491;
}
a:hover {
  color: #b2b2b2;
  cursor: pointer;
}
a:before,
a:after {
  font-family: FontAwesome;
}

/* Buttons --------------------------------------------------------------------------------------------------- */
a.button,
input.submit,
a.hyperlink_txt {
  position: relative;
  display: inline-block;
  padding: 0.8em 1.6em;
  background-color: #f0f0f0;
  border: 0;
  border-radius: 0;
  line-height: 1em;
  color: #fff;
  text-transform: uppercase;
  behavior: url("assets/css3pie/1.0.0/PIE.htc");
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
a.button:hover,
input.submit:hover,
a.hyperlink_txt:hover,
.ghost a.hyperlink_txt {
  background-color: #005491;
}

/* Icons */
a.button:before {
  margin-right: 0.5em;
}
a.button.left:before {
  content: "\f053";
}
.image_container a[target="_blank"]:after,
.image_container a[target="_new"]:after,
#main-nav a[target="_blank"]:after,
#main-nav a[target="_new"]:after {
  margin-left: 0;
  content: "";
}
.ghost a.hyperlink_txt:hover {
  background-color: #005491;
  color: #fff;
}
a.button.back {
  margin-top: 2em;
}

/* Mediaelement ======================================================================================================== */
.mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current,
.mejs-controls .mejs-time-rail .mejs-time-current {
  background-color: #fff;
  background: none;
}
.mejs-controls .mejs-time-rail .mejs-time-loaded {
  background: none;
  background: #005491;
}
.mejs-controls .mejs-time-rail .mejs-time-total,
.mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total {
  background: none;
  background: #383838;
}
.mejs-container .mejs-controls {
  background: none;
  background: #000;
}
.mejs-controls .mejs-button button {
  outline: 0 !important;
}
.mejs-controls .mejs-button button {
  background: url("../../files/css/files/layout/controls.svg") no-repeat scroll 0% 0%
    transparent;
}
.mejs-controls .mejs-pause button {
  background-position: 0px -16px;
}
.mejs-controls .mejs-mute button {
  background-position: -16px -16px;
}
.mejs-controls .mejs-unmute button {
  background-position: -16px 0px;
}

/* HTML --------------------------------------------------------------------------------------------------- */
html {
  font-size: 16px;
  overflow-y: scroll;
}
body {
  background-color: #fff;
  font-family: open_sansregular, arial, verdana, sans-serif;
  line-height: 1.5em;
  color: #707070;
}
#wrapper {
  max-width: 2200px;
  overflow: hidden;
  margin: 0 auto;
  -webkit-box-shadow: 0 0 50px rgba(0, 69, 115, 0.1);
  box-shadow: 0 0 50px rgba(0, 69, 115, 0.1);
}
:focus {
  outline: 0;
  border: none;
}
::-moz-selection {
  background-color: #005491;
  color: #fff;
}
::selection {
  background-color: #005491;
  color: #fff;
}
::-moz-selection {
  background-color: #005491;
  color: #fff;
}
img {
  width: 100%;
  height: auto;
  display: block;
}

/* Page --------------------------------------------------------------------------------------------------- */
#main .mod_article .width {
  padding-top: 10em;
  padding-bottom: 10em;
}
.width {
  position: relative;
  margin-right: auto;
  margin-left: auto;
  padding-right: 10em;
  padding-left: 10em;
  vertical-align: middle;
}

/* Margins --------------------------------------------------------------------------------------------------- */
p,
ul,
ol,
table,
.content-text .rte > :last-child {
  margin-bottom: 0;
}
.content-text p,
.content-text ul,
.content-text ol {
  margin-bottom: 1.5em;
}

/* Listen --------------------------------------------------------------------------------------------------- */
.content-text ul li,
.ce_list ul li {
  position: relative;
  padding-left: 1.5em;
}
.content-text ul li:before,
.ce_list ul li:before {
  width: 0.4em;
  height: 0.4em;
  left: 0;
  top: 0.5em;
  position: absolute;
  display: block;
  content: "";
  background: #005491;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* Überschriften --------------------------------------------------------------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: glegoo_bold;
  color: #005491;
}
.impressum h1 {
  text-align: center;
}
.impressum h3 {
  margin-top: 1em;
}
h1 {
  margin-top: 0;
  margin-bottom: 1em;
  font-size: 2.8em;
  line-height: 1.2em;
}
h2 {
  max-width: 10em;
  margin-top: 0;
  margin-bottom: 1em;
  font-size: 2em;
  line-height: 1.2em;
}
.datenschutz h2 {
  max-width: 100%;
}
h2 em,
h2 i {
  display: block;
  color: #b2b2b2;
  font-style: normal;
}
#michael-tarabochia h2 i,
#michael-tarabochia h2 em,
#stephan-meissner h2 em,
#stephan-meissner h2 i {
  font-size: 0.47em;
  line-height: 1.5em;
  text-transform: uppercase;
}
h3 {
  margin-top: 0;
  margin-bottom: 1em;
  font-size: 1.3em;
  line-height: 1.2em;
  text-transform: uppercase;
}
h4 {
  margin-top: 0;
  margin-bottom: 1em;
  font-size: 1.2em;
  line-height: 1.2em;
  color: #005491;
  text-transform: uppercase;
}
h5,
h6 {
  margin-top: 0;
  margin-bottom: 1em;
  font-size: 1em;
  line-height: 1.2em;
}

/* Texte Bilder --------------------------------------------------------------------------------------------------- */
#main .image_container img {
  height: auto;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}
#main .image_container {
  max-width: 100%;
}
#main .image_container.float_left {
  margin-right: 2em;
}
#main .image_container.float_right {
  margin-left: 2em;
}
.mod_article.fullwidth > .width {
  max-width: 100%;
  padding-right: 0;
  padding-left: 0;
}
#main .image_container.float_left,
#main .image_container.float_right,
#main .image_container.float_above {
  margin-bottom: 1em;
}
strong,
b {
  font-family: open_sanssemibold;
  font-weight: normal;
  font-style: normal;
}
.pagination li {
  display: inline-block;
}
.pagination li + li {
  padding-left: 1em;
}
.show-only-mobile {
  display: none;
}
.pagination {
  float: right;
  margin-top: 3em;
}
#main .mod_article.no-padding > .width {
  padding: 0;
}
#main .image_container.float_below {
  margin-top: 1em;
}
.slick-prev {
  left: 0;
  z-index: 1;
}
.slick-next {
  right: 0;
}

/* Slider --------------------------------------------------------------------------------------------- */
.slick-arrow {
  top: 50%;
  position: absolute;
}

/* Tabellen =================================================================================================== */
.ce_table {
  width: 100%;
  overflow-x: auto;
}
table {
  width: 100%;
  min-width: 600px;
}
table tbody tr:nth-child(odd),
table tbody tr.even {
  background-color: #d1d1d1;
}
table td,
table th {
  padding: 0.3em 0.5em;
}
table thead tr {
  background-color: #005491;
  font-family: open_sansbold;
  color: #fff;
}

/* Weihnachtskarte =================================================================================================== */
#card-overlay {
  width: 100%;
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
  position: fixed;
  display: none;
  background-color: rgba(0, 84, 145, 0.8);
  z-index: 10000;
  overflow-y: auto;
}
#card-overlay .content-image {
  max-width: 850px;
  margin-right: auto;
  margin-left: auto;
  margin-top: 100px;
}
#card-overlay .close {
  width: 100px;
  height: 100px;
  right: 0;
  top: 0;
  position: absolute;
  display: block;
  z-index: 1;
}
#card-overlay .close:before {
  width: 100px;
  height: 100px;
  left: 0;
  top: 0;
  position: absolute;
  text-align: center;
  font: 3em/100px FontAwesome;
  color: #fff;
  content: "\f00d";
}
#card-overlay .close:hover::before {
  opacity: 0.5;
}

/* Transitions =================================================================================================== */
a,
a:after,
a:before,
#mobile-button .line {
  -webkit-transition: color 0.3s ease-out, background-color 0.3s ease-out,
    opacity 0.3s ease-out;
  transition: color 0.3s ease-out, background-color 0.3s ease-out,
    opacity 0.3s ease-out;
}
.ce_form * {
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
a.cboxElement img,
a.cboxElement:after,
#cboxPrevious:after,
#cboxNext:after {
  -webkit-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
}
#header,
#header #logo {
  -webkit-transition: max-width 0.3s ease-out, padding 0.3s ease-out;
  transition: max-width 0.3s ease-out, padding 0.3s ease-out;
}

@media screen and (max-width: 1920px) {
  #main .mod_article .width {
    padding-top: 9em;
    padding-bottom: 9em;
  }
  .width {
    padding-right: 9em;
    padding-left: 9em;
  }
  .doppelkachel .content-text {
    padding: 9em;
  }
}

@media screen and (max-width: 1700px) {
html {
    font-size:15px;
}
}

@media screen and (max-width: 1500px) {
  #card-overlay .content-image {
    max-width: 500px;
  }
  html {
    font-size: 14px;
  }
  #main .mod_article .width {
    padding-top: 8em;
    padding-bottom: 8em;
  }
  .width {
    padding-right: 8em;
    padding-left: 8em;
  }
  .doppelkachel .content-text {
    padding: 8em;
  }
}

@media screen and (max-width: 1400px) {
  #main .mod_article .width {
    padding-top: 6em;
    padding-bottom: 6em;
  }
  .width {
    padding-right: 6em;
    padding-left: 6em;
  }
  .doppelkachel .content-text {
    padding: 6em;
  }
}

@media screen and (max-width: 1200px) {
.doppelkachel .content-image {
    background-position:center center;
}
}

@media screen and (max-width: 1024px) {
  .mod_article.dreispaltig .inside > div,
  .mod_newslist.dreispaltig > div {
    width: 50%;
    margin-bottom: 3em;
  }
  .impressum .mod_article .ce_text:not(:nth-child(3)) .rte {
    padding-left: 0;
  }
  #header .rte {
    max-width: 20em;
  }
  #header .content-text p {
    float: right;
    padding-right: 0;
  }
  .mod_article .rte {
    padding-left: 2em;
  }
  #weihnachtskarte .content-image {
    max-width: 100%;
  }
}

@media screen and (max-width: 900px) {
  .doppelkachel .content-image {
    max-height: 30em;
  }
  #michael-tarabochia .content-image,
  #stephan-meissner .content-image {
    -ms-flex-order: 1;
    -webkit-box-ordinal-group: 2;
    order: 1;
  }
  #michael-tarabochia .content-text,
  #stephan-meissner .content-text {
    -ms-flex-order: 2;
    -webkit-box-ordinal-group: 3;
    order: 2;
  }
  #michael-tarabochia .width,
  #stephan-meissner .width {
    display: -ms-flexbox !important;
    display: -webkit-flexbox !important;
    display: flex !important;
    -webkit-flex-direction: row;
    flex-direction: row;
  }
  #michael-tarabochia .inside,
  #stephan-meissner .inside {
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .doppelkachel .content-text,
  .doppelkachel .content-image {
    width: 100%;
    float: none;
    margin: 0 auto;
  }
  .mod_article .rte {
    padding-left: 4.3em;
  }
  .mod_article:not(.doppelkachel) {
    width: 100%;
  }
  .mod_article {
    background-color: #fff;
  }
  #header {
    position: static;
  }
}

@media screen and (max-width: 800px) {
  .impressum .mod_article .rte {
    padding-left: 0;
  }
  .mod_article.dreispaltig .inside > div,
  .mod_newslist.dreispaltig > div {
    width: 100%;
  }
  #main .mod_article .width {
    padding-top: 5em;
    padding-bottom: 5em;
  }
  .width {
    padding-right: 5em;
    padding-left: 5em;
  }
  .doppelkachel .content-text {
    padding: 5em;
  }
}

@media screen and (max-width: 700px) {
#copyright {
    margin-top:3em;
    margin-left: 70px;
    margin-right: 70px;
}
}

@media screen and (max-width:600px) {
#logo_small {
    margin-left:70px;
}
#copyright {
    margin-right:7%;
    margin-left:7%;
}
#header .content-text {
    display:none;
}
#header .phone_mobile {
    display:block;
}
#kontakt a:first-child {
    color:#005491;
}
#kontakt a:first-child:hover {
    color:#b3b2b2;
}
div.width {
    padding-right:7%;
    padding-left:7%;
}
.doppelkachel .content-text {
    padding-right:7%;
    padding-left:7%;
}
#weihnachtskarte .close::before {
    right:-7%;
}
}

@media screen and (max-width: 500px) {
.ce_gallery li,
div[class*="spaltig"].ce_gallery li {
    width:100%;
    margin:1.5em 0;
}
.ce_gallery ul {
    margin:0;
}
.ce_form .grid,
.ce_form .grid + .grid {
    width:100%;
    float:none;
    margin-left:0;
}
#map-overlay h2 {
    font-size:2em;
}
#card-overlay .ce_image {
    max-width:90%;
}
}

@media screen and (max-width: 450px) {
  .mod_article .rte {
    padding-left: 2em;
  }
  #logo {
    max-width: 15em;
  }
}

