/* amiko-regular - latin */
@font-face {
  font-family: 'Amiko';
  font-style: normal;
  font-weight: 400;
  src: url('/assets/fonts/amiko/amiko-v5-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('/assets/fonts/amiko/amiko-v5-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/assets/fonts/amiko/amiko-v5-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('/assets/fonts/amiko/amiko-v5-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('/assets/fonts/amiko/amiko-v5-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/assets/fonts/amiko/amiko-v5-latin-regular.svg#Amiko') format('svg'); /* Legacy iOS */
}
/* amiko-600 - latin */
@font-face {
  font-family: 'Amiko';
  font-style: normal;
  font-weight: 600;
  src: url('/assets/fonts/amiko/amiko-v5-latin-600.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('/assets/fonts/amiko/amiko-v5-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/assets/fonts/amiko/amiko-v5-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('/assets/fonts/amiko/amiko-v5-latin-600.woff') format('woff'), /* Modern Browsers */
       url('/assets/fonts/amiko/amiko-v5-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/assets/fonts/amiko/amiko-v5-latin-600.svg#Amiko') format('svg'); /* Legacy iOS */
}
/* amiko-700 - latin */
@font-face {
  font-family: 'Amiko';
  font-style: normal;
  font-weight: 700;
  src: url('/assets/fonts/amiko/amiko-v5-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('/assets/fonts/amiko/amiko-v5-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/assets/fonts/amiko/amiko-v5-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('/assets/fonts/amiko/amiko-v5-latin-700.woff') format('woff'), /* Modern Browsers */
       url('/assets/fonts/amiko/amiko-v5-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/assets/fonts/amiko/amiko-v5-latin-700.svg#Amiko') format('svg'); /* Legacy iOS */
}

/* Helper */
body, h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
    font-family: 'Amiko', Arial, sans-serif;
}
.h2, h2{
    font-size: 1.8rem;
    color: #3c9bae;
}
.h3, h3{
    font-size: 1.4rem;
    color: #3c9bae;
}
body{
    background: #fefefe;
    color: #646363;
}
.grid-container{
    max-width: 87.5rem;
}
#frame{
    border: solid 5px #fbbb2d;
}
/* Header */
.ybar{ 
    background: #fbbb2d;
    color: #fff;
}
.ybar a{
    color: #fff;
} 
.ybarcontent{
    text-align: right;
}
/* Banner */
.banner{
    background: url('/assets/img/layout/banner_team.jpg');
    background-repeat: no-repeat;
    /*background-attachment: fixed;*/
    background-position: center top;
    height: 873px;
    margin-top: -8rem;
}
.headinformationen p{
    color: #fff;
}
.headinformationen h1, .headinformationen h2{
    text-align: center;
    color: #f9b438;
}
.headinformationen h1{
    text-transform: uppercase;
    font-size: 5.5rem;
    font-weight: bold;
    letter-spacing: 10px;
    padding-top: 3rem;
}
.headinformationen h2{
    
}
.headinformationen .buttonOuter{
    text-align: center;
}
.headinformationen .buttonOuter .button.hollow{
    color: #fff;
    border: 2px solid #fff;
    text-transform: uppercase;
    font-size: 1.5rem;
}
.headinformationen .buttonOuter .button.hollow:hover, .headinformationen .buttonOuter .button.hollow:focus, .trenner .button.hollow:hover, .trenner .button.hollow:focus{
    color: #f9b438;
    border-color: #f9b438;
}
.subbanner{
    text-align: center;
    border-top: 10px solid #2092a7;
    border-bottom: 15px solid #2092a7;
    margin-bottom: 1.5rem;
}

/** Form Anfang **/
/* Form */
.button{
    background-color: #fbbb2c;
}
.form{
    background: #dfe7eb;
    margin-left: 3.1rem;
    margin-right: 3.1rem;
    padding-left: 10vw;
    padding-right: 10vw;
}
.formsub{
    margin-left: 3.1rem;
    margin-right: 3.1rem;
    
}
.formsubmit{
    text-align: center;
}
input.button{
    background: #fbbb2c;
    color: #fff;
    border-radius: 10px;
    padding: 1.0rem 1.6rem;
}
label > span{
    background: #435f6f;
    color: #fff;
    border: solid 1px #353535;
    border-radius: 15px;
    padding-left: 0.25rem;
    padding-right: 0.25rem;
}
/* Formstyle */
form .box {
  position: relative;
  overflow: hidden;
}
form input[type="text"],
form input[type="time"],
form input[type="password"],
form textarea, 
form input[type="number"] {
  width: 100%;
  height: 40px;
  padding: 10px 10px 10px 90px;
  box-sizing: border-box;
  border: 1px solid #ccc;
  color: #333;
  border-radius: 3px;
  -webkit-transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
  transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
}
form textarea {
  height: auto;
  min-height: 200px;
  padding: 50px 10px 10px 10px;
}
form input[type="text"] + label,
form input[type="time"] + label,
form input[type="password"] + label,
form textarea + label, 
form input[type="number"] + label {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  height: 40px;
  line-height: 40px;
  font-size: 12px;
  font-weight: bold;
  width: 80px;
  text-shadow: 0 0 2px rgba(0, 0, 0, 0.1);
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: white;
  background: #fbbb2c;
  border-radius: 3px 0 0 3px;
  -webkit-transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
  transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
  -webkit-transform: translateZ(0) translateX(0);
          transform: translateZ(0) translateX(0);
}
form textarea + label {
  width: 100%;
  border-radius: 3px 3px 0 0;
}
form input[type="text"]:focus,
form input[type="time"]:focus,
form input[type="password"]:focus,
form input[type="number"]:focus{
  padding-left: 10px;
}
form textarea:focus {
  padding-top: 10px;
}
form input[type="text"]:focus + label,
form input[type="time"]:focus + label,
form input[type="password"]:focus + label,
form input[type="number"]:focus + label{
  -webkit-transform: translateZ(0) translateX(-100%);
          transform: translateZ(0) translateX(-100%);
}
form textarea:focus + label {
  -webkit-transform: translateZ(0) translateY(-100%);
          transform: translateZ(0) translateY(-100%);
}
form input[type="checkbox"],
form input[type="radio"] {
  position: absolute;
  overflow: hidden;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
}
form input[type="radio"] + label {
  position: relative;
  display: inline-block;
  overflow: hidden;
  text-indent: -9999px;
  background: #ccc;
  width: 30px;
  height: 30px;
  border-radius: 100%;
  cursor: pointer;
  -webkit-transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
  transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
}
form input[type="radio"] + label:before {
  content: "";
  position: absolute;
  display: block;
      height: 22px;
    width: 22px;
    top: 50%;
    left: 50%;
    background: #fbbb2c;
    border: solid #fff 4px;
  border-radius: 100%;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.1);
  -webkit-transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9) 0.1s;
  transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9) 0.1s;
  -webkit-transform: translateZ(0) translate(-50%, -50%) scale(0);
          transform: translateZ(0) translate(-50%, -50%) scale(0);
}
form input[type="radio"]:checked + label {
    background: #3c3c3b;
}
form input[type="radio"]:checked + label:before {
  -webkit-transform: translateZ(0) translate(-50%, -50%) scale(1);
          transform: translateZ(0) translate(-50%, -50%) scale(1);
}
form input[type="checkbox"] + label {
  position: relative;
  display: inline-block;
  overflow: hidden;
  text-indent: -9999px;
  background: #ccc;
  width: 60px;
  height: 30px;
  border-radius: 100px;
  cursor: pointer;
  -webkit-transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
  transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
}
form input[type="checkbox"] + label:before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #0288d1;
  border-radius: 100px;
  -webkit-transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9) 0.1s;
  transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9) 0.1s;
  -webkit-transform: translateZ(0) scale(0);
          transform: translateZ(0) scale(0);
}
form input[type="checkbox"] + label:after {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  display: block;
  height: 26px;
  width: 26px;
  background: white;
  border-radius: 100%;
  box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.2);
  -webkit-transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
  transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
  -webkit-transform: translateZ(0) translateX(0);
          transform: translateZ(0) translateX(0);
}
form input[type="checkbox"]:checked + label {
  background: #fbbb2c;
}
form input[type="checkbox"]:checked + label:after {
  left: calc(100% - 28px);
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
}
form button {
  position: relative;
  overflow: hidden;
  height: 40px;
  line-height: 40px;
  padding: 0 20px;
  font-size: 12px;
  font-weight: bold;
  text-shadow: 0 0 2px rgba(0, 0, 0, 0.1);
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: white;
  border: none;
  background: #0288d1;
  border-radius: 3px;
  -webkit-transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
  transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
  -webkit-transform: translateZ(0) translateX(0);
          transform: translateZ(0) translateX(0);
  z-index: 2;
}
form button:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background: #3c3c3b;
  height: 100%;
  width: 100%;
  border-radius: 3px;
  -webkit-transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
  transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
  -webkit-transform: translateZ(0) scale(0);
          transform: translateZ(0) scale(0);
  z-index: -1;
}
form button:hover:before, form button:focus:before {
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
  transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
}
form span{
    position: relative;
    margin-right: 75px;
}
form span > span{
    position: absolute;
    min-width: max-content;
}
.custom-select-wrapper {
    position: relative;
    display: inline-block;
    user-select: none;
    width: 100%;    
}
  .custom-select-wrapper select {
    display: none;
  }
  .custom-select {
    position: relative;
    display: inline-block;
    border: none !important;  
    width: 100%;
  }
    .custom-select-trigger {
        position: relative;
        display: block;
        width: auto;
        padding: 0 84px 0 22px;
        font-size: 1rem;
        font-weight: 300;
        color: #fff;
        line-height: 40px;
        background: #fbbb2c;
        border-radius: 4px;
        cursor: pointer;
        margin-right: 0;    
    }
    .custom-select-trigger:after {
        position: absolute;
        display: block;
        content: '';
        width: 10px; height: 10px;
        top: 50%; right: 25px;
        margin-top: -3px;
        border-bottom: 1px solid #fff;
        border-right: 1px solid #fff;
        transform: rotate(45deg) translateY(-50%);
        transition: all .4s ease-in-out;
        transform-origin: 50% 0;
    }
    .custom-select.opened .custom-select-trigger:after {
        margin-top: 3px;
        transform: rotate(-135deg) translateY(-50%);
    }
    .custom-options {
        position: absolute;
        display: block;
        top: 100%; left: 0; right: 0;   
        min-width: 100%;
        margin: 15px 0;
        border: 1px solid #b5b5b5;
        border-radius: 4px;
        box-sizing: border-box;
        box-shadow: 0 2px 1px rgba(0,0,0,.07);
        background: #fff;
        transition: all .4s ease-in-out;

        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transform: translateY(-15px);   
    }
    .custom-select.opened .custom-options {
        opacity: 1;
        visibility: visible;
        pointer-events: all;
        transform: translateY(0);
        z-index: 999;  
    }
    .custom-options:before {
        position: absolute;
        display: block;
        content: '';
        bottom: 100%; right: 25px;
        width: 7px; height: 7px;
        margin-bottom: -4px;
        border-top: 1px solid #b5b5b5;
        border-left: 1px solid #b5b5b5;
        background: #fff;
        transform: rotate(45deg);
        transition: all .4s ease-in-out;
    }
    .option-hover:before {
      background: #f9f9f9;
    }
    .custom-option {
      position: relative;
      display: block;
      padding: 0 22px;
      border-bottom: 1px solid #b5b5b5;
      font-size: 18px;
      font-weight: 600;
      color: #b5b5b5;
      line-height: 47px;
      cursor: pointer;
      transition: all .4s ease-in-out;
        margin-right: 0;
    }
    .custom-option:first-of-type {
      border-radius: 4px 4px 0 0;
    }
    .custom-option:last-of-type {
      border-bottom: 0;
      border-radius: 0 0 4px 4px;
    }
    .custom-option:hover,
    .custom-option.selection {
      background: #f9f9f9;
    }
    .has-tip {
        position: relative;
        display: inline-block;
        border: none;
        font-weight: normal;
        cursor: help;
    }
