.office-address{
    text-align: center;
}

#content {
    padding-top: 208px; 
    overflow: hidden;
}

h1{
    margin-bottom: 14px;
}

.sub-text{
    font-size:2.5em; display: block;
}

.office-details {
    margin-top: 23px;
}
.left {
    float: left;
    padding-top: 18px;
    text-align: right;
    width: 50%;
    padding-right: 26px;
}
.right {
    float: left;
    text-align: left;
    width: 50%;
    padding-left: 23px;
}
h2 {
    font-size: 2.2em;
    color: #dfc08d;
    margin-bottom: 19px;
    font-weight: 700;
    padding-left: 49px; position: relative;
}
address a {
    font-size: 1.7em;
    color: #554b4f;
    margin-bottom: 0px;
    display: block; position: relative;
    padding-left: 22px;
}
address{text-align: left;}
.col {
    padding: 0 69px;
    width: 50%;
    float: left;
}
.contact {
    padding-left: 52px;
}
.col-cover {
    margin-top: 29px;
}
address a i.icon {
      width: 14px;
    height: 19px;
    display: block;
    position: absolute;
        top: 2px;
    left: 0;
    background-position: -12px -400px;
}
address a.mail i.icon {
    background-position: -30px -400px;
    width: 16px;
    top: 5px;
}

address a.call i.icon {
    background-position: -48px -400px;
    width: 11px;
    top: 2px;
}
.col.add-office {
    padding-left: 96px;
}
.col.add-office h2{color: #554b4f;}

h3 {
    font-size: 3.5em;
    font-weight: 400;     padding-left: 26px;
    margin-bottom: 34px;
}
.column-cover {
    margin: 0 -26px;
}
.column{width: 50%; float: left; padding: 0 26px;}

.bubble {
    width: 120px;
    height: 128px;
    background: url(../images/bubble1.png);
    display: block;
    position: absolute;
    margin-bottom: 50px;
    top: 69px;
       left: 0;
    right: 0;
    margin: 0 auto;
}
.process-flow li span {
    font-size: 1.6em;
    line-height: 1.35;
    /* padding-left: 1px; */
    text-align: center;
    display: inline-block;
}
.process-flow li {
    float: none;
    position: relative;
    /* width: 21.6%; */
    padding-top: 217px;
    display: inline-block;
    margin: 0 48px;
}
.process-flow li:nth-child(1) {
    margin-left: 0;
}
.process-flow li:nth-child(5) {
    /* width: 13%; */
    margin-right: 0;
}
.process-flow{margin: 0 -17px;}
.bubble i {
    width: 44px;
    height: 43px;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    background-position: -65px -400px;
    transform: translate(-50% ,-50%);
}
.process_two .bubble i {
    background-position: -115px -400px;
    width: 50px;
    height: 42px;
    top: 46%;
    left: 54%;
}
.process_three .bubble i {
    background-position: -171px -400px;
    width: 45px;
    height: 31px;
}
.process_four .bubble i {
    background-position: -219px -400px;
    width: 32px;
    height: 46px;
}
.bubble:after,.process_one .bubble:before,.process_five .bubble:before {
    content: '';
    position: absolute;
    top: 61px;
   left: 116.5px;
    width: 161px;
    height: 5px;
    background: #e9d3af;
}

.process_one .bubble:after{
   background: #fcf9f3; 
}
.process_two .bubble:after{
   background: #f5ecdd; 
}
.process_three .bubble:after{
    background: #efdfc6;
}

.process_one .bubble:before, .process_five .bubble:before {
    right: 116px;
    width: 1500px;
    left: auto;
    background: #fcf9f3;
}
.process_five .bubble:before {
    left: 114px;
    width: 1500px;
    background: #e9d3af;
   
}
.process_five .bubble i {
    background-position: -219px -400px;
    width: 32px;
    height: 46px;
}
.process_five .bubble i {
    background-position: -254px -400px;
    width: 45px;
    height: 43px;
}



.column p{text-align: justify;}

h3 small{
    font-weight: 700; display: block;
}
.step-process {
    margin-top: 156px;
    text-align: left;
}
.process_two .bubble {
   
    background: url(../images/bubble2.png);
}

.process_four .bubble {
   
    background: url(../images/bubble3.png);
}


.bubble em {
    font-size: 1.6em;
    color: #dfc08d;
    font-style: normal;
    position: absolute;
    left: 144px;
    top: 35px;
    display: block;
    white-space: nowrap;
}


.process_one .bubble em{
    left: 144px; color: rgba(223,192,141,0.45);
    
}

.process_two .bubble em{
    left: 134px; color: rgba(223,192,141,0.60);
    
}

.process_three .bubble em{
    left: 165px; color: rgba(223,192,141,0.80);
    
}

.process_four .bubble em{
   left: 165px; color: rgba(223,192,141,1);
    
}

.form-data {
    margin-top: 97px; position: relative;
}

.kontaktForm {
    width: 100%;
    position: absolute;
    bottom: 80px;
    left: 0;
}

/* ____________________ */


.button {
    font-size: 1em;
    padding: 10px;
    color: #fff;
    border: 2px solid #06D85F;
    border-radius: 20px/50px;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.3s ease-out;
  }

.hover_bkgr_fricc{
    background:rgba(0,0,0,.4);
    cursor:pointer;
    display:none;
    height:100%;
    position:fixed;
    text-align:center;
    top:0;
    width:100%;
    z-index:100;
}
.hover_bkgr_fricc .helper{
    display:inline-block;
    height:100%;
    vertical-align:middle;
}
.hover_bkgr_fricc > div {
    background-color: #fff;
    box-shadow: 10px 10px 60px #555;
    display: inline-block;
    height: auto;
    max-width: 551px;
    min-height: 100px;
    vertical-align: middle;
    width: 75%;
    position: relative;
    border-radius: 8px;
    padding:15px 5%;
}
.popupCloseButton {
    background-color: #fff;
    border: 3px solid #999;
    border-radius: 50px;
    cursor: pointer;
    font-weight: bold;
    position: absolute;
    top: -20px;
    right: -20px;
    font-size: 25px;
    line-height: 30px;
    width: 30px;
    height: 30px;
    text-align: center;
}

.popupCloseButton:hover {
    background-color: #ccc;
}
.trigger_popup_fricc {
    cursor: pointer;
    display: inline-block;
}



/* ___________________ */



form#enquiryForm {
	position:relative;
    max-width: 1283px;
    background: #fff;
    width: 100%;
    margin: 0 auto;
    padding: 36px 68px 32px;
}