[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'], textarea{
    border-radius: 4px 4px 4px 4px;
}
.disabled{
    color: lightgray;
}
input[type="radio"] {
    
}
#wohnort, #wohnort2{
    pointer-events: none;
}
.lastStep{
    text-align: center;
}
.lastStep img{
    padding-top: 1.2rem;
    padding-bottom: 1.2rem;
}
.lastStep h1{
    color: #fbbb2c;
    padding-top: 1rem;
    padding-bottom: 1rem;
}
.lastStep h2{
    font-size: 2rem;
    padding-bottom: 1.5rem;
}
/* umzugsrechner */
.formfildsave{
    display: none;
}
.gqbm .list{
    display: none;
} 
.none .list, .none .qbm{
    display: none;
} 
.liste .qbm{
    display: none;
} 
.gqbm .qbm{
    display: block;
} 
.liste .list{
    display: block;
}
.sumBox{
    border: solid 1px;
    background: #fff;
    z-index: 9;
}
/** Form ENDE **/
/* Footer */
.footer{
    background: #fbbb2d;
    color: #646363;
    padding: 1.5rem 0;
}
.footer h2{
    font-size: 1.8rem;
    padding: 0 1.5rem;
    color: #646363;
}
.footer a{
    color: #646363;
}
.footer a:hover, .footer a:focus, .footerSub a:hover, .footerSub a:focus{
    text-decoration: underline;
}
.footerSub ul{
    list-style: none;
    text-align: center;
    padding-top: 1rem;
}
.footerSub ul li{
    display: inline-block;
    padding-left: 0.5rem;
}
.footerSub ul li::before{
    color: #1251a0;
    content: "|";
    padding-right: 0.5rem;
}
.footerSub ul li:first-child::before{
    content: "";
}
.footerSub a{
    color: #1251a0;
}

/* Startseite */
#animationLi{
    visibility: hidden;
}
.animationLi{
    display: block !important;
    visibility: visible !important;
}
.animationLi li{
    display: block;
    animation-name: animateIn;
    animation-duration: 350ms;
    animation-delay: calc(var(--animation-order) * 100ms);
    animation-fill-mode: both;
    animation-timing-function: ease-in-out;
}
.animationLi li a{
    color: #646363;
}
.animationLi li a:hover, .animationLi li a:focus{
    text-decoration: underline;
}
.migxcontent ul{
    list-style: none;
}
.migxcontent li, .animationLi li{
    padding-left: 2.5rem;
}
.animationLi li::before, .migxcontent li::before{
    font-family: "Font Awesome 5 Free"; 
    font-weight: 900; 
    content: "\f0a9";
    padding-right: 1rem;
    /*padding-left: 1rem;*/
    color: #fbbb2d;
    margin-left: -2rem;
}

.startseitePOI{
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
}
.startseitePOI p, .startseitePOI h2{
    text-align: center;
    color: #646363;
}
.startseitePOI-item a{
    color: #646363;
}
.startseitePOI-item a h2{
    color: #3c9bae;
}
.startseitePOI p{
    margin-left: 10%;
    margin-right: 10%;
}
.startseitePOI h2{
    font-size: 1.5rem;
    text-transform: uppercase;
}
.startseitePOI-item{
    margin-bottom: 3.25rem;
}
.trenner{
    /*background:url("/assets/img/layout/Trenner_big.jpg") no-repeat fixed center top;*/
    
    background-image: url("/assets/img/layout/Trenner_big.jpg");
    background-repeat: no-repeat;
    background-position: center top;
    /*
    background-attachment: fixed;
    */
    /*height: 550px;*/
    padding: 5vw 0;
}
.trenner h2{
    color: #fff;
    font-weight: bold;
    text-align: center;
}
.trenner .button.hollow {
    color: #fff;
    border: 2px solid #fff;
    font-size: 1.5rem;
    line-height: 2rem;
    background: rgb(62 104 96 / 50%);
    width: 100%
}
.trenner .callme{
    margin-right: -7rem;
}
.trenner a.button.hollow.twoline {
    padding: 1.35em 1em;
}
.trenner p{
    text-align: center;
}
.addinfo{
    padding-top: 2.5rem;
}
.addinfo .bildaddinfo p{
    text-align: center;
}
.addinfo .content p{
    font-size: 1.3rem;
    padding-top: 1rem;
}
.bildaddinfoitem{
    border: solid 3px #646363;
    width: 204px;
    height: 204px;
    border-radius: 102px;
    font-size: 7rem;
    color: #fbbb2d;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    padding-top: 1.5rem;
}
/* Service */
.serviceItem{
    font-size: 1.5rem;
    padding-bottom: 1rem;
    display: flex;
	align-items: center;
}
.serviceItem a{
    color: #646363;
}
/* Content */
.content h1{
    color: #3c9bae;
}
/*
.content h1::before{
    content: url('/assets/img/layout/h1.png');
    position: relative;
    top: 1rem;
}
*/
.content .h1pic{
    margin-top: -0.75rem;
}
.subH1{
    /*padding-left: 94px;*/
    width: 70%;
    font-weight: 600;
    padding-bottom: 1.5rem;
}
.pageIcon{
    text-align: center;
}
/* Navigation */
.preheader{
    position: relative;
    z-index: 9;
    margin-top: 20px;
    margin-bottom: 20px;
}
.off-canvas-wrapper{
    z-index: 99;
}
.preheader>div{
    border-radius: 0 0 10px 10px;
}
.main-nav .level1{
    position: relative;
    padding-right: 15px;
    padding-left: 15px;
}
.main-nav .level1.has-submenu > ul{
    left: 0px;
}
.main-nav .level1.last.has-submenu > ul{
    right: 0px;
    left: auto;
}
.main-nav .level1.has-submenu > ul{
    display: none;
    position: absolute;
    width: 275px;
    background: #eeeeee;
    border-top: 5px solid #f9b233;
    margin-left: 0;
    padding-right: 0;
}
.main-nav .level1.has-submenu .level2{
    width: 100%;
    padding-top: 0.25rem;
}
.main-nav .level1.has-submenu .level2 a{
    font-size: 1rem;
    padding-left: 0.75rem;
}
.main-nav .level1.has-submenu .level2:hover, .main-nav .level1.has-submenu .level2:focus{
    background: #2092a7;
}
.main-nav .level1.has-submenu .level2:hover a, .main-nav .level1.has-submenu .level2:focus a{
    color: #fff;
}
.main-nav .level1.has-submenu .level2:first-child {
    padding-top: 0.5rem;
}
.main-nav .level1.has-submenu .level2:last-child {
    padding-bottom: 0.5rem;
}
.main-nav .level1.has-submenu:hover > ul, .main-nav .level1.has-submenu:focus > ul{
    display: block;
}