.responder-text{
	position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    text-align: center;
    top: 50%;
    transform: translateY(-50%);
	display:none;
}
form#enquiryForm.respondershow h3{
	opacity:0;
	visibility:hidden;
}

form#enquiryForm.respondershow > .clearfix{
	opacity:0;
	visibility:hidden;
}
form#enquiryForm.respondershow .responder-text{
	display:block;
}
.check-responder{
	background: url(../images/check.png) center center no-repeat;
    width: 100px;
    height: 100px;
    background-size: 100% auto;
    display: block;
    margin: 0 auto 10px;
}
.responder-text p{
	font-size:2em;
}


.left-form-data {
    width: 59.4%;
    float: left;
}
.right-data {
    float: left;
    width: 40.6%;
    padding-left: 10px;
}

form#enquiryForm h3 small{display: inline-block; }
form#enquiryForm h3{text-align: left;     margin-bottom: 26px; padding: 0;}
.backTop {
    font-size: 1.715em;
    color: #554b4f;
    padding-left: 24px;
    position: relative;
    float: left;
}
#wrapper {
   
    position: relative;
}
.bottom-footer .container {
    max-width: 1137px;
    margin: 0 auto;
}
.bottom-footer {
    position: absolute;
    bottom: 34px;
    width: 100%;
    left: 0;
}
.impressum-link {
    position: static;
    

    float: right;
    font-size: 1.312em;
    margin-right: -10px;
    margin-top: 3px;
}

.datenschutz-link {
    position: static;
    

    float: right;
    font-size: 1.312em;
    margin-right: -10px;
    margin-top: 3px;
}

a.backTop i {
    width: 12px;
    height: 8px;
    display: block;
    background-position: 0px -438px;
    position: absolute;
    top: 8px;
    left: 0;
}

.process_five .bubble {cursor: default;}
.appointment-section {
    display: none;
}
#footer {
    padding: 78px 0;
    margin-top: -131px;
    padding-bottom: 0;
}
.impressum-cta {
    
    z-index: 1;
    position: relative;
}
.datenschutz-cta {
    
    z-index: 1;
    position: relative;
}

/*animation */

.animation {
    background: #dfc08d;
    border-radius: 100%;
    width: 22px;
    height: 22px;
    position: absolute;
    left:5px;
    top: 3px;
  

    animation: zoom 3s linear infinite;
    -webkit-animation: zoom 3s linear infinite;
    -moz-animation: zoom 3s linear infinite;
    transition: all .3s ease;
    -webkit-transition: all .3s ease;
}
.animation:before, .animation:after {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    content: "";
    border-radius: 50%;
}
.animation i.icon {
    width: 5px;
    height: 9px;
    background-position: 0px -400px;
    display: block;
    position: absolute;
    top: 6px;
    left: 2px;
    right: 0;
    margin: 0 auto;
}
.animation:before {
    box-shadow: 0 0 0px 0px rgba(255,255,255,.5);
    animation: zoom 3s linear 1.6s infinite;
    -webkit-box-shadow: 0 0 0px 0px rgba(255,255,255,.5);
    -webkit-animation: zoom 3s linear 1.6s infinite;
    -moz-box-shadow: 0 0 0px 0px rgba(255,255,255,.5);
    -moz-animation: zoom 3s linear 1.6s infinite;
}