.main-nav{
    padding-top: 2rem;
}
.main-nav ul {
    width: 100%;
    padding-right: 25px;
}
.main-nav li {
	float: left;
	list-style: none;
    
}
.main-nav .level1.active{
    border-bottom: solid 5px #fbbb2d;
}
.main-nav li a{
	font-size: 1.0vw;
	color: #646363;
}
.is-stuck{
    background: rgba(255, 255, 255, 0.85);
}
/* Mobilnav */
.mobil-nav-button-outer{
    text-align: right;
}
.mobil-nav{
    width: 100%;
    background: gray;
}
.navigation{
    
}
.mobil-nav .top-bar-menu{
    color: #FFFFFF;
}
.mobil-nav .menu-icon.dark::after{
    background: #FFFFFF;
    box-shadow: 0 7px 0 #FFFFFF, 0 14px 0 #FFFFFF;
}
.mobil-nav a{
    color: #ffffff;
}
.menu li{
    width: 100%;
}
.mobil-nav li:hover a{
    font-weight: bold;
}
.mobil-nav li li a, .mobil-nav li:hover li a{
    font-weight: normal;
}
.mobil-nav li li:hover a{
    font-weight: bold;
}
.mobil-nav .menu .active > a{
    background: none;
    text-decoration: underline;
}
.menu .active > a {
    background: #2092a7;
    color: #fbbb2d;
    font-weight: bold;
}
.off-canvas-wrapper a{
    color: #2092a7;
}
.off-canvas{
    background: #fff;
}
.clickicon{
    font-size: 2rem;
}
/* Sidenavigation */
.sidenav ul{
    list-style: none;
}
.sidenav a{
    color: #3c9bae;
}
.sidenav .level1{
    font-size: 1.1rem;
}
.sidenav .level2 {
    font-size: 1.0rem;
}
.sidenav .level1::before {
    font-family: "Font Awesome 5 Free"; 
    font-weight: 900; 
    content: "\f0da";
    padding-right: 1rem;
    padding-left: 1rem;
    color: #fbbb2d;
}
.sidenav li:hover a, .sidenav li.level1:hover::before , .sidenav li.active a, .sidenav li.active.level1::before {
    color: #fff;
}
.sidenav li:hover, .sidenav li.active{ 
    background: #fbbb2d;
}
.sidenav .level2::before {
    padding-right: 10px;
    content: url(/assets/img/layout/navicons_level2.png);
}
.sidenav li.active .level2 {
    display: block;
}
/* Button */
.button-ci1,.button-ci2{
    border-radius: 0.25rem;
}
.button-ci1{
    background-color: #fbbb2c;
}
.button-ci2{
    background-color: #3c9bae;
}
.button-ci1:hover,.button-ci1:focus{
    background-color: #3c9bae;
}
.button-ci2:hover,.button-ci2:focus{
    background-color: #fbbb2c;
}
/* Termine */
.terminlist{
    padding-bottom: 25px;
}
.day, .month, .year{
	text-align: center;
	color: #ffffff;
	margin-bottom: -5px;
	background: #0f5075;
}
.day{
	font-size: 2rem;
	font-weight: bold;
	position: relative;
}
.day::after{
	display: block;
    border: inset 6px;
    content: '';
    border-left-style: solid;
    border-color: transparent transparent transparent #efeac7;
    position: absolute;
    top: 50%;
    margin-top: -6px;
}
.month, .year{
	font-size: 1.2rem;
}
/* Blog */
.posts{
    padding-top: 25px;
}
.post_date{
    padding-right: 5px;
}
.post_text{
    padding-left: 15px;
}
.post{
	padding-bottom: 25px;
}
.post h2{
		font-size: 1.5rem;
		line-height: 1.1;
}
.post h2 a{
	color: #e30613;
	font-size: 1.5rem;
}
.vorschau{
	border: solid 5px #5a5a5a;
}
.day{
	font-size: 2rem;
	font-weight: bold;
	background: #e30613;
}
.month, .year{
	font-size: 1.2rem;
	background: #9d9c98;
}
.readmore{
	background-color: transparent;
	border: 1px solid #5a5a5a;
    border-radius: 5px;
    color: #5a5a5a;
    padding-left: 35px;
    padding-right: 35px;
    float: right;
}
.readmore:hover, .readmore:focus {
    background-color: #ebebeb;
    color: #5a5a5a;
}
.aktuelles a.readmore{
    position: absolute;
    bottom: 0;
}
.paging{
	padding-bottom: 25px;
}
.paging li:before{
	content: none !important;
}
.paging li{
	float:left;
	list-style: none;
	padding-right: 15px;
}
.blogTags h3, .blogArchiv h3{
    color: #0f5075;
    font-size: 1.5rem;
}
.blogTags a, .blogArchiv a{
	color: #5a5a5a;
}
.blogTags ul, .blogArchiv ul{
    list-style: none;
}
/* Kontakt */
.faerstaeggt {
    display: none;
}
input.error, textarea.error {
    border-color: #ff0000 !important;
}
.alert .alert-error{
    color: #ff0000;
}
.kontaktForm tbody tr:nth-child(even), .kontaktForm tr{
    background: none;
}
.kontaktForm tbody{
    border: none;
}
/* Kontakt Icons */
.kontaktItemH2{
    padding-top: 1rem;
    padding-bottom: 1.5rem;
}
.kontaktItem{
    width: 80%;
    text-align: center;
}
.kontaktItem a{
    color: #646363;
}
.kontaktItem a h3{
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    color: #3c9bae;
}
/* call us */
.callus{
    border: solid 2px #646363 !important;
    font-size: 1.75rem;
    color: #fbbb2d !important;
}
.callus:hover,  .callus:focus{
    background: #fbbb2d !important;
    border: solid 2px #646363 !important;
    color: #646363 !important;
}
/* Fresco */
.thumbnail{
    border: 0;
    box-shadow: none;
}
a.thumbnail:hover, a.thumbnail:focus{
    box-shadow: none;
}
/* Cookietool */
#uc-privacy-button.layout-1{
    visibility: hidden;
}
/* Scrollhelper */
.scrollrad {
	position: fixed;
	bottom: 190px;
	left: 50%;
	margin-left: -25px;
	/*opacity: 0;
	visibility: hidden;*/
	width: 50px;
	height: 50px;
	z-index: 999;
	transition: all 300ms linear;
    cursor: pointer;
}

.scrollrad  .mouse {
	  position: absolute;
	  width: 23px;
	  height: 39px;
	  bottom: 40px;
	  left: 50%;
	  top: 0;
	  margin-left: -12px;
	  border-radius: 15px;
	  border: 2px solid;
      border-color: #fff;
      overflow: hidden;
	}
.scrollrad .mouse.cd-fade-out{
    display: none;
}
.scrollrad .scroll {
      position: absolute;
      right: 5px;
	  display: block;
    
      width: 0; 
      height: 0;
      border-top: 5px solid #fff; 
      border-left: 4px solid transparent; 
      border-right: 4px solid transparent;    
    
	/*  width: 3px;
	  height: 3px;
	  margin: 6px auto;
	  border-radius: 4px;
      -webkit-transform: translateY(5px);
      transform: translateY(5px);*/
      
      
	}
/* Back to Top */
	.cd-top {
		z-index:500;
		display: inline-block;
	  	height: 40px;
	  	width: 40px;
	  	position: fixed;
	  	bottom: 53px;
	  	right: 10px;
	  	box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
	  /* image replacement properties */
	  	overflow: hidden;
	  	text-indent: 100%;
	  	white-space: nowrap;
	  	background: rgba(120, 138, 146, 0.8) url(/assets/img/layout/cd-top-arrow.svg) no-repeat center 50%;
	  	/*visibility: hidden;*/
	  	opacity: 0;
	  	-webkit-transition: opacity .3s 0s, visibility 0s .3s;
	  	-moz-transition: opacity .3s 0s, visibility 0s .3s;
	  	transition: opacity .3s 0s, visibility 0s .3s;
	}
	.cd-top.cd-is-visible, .cd-top.cd-fade-out, .no-touch .cd-top:hover {
	  	-webkit-transition: opacity .3s 0s, visibility 0s 0s;
	  	-moz-transition: opacity .3s 0s, visibility 0s 0s;
	  	transition: opacity .3s 0s, visibility 0s 0s;
	}
	.cd-top.cd-is-visible {
	  /* the button becomes visible */
	  visibility: visible;
	  opacity: 1;
	}
	.cd-top.cd-fade-out {
	  /* if the user keeps scrolling down, the button is out of focus and becomes less visible */
	  	opacity: .5;
	}
	.no-touch .cd-top:hover {
	  	background-color: #788a92;
	  	opacity: 1;
	}