.animation:after{
    box-shadow: 0 0 0px 0px rgba(255,255,255,.5);
    animation: zoom 3s linear .8s infinite;
    -webkit-box-shadow: 0 0 0px 0px rgba(255,255,255,.5);
    -moz-box-shadow: 0 0 0px 0px rgba(255,255,255,.5);
    -webkit-animation: zoom 3s linear .8s infinite;
    -moz-animation: zoom 3s linear .8s infinite;
}

@keyframes zoom {
    0% {
    box-shadow:  0 0 0px 0px rgba(223,192,141,.5);
    }
    25% {
    box-shadow: 0 0 0px 1px rgba(223,192,141,.5);
    }
    50% {
    box-shadow: 0 0 0px 6px rgba(223,192,141,.5);
    }
    75% {
    box-shadow: 0 0 0px 2px rgba(223,192,141,.5);
    }
    100% {
    box-shadow: 0 0 0px 1px rgba(223,192,141,.5);
    }
    
}

@-webkit-keyframes zoom {
    0% {
    -webkit-box-shadow:  0 0 0px 0px rgba(223,192,141,.5);
    }
    25% {
    -webkit-box-shadow: 0 0 0px 1px rgba(223,192,141,.5);
    }
    50% {
    -webkit-box-shadow: 0 0 0px 6px rgba(223,192,141,.5);
    }
    75% {
    -webkit-box-shadow: 0 0 0px 2px rgba(223,192,141,.5);
    }
    100% {
    -webkit-box-shadow: 0 0 0px 1px rgba(223,192,141,.5);
    }
    
}

.add-office .animation {
    background: rgb(85,75,79);
    -webkit-animation: zoom1 3s linear infinite;
    -moz-animation: zoom1 3s linear infinite;
    
}

.add-office .animation:before {
    box-shadow: 0 0 0px 0px rgba(85,75,79,.5);
    animation: zoom1 3s linear 1.6s infinite;
    -webkit-box-shadow: 0 0 0px 0px rgba(85,75,79,.5);
    -webkit-animation: zoom1 3s linear 1.6s infinite;
    -moz-box-shadow: 0 0 0px 0px rgba(85,75,79,.5);
    -moz-animation: zoom1 3s linear 1.6s infinite;
}

.add-office .animation:after{
    box-shadow: 0 0 0px 0px rgba(85,75,79,.5);
    animation: zoom1 3s linear .8s infinite;
    -webkit-box-shadow: 0 0 0px 0px rgba(85,75,79,.5);
    -moz-box-shadow: 0 0 0px 0px rgba(85,75,79,.5);
    -webkit-animation: zoom1 3s linear .8s infinite;
    -moz-animation: zoom1 3s linear .8s infinite;
}

@keyframes zoom1 {
    0% {
    box-shadow:  0 0 0px 0px rgba(85,75,79,.5);
    }
    25% {
    box-shadow: 0 0 0px 1px rgba(85,75,79,.5);
    }
    50% {
    box-shadow: 0 0 0px 6px rgba(85,75,79,.5);
    }
    75% {
    box-shadow: 0 0 0px 2px rgba(85,75,79,.5);
    }
    100% {
    box-shadow: 0 0 0px 1px rgba(85,75,79,.5);
    }
    
}

@-webkit-keyframes zoom1 {
    0% {
    -webkit-box-shadow:  0 0 0px 0px rgba(85,75,79,.5);
    }
    25% {
    -webkit-box-shadow: 0 0 0px 1px rgba(85,75,79,.5);
    }
    50% {
    -webkit-box-shadow: 0 0 0px 6px rgba(85,75,79,.5);
    }
    75% {
    -webkit-box-shadow: 0 0 0px 2px rgba(85,75,79,.5);
    }
    100% {
    -webkit-box-shadow: 0 0 0px 1px rgba(85,75,79,.5);
    }
    
}


/*calender css*/
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {
    border: 1px solid #dfc08d;
    background: #dfc08d !important;
    color: #fff !important; 
}
.ui-datepicker td span,
.ui-datepicker td a {
	
	    padding: 1em;
	
}
.ui-datepicker {
    width: 24em;
}
.ui-widget-header {
    border: 1px solid #dfc08d;
    background: #dfc08d;
    color: #fff;
    font-weight: bold;
}
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active {
    border: 1px solid #dfc08d;
    background: #fff;
    font-weight: normal;
    color: #454545;
}
.ui-widget.ui-widget-content {
    border: 1px solid #dfc08d;
}
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus,
.ui-button:hover,
.ui-button:focus {
	border: 1px solid #dfc08d;
	background: #dfc08d;
	font-weight: normal;
	color: #fff;
}