/* Mobilanpassungen */
/* individual */
@media screen and (max-width: 1750px){
    .main-nav li a{
       font-size: 1.3vw;
    }
}
@media screen and (max-width: 1450px){
    .main-nav li a{
       font-size: 1.4vw;
    }
}
@media screen and (min-width: 40em) and (max-width: 1380px) {
    .trenner .button.hollow{
        font-size: 1.8vw;
    }
}

@media screen and (max-width: 1200px) {
    .banner{
        margin-top: 0rem;
    }
    .headinformationen h1 {
        padding-top: 0rem;
    }
}
@media screen and (max-width: 1040px) {
    .serviceItem {
        font-size: 1.25rem;
    }
    .serviceItem a{
        padding-left: 1rem;
    }
}
@media screen and (max-width: 760px) {
    .serviceItem {
        font-size: 1.0rem;
    }
}
/* Medium */
@media screen and (min-width: 40em) and (max-width: 63.9375em){
    .footerItem{
        padding: 0 1.5rem;
    }
    .banner{
        background-image: url('/assets/img/layout/banner_team-mobil.jpg');
    }
    .citypage h1{
        line-height: 1;
    }
    .citypage h1 span{
        font-size: 3rem;
        letter-spacing: 0px;
    }
}
/* Small */
@media screen and (max-width: 39.9375em) {
    /* überschrift */
    .content h1::before{
        content: none;
    }
    h1, .h1{
        font-size: 2rem;
    }
    .subH1{
        padding-left: 0px;
        width: 100%
    }
    .trenner .callme {
        margin-right: 0rem;
    }
    .trenner a.button.hollow{
        padding: 1.35em 1em;
    }
    .serviceItem {
        font-size: 1.5rem;
    }
    .headinformationen h1 {
        font-size: 4.25rem;
    }
    .banner{
        background-image: url('/assets/img/layout/banner_team-mobil.jpg');
        /*
        background-position: center -240px;
        height: 630px;
        */
        background-position: center -320px;
        height: 550px;
    }
    .scrollrad {
        bottom: 85px;
    }
    .kontaktItem{
        width: 100%;
    }
    .headinformationen h1 {
        padding-top: 3rem;
    }
    .headinformationen hr{
        display: none;
    }
    .citypage h1{
        line-height: 1;
    }
    .citypage h1 span{
        font-size: 2rem;
        letter-spacing: 0px;
    }
}
/* 4K-Anpassungen  */
@media screen and (min-width: 2150px){
    .main-nav li a {
        font-size: 1.4rem;
    }
}
/* Animation */
@keyframes animateIn {
  0% {
    opacity: 0;
    transform: scale(0.6) translateY(-8px);
  }
  
  100% {
    opacity: 1;
  }
}
/* ==================================================
   Unser Ablauf
   ================================================== */

.process-section {
    --process-blue: #3c9bae;
    --process-blue-dark: #063777;
    --process-green: #fbbb2d;
    --process-text: #171b22;
    --process-muted: #596270;
    --process-border: #d8dee7;
    --process-background: #f7f9fc;

    padding: 70px 0;
    overflow: hidden;
    background:
        linear-gradient(
            90deg,
            #ffffff 0%,
            var(--process-background) 50%,
            #ffffff 100%
        );
}

.process-header {
    margin-bottom: 45px;
}

.process-kicker {
    display: block;
    margin-bottom: 8px;
    color: var(--process-green);
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.process-heading {
    position: relative;
    margin: 0;
    padding-bottom: 18px;
    color: var(--process-text);
    font-size: clamp(1.75rem, 4vw, 2.5rem);
    font-weight: 700;
    line-height: 1.2;
}

.process-heading span {
    color: var(--process-blue);
}

.process-heading::after {
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 42px;
    height: 3px;
    background: var(--process-green);
    content: "";
    transform: translateX(-50%);
}

/* Grid */

.process-grid {
    position: relative;
}

.process-grid > .cell {
    display: flex;
}

.process-step {
    position: relative;
    z-index: 2;
    width: 100%;
    padding: 15px 12px;
    text-align: center;
}

.process-icon-wrapper {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 24px;
}

.process-icon {
    position: relative;
    z-index: 2;
    display: flex;
    width: 84px;
    height: 84px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--process-border);
    border-radius: 50%;
    background: #ffffff;
    box-shadow: 0 5px 18px rgba(7, 69, 155, 0.08);
    color: var(--process-blue);
    font-size: 1.75rem;
    transition:
        color 0.25s ease,
        border-color 0.25s ease,
        box-shadow 0.25s ease,
        transform 0.25s ease;
}