.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
	top: 2px;
}

.ui-datepicker .ui-datepicker-next-hover {
	right: 2px;
}

.ui-datepicker .ui-datepicker-prev-hover {
	right:auto; left: 2px;
}
.ui-datepicker th {
    padding: .9em .5em;
    text-align: center;
    font-weight: 600;
    border: 0;
    color: #dfc08d;
}

.captcha-group .form-group:first-child{
	max-width:300px;	
}
@media(max-width:1200px) {
    .col.add-office {
        padding-right: 10px;
    }
    
    .process-flow {
        margin: 0;
    }
    
    .process-flow li {
        transform: scale(0.8);
        margin: 0 22px;
    }
    
    .form-data {
        padding-bottom: 200px;
    }
    
    form#enquiryForm {
        max-width: 988px;
        padding-left: 20px;
        padding-right: 20px;
        bottom: 0;
    }
    
    #footer {
        padding-bottom: 55px;
        margin-top: 0;
    }
}

@media(max-width:950px) {
    .col {
        padding: 0;
    }
    
    .col.add-office {
        padding: 0 0 0 40px;
    }
    
    .bubble:after,
    .bubble:before,
    .bubble em{
        display: none;
    }
    
    .process-flow {
        text-align: center;
    }
    
    .left-form-data,
    .right-data{
        float: none;
        width: 100%;
        padding-left: 0;
    }
    
    .g-recaptcha-termin {
        transform: scale(1);
    }
}

@media(min-width:768px) and (max-width:950px) {
    .process-flow li {
        transform: scale(1);
        margin: 0 40px;
    }
    
    .process-flow li:nth-child(1) {
        margin-left: 40px;
    }
    
    .process-flow li:nth-child(4) {
        margin-left: 0;
    }
    
    .form-data {
        min-height: 1100px;
    }
    
    form#enquiryForm {
        max-width: 728px;
    }
    
    .captcha-group > div {
        float: left;
        padding-right: 6px;
    }
    
    button {
        border-radius: 2px;
        margin-top: 0;
        width: 200px;
        height: 75px;
    }
}

@media(max-width:767px) {
    h1 {
       margin-bottom: 15px; 
    }
    
    h1 span {
        display: block;
    }
    
    h2 {
        font-size: 2em;
        padding-left: 0;
        margin-bottom: 15px;
    }
    
    h3 {
        font-size: 2.9em;
        padding-left: 0;
        margin-bottom: 25px;
    }
    
    #content {
        padding-top: 175px;
    }
    
    .sub-text {
        font-size: 1.95em;
        padding: 0 25px;
    }
    
    .office-details {
        margin-top: 40px;
    }
    
    .left,
    .right{
        float: none;
        width: 100%;
        padding: 0;
        text-align: left;
    }
    
    .contact {
        padding-left: 0;
    }
    
    .animation {
        display: none;
    }
    
    address a {
        font-size: 1.6em;
    }
    
    address a i.icon {
        top: 1px;
        left: 1px;
    }
    
    address a.mail i.icon {
        left: 0;
    }
    
    address a.call i.icon {
        left: 2px;
        top: 1px;
    }
    
    .col,
    .column{
        float: none;
        width: 100%;
        padding: 0;
    }
    
    .col.darmstadt-office,
    .col.add-office {
        padding: 0 30px 35px;
    }
    
    .col.darmstadt-office {
        padding-top: 5px;
    }
    
    .col.add-office {
        padding-top: 18px;
    }
    
    .col-cover {
        display: none;
    }
    
    .step-process {
        margin-top: 35px;
    }
    
    .column-cover {
        margin: 0;
    }
    
    .process-flow {
        margin: 15px -10px 0 -20px;
    }
    
    .process-flow li {
        float: left;
        width: 50%;
        transform: scale(1);
        margin: 0;
        padding-top: 160px;
    }
    
    .process-flow li span {
        font-size: 1.4em;
    }
    
    .bubble {
        transform: scale(0.9);
        top: 25px;
    }
    
    .form-data {
        margin-top: 85px;
        padding-bottom: 0;
    }
    
    form#enquiryForm h3 {
        margin-bottom: 22px;
    }
    
    .kontaktForm {
        position: relative;
        margin-top: -140px;
        padding: 0 10px;
        bottom: 0;
    }
    
    form#enquiryForm {
        min-height: inherit;
        padding: 20px 15px;
    }
    
    .g-recaptcha-termin {
        transform: scale(1.08, 1);
    }
    
    #footer {
        padding: 60px 0 6px;
    }
}