.process-number {
    position: absolute;
    z-index: 3;
    right: -2px;
    bottom: -10px;
    display: flex;
    width: 30px;
    height: 30px;
    align-items: center;
    justify-content: center;
    border: 3px solid var(--process-background);
    border-radius: 50%;
    background: var(--process-blue);
    color: #ffffff;
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1;
}

.process-content h3 {
    min-height: 52px;
    margin: 0 0 10px;
    color: var(--process-text);
    font-size: 1.05rem;
    font-weight: 700;
    line-height: 1.4;
}

.process-content p {
    max-width: 240px;
    margin: 0 auto;
    color: var(--process-muted);
    font-size: 0.9375rem;
    line-height: 1.65;
}

.process-step:hover .process-icon {
    border-color: var(--process-blue);
    box-shadow: 0 8px 24px rgba(7, 69, 155, 0.16);
    color: var(--process-green);
    transform: translateY(-4px);
}

/* ==================================================
   Smartphones
   ================================================== */

@media screen and (max-width: 39.99875em) {
    .process-section {
        padding: 50px 0;
    }

    .process-header {
        margin-bottom: 25px;
    }

    .process-grid {
        max-width: 420px;
        margin-right: auto;
        margin-left: auto;
    }

    .process-grid > .cell:not(:last-child) .process-step::after {
        position: absolute;
        bottom: -14px;
        left: 50%;
        width: 1px;
        height: 30px;
        background: var(--process-border);
        content: "";
        transform: translateX(-50%);
    }

    .process-step {
        margin-bottom: 18px;
        padding: 18px 10px 26px;
    }

    .process-icon {
        width: 76px;
        height: 76px;
        font-size: 1.55rem;
    }

    .process-content h3 {
        min-height: 0;
    }
}

/* ==================================================
   Tablet
   ================================================== */

@media screen and (min-width: 40em) and (max-width: 63.99875em) {
    .process-grid {
        justify-content: center;
    }

    .process-step {
        margin-bottom: 30px;
        padding-right: 25px;
        padding-left: 25px;
    }

    .process-content h3 {
        min-height: 0;
    }
}

/* ==================================================
   Desktop
   ================================================== */

@media screen and (min-width: 64em) {
    /*
     * Verbindungslinie zwischen den fünf Schritten.
     * Sie liegt hinter den Icon-Kreisen.
     */
    .process-grid::before {
        position: absolute;
        z-index: 1;
        top: 57px;
        right: 10%;
        left: 10%;
        height: 1px;
        border-top: 1px dashed #aeb8c7;
        content: "";
    }

    .process-grid > .cell {
        flex: 1 1 16%;
        max-width: 16%;
    }
}

/* ==================================================
   Barrierefreiheit: reduzierte Animationen
   ================================================== */

@media (prefers-reduced-motion: reduce) {
    .process-icon {
        transition: none;
    }

    .process-step:hover .process-icon {
        transform: none;
    }
}