body{
    padding: 0;
    margin: 0;
    font-family: 'Open Sans', sans-serif;
    color: #1E2022;
}

/*All pages*/

section a, section a:hover, .mobile_upper a, .mobile_upper a:hover {
	color: #DB3A4A;
	text-decoration: none!important;
}

.contact_buttons, .contact_buttons_notfall {
    position: fixed;
    right: 10px;
    bottom: 200px;
    z-index: 9999;
    width: 260px;
}

.contact_buttons_notfall {
    bottom: 257px;
}

section {
    width: 100%;
    overflow: hidden;
}

.contact_buttons a.contact_buttons_call, .contact_buttons a.contact_buttons_mail, a.custom_button_small {
    display: block;
    width: 150px;
    font-size: 16px;
    font-weight: lighter;
    border: 1px solid #DB3A4A;
    padding: 10px 15px;
    border-radius: 30px;
    outline: none;
    color: #1E2022;
    text-align: center;
    text-decoration: none;
    margin-bottom: 10px;
    background-color: #ffffff;
}

a.custom_button_small {
    padding: 5px 10px;
}

.contact_buttons a.contact_buttons_mail, a.custom_button_small {
    color: white;
    background-color: #DB3A4A;
}
.contact_buttons a.contact_buttons_call img, .contact_buttons a.contact_buttons_mail img {
    width: 18px;
    height: 18px;
    margin-bottom: 3px;
    margin-right: 5px;
}



button.custom_button, a.custom_button,
button.custom_button:hover, a.custom_button:hover,
button.custom_button:active, a.custom_button:active,
button.custom_button:visited, a.custom_button:visited,
button.custom_button:focus, a.custom_button:focus
{
    background-color: transparent;
    font-size: 14px;
    font-weight: lighter;
    /*border: 1px solid #DB3A4A;*/
    padding: 0;
    /*border-radius: 30px;*/
    outline: none;
    display: inline-block;
    color: #DB3A4A;
    font-weight: bold;
    /*width: 207px;*/
    text-align: center;
    line-height: 25px;
    text-decoration: none;
    position: relative;
    /*text-transform: uppercase;*/
    outline: none;
    border: none;
}

a.custom_button_white,
a.custom_button_white:hover,
a.custom_button_white:active,
a.custom_button_white:visited,
a.custom_button_white:focus {
    color: #ffffff;
    font-weight: bold;
    text-decoration: underline;
}

button.custom_button:after, a.custom_button:after{
    position: absolute;
    content: "";
    top: 5px;
    right: -25px;
    width: 18px;
    height: 18px;
    background-image: url("/assets/images/icn_arrow_right.svg");
    background-size: 12px 12px;
    background-repeat: no-repeat;
    background-position: center center;
    border-radius: 50%;
    background-color: #DB3A4A;
}


button.custom_button.blue, a.custom_button.blue,
button.custom_button.blue:hover, a.custom_button.blue:hover,
button.custom_button.blue:active, a.custom_button.blue:active,
button.custom_button:visited, a.custom_button.blue:visited,
button.custom_button.blue:focus, a.custom_button.blue:focus
{
    background-color: #ffffff;
    /*border: 1px solid #9AB7DC;*/
    color: #9AB7DC;
    /*padding: 10px 20px;*/
    /*text-transform: unset;*/
}

button.custom_button.blue:after, a.custom_button.blue:after{
    background-color: #9AB7DC;
}

section a {
    color: #DB3A4A;
    text-decoration: underline;
}

a.custom_link,
a.custom_link:hover,
a.custom_link:active,
a.custom_link:visited,
a.custom_link:focus
{
    font-size: 16px;
    font-weight: bold;
    line-height: 20px;
    color: #DB3A4A;
    display: inline-block;
    padding-right: 22px;
    text-decoration: none;
    background-image: url("../images/ComponentsIconsArrowsRight.svg");
    background-size: 16px 16px;
    background-repeat: no-repeat;
    background-position: right bottom;
}

header {}

header img.main_logo {
    height: 55px;
}

header #navbarResponsive {}
header #navbarResponsive ul {}
header #navbarResponsive ul li {}
header #navbarResponsive ul li a {}
header #navbarResponsive ul li a.nav-link{
    color: #1E2022;
    font-size: 14px;
    font-weight: lighter;
    text-transform: uppercase;
    padding: 27px 25px 23px 25px;
    margin: -5px 0;
    border-bottom: 4px solid transparent;
}

header #navbarResponsive ul li a.nav-link.active {
    border-bottom: 4px solid #DB3A4A;
}

header #navbarResponsive ul li a.nav-link.active.blue {
    border-bottom: 4px solid #9AB7DC;
}

header #navbarResponsive ul li a.nav-link span {
    color: #9AB7DC;
}

nav {}
main {}
footer {}
section {}

/*Single pages*/
main#homepage {}

main#homepage #upper_banner {
    /*margin-top: -80px;*/
    height: calc(80vh - 150px);
    /*background-image: url("../images/thumb_1464099769_bild-fuer-slider_3jpg.png");*/
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    padding: 0;
}

.upper_banner {
    height: calc(80vh - 150px);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}

#upper_banner .owl-prev,
#upper_banner .owl-next {
    height: 80px;
    width: 80px;
    padding: 15px;
    position: absolute;
    z-index: 9999;
    top: calc(50% - 40px);
    background-color: rgba(255,255,255,0.6);
}
#upper_banner .owl-prev {
    left: 0px;
}
#upper_banner .owl-next {
    right: 0px;
}

#upper_banner .owl-prev img,
#upper_banner .owl-next img {
    width: 50px;
    height: 50px;
}

#upper_banner .owl-prev:hover,
#upper_banner .owl-prev:active,
#upper_banner .owl-prev:visited,
#upper_banner .owl-prev:focus,
#upper_banner .owl-next:hover,
#upper_banner .owl-next:focus,
#upper_banner .owl-next:visited,
#upper_banner .owl-next:active {
    outline: none;
    border: none;
}

main#about #upper_banner {
    height: 500px;
    background-image: url("../images/aboutUs.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: right center;
}


main#physio #upper_banner {
    height: 500px;
    background-image: url("../images/20201111_Praxis Gonten.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: right center;
}


main#spectrum #upper_banner .container{
    margin-top: 0px;
    /*min-height: calc(100vh - 250px);*/
    background-image: url("../images/spectrum.png");
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: right center;

}

main #upper_banner .white_gradient {
    background: linear-gradient(to right, rgba(255,255,255,1),rgba(255,255,255,1),rgba(255,255,255,0.2),rgba(255,255,255,0));
}

main#spectrum .white_gradient, main#about .white_gradient {
    background: linear-gradient(to right, rgba(255,255,255,1),rgba(255,255,255,1),rgba(255,255,255,0),rgba(255,255,255,0),rgba(255,255,255,0));
}
main #upper_banner h1 {
    font-size: 56px;
    font-weight: bold;
}

span.red_text {
    color: #DB3A4A!important;
}
span.blue_text {
    color: #9AB7DC!important;
}

main #upper_banner p {
    font-size: 20px;
    font-weight: lighter;
    line-height: 32px;
}


#upper_intro {
    padding: 80px 0;
    margin-top: -120px;
    background: linear-gradient(to top, rgba(255,255,255,1),rgba(255,255,255,1),rgba(255,255,255,1),rgba(255,255,255,0));
    position: relative;
    z-index: 9;
}

#upper_intro h1 {
    font-size: 44px;
    font-weight: bold;
}
#upper_intro h4 {
    font-size: 20px;
    line-height: 36px;
    font-weight: lighter;
    color: #58585A;
}

main #spectrum {
    padding: 100px 0;
    background-color: #fafafa;
}

main #spectrum .spectrum_box a {
    display: block;
    padding: 20px;
}


main #spectrum a img {
    width: 220px;
    height: 220px;
    border-radius: 50%;
    margin: 0 auto;
}

main #spectrum .spectrum_box {
    margin: 0 20px;
}

main #spectrum h3 {
    font-size: 22px;
    font-weight: bold;

}

main #spectrum p {
    font-size: 16px;
    font-weight: lighter;
    line-height: 20px;
    color: #58585A;
}

main #services {
    padding: 75px 0;
}

main #services .box_container {
    padding: 75px 0;
}
main #services .box_container_left {
    position: relative;
}

main #services .box_container_left .box_image:before {
    display: block;
    content: "";
    width: 160px;
    height: 160px;
    background-color: #DB3A4A;
    position: absolute;
    left: 50px;
    bottom: -25px;
    z-index: -1;
}

main #services .box_container_right {
    position: relative;
}

main #services .box_container_right .box_image:after {
    display: block;
    content: "";
    width: 160px;
    height: 160px;
    background-color: #DB3A4A;
    position: absolute;
    right: 50px;
    bottom: -25px;
    z-index: -1;
}

main #services .box_container_left .box_image {
    margin-left: 135px;
    margin-right: 0px;
}
main #services .box_container_right .box_image {
    margin-right: 135px;
    margin-left: 0px;
}


main #services .box_container_left .box_content {
    margin-right: 135px;
    margin-left: 35px;
}
main #services .box_container_right .box_content {
    margin-left: 135px;
    margin-right: 35px;
}


.box_container .box_content h2.box_heading {
    font-size: 58px;
    line-height: 64px;
    font-weight: bold;
}


.box_container .box_content p.box_text {
    font-size: 20px;
    line-height: 36px;
    font-weight: lighter;
    color: #58585A;
}



main #services .box_container .box_image img {
    width: 100%;
}


main #call_to_action {
    color: white;
    vertical-align: middle;
    position: relative;
}

main #call_to_action .custom_container{
    padding: 40px;
    background-color: #DB3A4A;
}

main #call_to_action:after {
    display: block;
    content: "";
    width: 50%;
    background-color: #DB3A4A;
    height: 100%;
    position: absolute;
    right: 0px;
    top: 0;
    z-index: -1;
}

main #call_to_action h2{
    font-size: 36px;
    line-height: 39px;
    font-weight: bold;
    margin: 0;
    padding: 0;
    vertical-align: middle;
}

main #call_to_action a {
    /*line-height: 20px;*/
    /*font-weight: 100;*/
}

footer #main_footer {
    padding: 40px 0;
    background-color: #58585A;
    color: white;
    font-size: 16px;
    font-weight: lighter;
    line-height: 24px;
}

footer #main_footer .footer_link {}
footer #main_footer .footer_link img {
    height: 55px;
}

footer #main_footer .footer_box{}
footer #main_footer .footer_box .custom_span{
    padding-left: 10px;
}
footer #main_footer .footer_box strong{
    font-weight: bold;
}
footer #main_footer .footer_box h3{
    color: white;
    font-size: 20px;
    font-weight: bold;
    line-height: 28px;
}

footer #copyright {
    color: white;
    background-color: #DB3A4A;
    padding: 5px 0;
    font-size: 16px;
    font-weight: lighter;
    line-height: 18px;
}

footer #copyright a {
    color: white;
    text-decoration: none;
    margin-left: 20px;
}


#spectrum .services_nav {
    position: relative;
    z-index: 2;
}
#spectrum .services_nav ul.services_ul {
    /*list-style: none;*/
    padding: 0;
    margin: 0;
}

#spectrum .services_nav ul.services_ul > li {
    list-style: none;
    padding: 0;
    margin: 0;
    max-width: 280px;
}

#spectrum .services_nav ul.services_ul > li > a {
    display: inline-block;
    padding: 12px 3px;
    color: #58585A;
    width: 280px;
    font-size: 16px;
    line-height: 20px;
    font-weight: lighter;
    text-decoration: none;

}

#spectrum .services_nav ul.services_ul li.active {
    list-style: circle;
    color: white;
}

#spectrum .services_nav ul.services_ul > li.active > a {
    color: white;
    background-image: url("../images/bgLink.png");
    background-size: 260px 100%;
    background-repeat: no-repeat;
    padding-left: 18px;
    vertical-align: middle;
}
.service_box_header {
    position: absolute;
    top: 45px;
    height: 50px;
    width: calc(100% - 80px);
    left: 40px;
   /* background: linear-gradient(to bottom, rgba(255,255,255,1),rgba(255,255,255,0.3));*/
    z-index: 2;
}
.service_box_footer {
    position: absolute;
    bottom: 45px;
    height: 50px;
    width: calc(100% - 80px);
    left: 40px;
    background: linear-gradient(to top, rgba(255,255,255,1),rgba(255,255,255,0.3));
    z-index: 2;
}
.service_box_body {
    margin: 35px 25px;
    border-radius: 8px;
    background-color: #ffffff;
    padding: 25px;
    height: calc(100vh - 320px);
    overflow: hidden;
}

.services_box {
    height: 100%;
    overflow-y: scroll;
    overflow-x: hidden;
    padding-right: 3px;
}

/* width */
.services_box::-webkit-scrollbar {
    width: 3px;
}

/* Track */
.services_box::-webkit-scrollbar-track {
    background: #f1f1f1;
}

/* Handle */
.services_box::-webkit-scrollbar-thumb {
    background: #888;
}

/* Handle on hover */
.services_box::-webkit-scrollbar-thumb:hover {
    background: #555;
}


.top_transparent {
    height: 25px;
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    background-color: #0c5460;
    z-index: 1;
}

.services_box h2.services_heading {
    font-size: 30px;
    padding: 0;
    margin: 0;
    line-height: 36px;
    font-weight: bold;
    color: #DB3A4A;
}
.services_box p.services_text {
    font-size: 16px;
    line-height: 25px;
    font-weight: lighter;
    color: #58585A;
}

section#gallery {
    margin-top: -30px;
    margin-bottom: 180px;
    z-index: 0;
    position: relative;
}


#gallery a.gallery_link{
    position: relative;
    display: block;
    padding-top: 100%;
    border-radius: 8px;
    text-align: center;
    transition: transform .2s; /* Animation */
    overflow: hidden;
    margin-top: 15px;
}

#about #gallery a.gallery_link {
    /*height: 210px;
    width: 210px;*/
}

#gallery a.gallery_link img {
    height: 100%;
    width: auto;
    top: 0;
    left: 0;
    position: absolute;
    margin: 0 auto;
}


#about #gallery a.gallery_link img {
    /*height: 210px;*/
}


#about #gallery a.gallery_link.has_many span {
    padding-top: 78px;
}

#gallery a.gallery_link:hover  {
    transform: scale(1.2);
}

#gallery a.gallery_link.has_many span {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    text-align: center;
    color: white;
    font-weight: bold;
    line-height: 30px;
    padding-top: calc(50% - 12px);
    border-radius: 8px;
    background-color: rgba(21, 21, 21, 0.5);
}


section#team_members {
    padding: 65px 0;
}

section#team_members h2.team_members_heading {
    font-size: 42px;
    line-height: 48px;
    font-weight: bold;
    margin: 0;
    padding: 0;
}

section#team_members .divider {
    width: 85px;
    height: 4px;
    background-color: #DB3A4A;
    margin: 40px auto;
}

section#team_members .divider.blue {
    background-color: #9AB7DC;
}

section#team_members .team_box {
    margin: 20px 0;
    display: block;

}

section#team_members .team_box_after {
    margin: 20px 20px 20px 0px;
}
section#team_members .team_box_after_image {
    padding-top: 100%;
    position: relative;
    border-radius: 50%;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

header #navbarResponsive ul li:nth-child(5) a {
    /*background: url(/assets/images/nav_physio.png) center left no-repeat;*/
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background-size: 10px;
    margin-left: 10px;
    padding-left: 15px;
	/*color: #9AB7DC!important*/
}

section#team_members .team_box .team_box_img {
    margin-right: 20px;
    width: calc(100% - 20px);
    padding-top: calc(100% - 20px);
    position: relative;
    border-radius: 50%;
    overflow: hidden;
    cursor: pointer;
    transition: all 0.5s ease;
}

section#team_members .team_box .team_box_img img {
    position: absolute;
    top: 0px;
    width: 100%;
    height: 100%;
    filter: grayscale(100%);
    transition: all 0.5s ease;
}

section#team_members .team_box:hover .team_box_img img {
    filter: none;
}

section#team_members .team_box h4.team_box_heading {
    font-weight: bold;
    font-size: 20px;
    line-height: 24px;
    color: #58585A;
    margin-top: 20px;
    margin-bottom: 10px;
    padding-left: 10px;
	height: 48px;
	overflow:hidden;
    transition: all 0.5s ease;
}

section#team_members .team_box:hover .team_box_img {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

section#team_members .team_box:hover h4.team_box_heading {
    color: #DB3A4A;
}

section#team_members .team_box .team_box_desc {
    font-weight: lighter;
    font-size: 16px;
    line-height: 18px;
    color: #58585A;
    padding-left: 10px;
}

section#about_content {
    padding: 65px 0;
}

section#about_content .about_box  {
    margin-bottom: 65px;
}
section#about_content .about_box h3.about_box_heading {
    font-weight: bold;
    font-size: 30px;
    line-height: 36px;
    color: #1E2022;
    margin-bottom: 35px;
}

section#about_content .about_box h2.about_box_heading {
    font-weight: bold;
    font-size: 42px;
    line-height: 48px;
    color: #1E2022;
    margin-bottom: 35px;
}


section#about_content .about_box .about_box_desc, section#about_content .about_box h4.about_box_heading {
    padding-left: 15px;
}
section#about_content .about_box h4.about_box_heading {
    font-weight: bold;
    font-size: 24px;
    line-height: 30px;
    color: #58585A;
    margin-bottom: 15px;
}

section#about_content .about_box .about_box_desc p{
    font-weight: lighter;
    font-size: 18px;
    line-height: 32px;
    color: #58585A;
    margin-bottom: 25px;
}

section#about_content .about_box .about_box_desc a{
    color: #DB3A4A;
    text-decoration: underline;
}

hr.hr {
    margin-bottom: 50px;
}

section#about_content .about_box_timeline {}
section#about_content .about_box_timeline ul {
    padding: 0;
    margin: 0;
}
section#about_content .about_box_timeline ul li {
    padding: 0px 0 65px 35px;
    margin: 0 0 0 25px;
    display: block;
    list-style: none;
    border-left: 1px solid black;
    position: relative;
    color: #58585A;
    font-size: 18px;
    line-height: 26px;
    font-weight: lighter;
}

section#about_content .about_box_timeline ul li strong {
    font-size: 18px;
    line-height: 26px;
    font-weight: bold;
}

section#about_content .about_box_timeline ul li:last-of-type {
    border-left: 1px solid transparent;
}

section#about_content .about_box_timeline ul li span.timeline_number {
    display: block;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #58585A;
    color: white;
    font-weight: bold;
    font-size: 20px;
    line-height: 28px;
    position: absolute;
    left: -20px;
    top: 0;
    text-align: center;
    padding-top: 7px;
}

section#about_content .about_box_timeline ul li:last-of-type span.timeline_number {
    background-color: #DB3A4A;
}


main#kontakt {}
main#kontakt section#kontakt_form {}
section#kontakt_form h2.kontakt_heading {
    font-size: 30px;
    line-height: 36px;
    font-weight: bold;
    padding: 0 10px;
    margin-top: 30px;
}

main#kontakt section#kontakt_form .custom_form{}
.custom_form label{
    font-size: 16px;
    line-height: 18px;
    font-weight: lighter;
    padding: 0 8px;
    color: #1E2022;
}
.custom_form input, .custom_form textarea{
    background-color: #f9f6f6;
    border: none;
    border-radius: 8px;
    padding: 20px;
    font-size: 16px;
    line-height: 18px;
}

.custom_form input:focus,.custom_form textarea:focus {
    color: #1E2022;
    background-color: #f9f6f6;
    border: none;
    outline: 0;
    box-shadow: none;
}

/*.custom_form button.custom_button {*/
/*    width: 325px;*/
/*    margin-top: 15px;*/
/*    background-color: #DB3A4A;*/
/*    color: white;*/
/*    text-transform: unset;*/
/*    font-size: 20px;*/
/*    font-weight: lighter;*/
/*}*/

.custom_form button.custom_button.blue {
    /*background-color: #9AB7DC;*/
}

section#kontakt_details {
    background-color: #F9F6F6;
    padding: 70px 0;
}

section#kontakt_details h3.kontakt_details_heading, section#kontakt_partners h3.kontakt_partners_heading {
    font-size: 30px;
    line-height: 36px;
    font-weight: bold;
    padding: 0 10px;
    margin-bottom: 30px;
}

section#kontakt_details .kontakt_details_box {
    font-size: 18px;
    line-height: 32px;
    font-weight: lighter;
    color: #58585A;

}

section#kontakt_details .kontakt_details_box strong {
    font-weight: bold;
    color: #1E2022;
}


section#kontakt_partners {
    padding: 55px 0;
}

.owl-carousel .owl-stage {
    display: block;
    align-items: center;
}

.about_box_list {
    margin: 30px 0;
}

.about_box_list ul {

}
.about_box_list ul li {
    list-style: none;
    display: block;
}

.about_box_list ul li a{
    display: block;
    border-radius: 8px;
    border-left: 8px solid #9AB7DC;
    font-size: 20px;
    font-weight: bold;
    line-height: 24px;
    padding: 15px;
    color: #58585A;
    text-decoration: none;
    margin-bottom: 20px;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

h1.custom_heading {
    font-size: 42px;
    line-height: 48px;
    font-weight: bold;
    margin: 20px 0px;
}

#custom p.custom_p {
    font-size: 20px;
    line-height: 32px;
    font-weight: lighter;
    color: #58585A;
}


#custom .custom_description h3, #custom h3.about_box_heading {
    color: #1E2022;
    font-size: 30px;
    line-height: 36px;
    font-weight: bold;
}
#custom .custom_description p {
    font-size: 18px;
    line-height: 32px;
    font-weight: lighter;
    color: #58585A;
}

.custom_modal {}
.custom_modal .modal-header {
    border-bottom: none;
}
.custom_modal .modal-header .modal_dissmiss small {
    font-size: 16px;
    line-height: 20px;
    font-weight: lighter;
    color: #58585A;
}

.custom_modal .modal-header .modal_dissmiss img {
    height: 20px;
    width: 20px;
    margin-left: 5px;
}
.custom_modal .modal-body {}
.custom_modal .modal-body .modal_image{
    display: inline-block;
    border-radius: 50%;
    overflow: hidden;
}

.custom_modal .modal-body .modal_subtitle{
    font-size: 16px;
    line-height: 20px;
    font-weight: lighter;
    font-style: italic;
    color: #58585A;
}
.custom_modal .modal-body .modal_title{
    font-size: 30px;
    line-height: 36px;
    font-weight: bold;
    color: #DB3A4A;
}

.custom_modal .modal-body .modal_main_desc{
    font-size: 16px;
    line-height: 25px;
    font-weight: lighter;
    color: #58585A;
}

.custom_modal .modal-body .modal_main_desc strong {
    font-weight: bold;
    padding-top: 30px;
}

.custom_modal .modal-body .modal_main_desc td:first-child {
    white-space: nowrap;
}


.contact_mail_cover, .contact_mail_cover_notfall {
    text-align: right;
    display: none;
    width: 100%;
    height: 100vh;
    position: fixed;
    z-index: 99999;
    top: 0;
    left: 0;
    background-color: rgba(0,0,0,0.7);
}
.contact_mail_cover a.contact_buttons_call {
    width: auto;
    color: #DB3A4A;
    text-decoration: underline;
}

/* The sticky class is added to the navbar with JS when it reaches its scroll position */
.sticky {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 999;
    background-color: #ffffff;
}

/* Add some top padding to the page content to prevent sudden quick movement (as the navigation bar gets a new position at the top of the page (position:fixed and top:0) */
.sticky + .header_divider {
    padding-top: 81px;
}

.col-md-1-5 {
    width: 20%!important;
    padding: 0 15px;
}

@media only screen and (max-width: 600px) {
    .col-md-1-5 {
        width: 50%!important;
        padding: 0 15px;
    }
    main #upper_banner .white_gradient {
        background: linear-gradient(to top, rgba(255,255,255,1),rgba(255,255,255,0.2),rgba(255,255,255,0));
    }

    main#homepage #upper_banner {
        margin-top: 0;
        height: 50vh;
        /*background-image: url(../images/thumb_1464099769_bild-fuer-slider_3jpg.png);*/
        background-size: auto 100%;
        background-repeat: no-repeat;
        background-position: top center;
    }
    .mobile_upper {
        display: block!important;
        padding: 30px 0;
    }

    main #spectrum {
        padding: 30px 0;
        background-color: #fafafa;
    }

    main #spectrum .spectrum_box {
        margin: 0;
    }

    main #spectrum .spectrum_box a {
        padding: 20px 0;
    }
    main #spectrum .spectrum_box img {
        width: 100%;
        height: auto;
    }

    main #spectrum h3 {
        font-size: 18px;
    }

    main #spectrum p {
        font-size: 14px;
    }

    main #services {
        padding: 30px 0;
    }

    main #services .box_container_left .box_image {
        margin-left: 45px;
    }
    main #services .box_container_right .box_image {
        margin-right: 45px;
    }

    main #services .box_container_left .box_image:before {
        width: 75px;
        height: 75px;
        left: 25px;
        bottom: -25px;
    }

    main #services .box_container_right .box_image:after {
        width: 75px;
        height: 75px;
        right: 25px;
        bottom: -25px;
    }

    .box_container .box_content h2.box_heading {
        font-size: 30px;
        line-height: 36px;
    }

    main #services .box_container_left .box_content,
    main #services .box_container_right .box_content {
        margin: 0;
        padding-top: 35px;
    }

    .box_container .box_content p.box_text {
        font-size: 16px;
        line-height: 24px;
    }

    button.custom_button, a.custom_button, button.custom_button:hover, a.custom_button:hover,
    button.custom_button:active, a.custom_button:active, button.custom_button:visited,
    a.custom_button:visited, button.custom_button:focus, a.custom_button:focus {
        /*background-color: transparent;*/
        /*font-size: 16px;*/
        /*font-weight: lighter;*/
        /*border: 1px solid #DB3A4A;*/
        /*padding: 10px 10px;*/
        /*border-radius: 30px;*/
        /*outline: none;*/
        /*display: inline-block;*/
        /*color: #1E2022;*/
        /*width: 120px;*/
        /*text-align: center;*/
        /*text-decoration: none;*/
        /*text-transform: uppercase;*/
    }

    main #services .box_container {
        padding: 20px 0;
        margin: 0!important;
    }

    main #call_to_action h2 {
        font-size: 28px;
        line-height: 38px;
    }
    main #call_to_action .custom_container {
        padding: 15px 10px;
        text-align: center;
    }

    main #call_to_action a {
        margin-left: 0!important;
        margin: 5px;
    }

    .mobile_upper h1 {
        font-size: 36px;
        line-height: 36px;
        font-weight: bold;
    }

    .mobile_upper p {
        font-size: 18px;
        line-height: 26px;
        font-weight: lighter;
        color: #58585A;
    }

    header img.main_logo {
        height: 30px;
    }

    .contact_buttons a.contact_buttons_call, .contact_buttons a.contact_buttons_mail, a.custom_button_small {
        /*display: inline-block;*/
        width: 50px;
        font-size: 16px;
        padding: 10px;
    }
    a.button_full.contact_buttons_call {
        display: block;
        width: 280px;
        font-size: 16px;
        padding: 10px;
    }

    #upper_banner_mobile {
        margin-bottom: 70px;
    }

    .spectrum_mobile_heading {
        font-size: 22px;
        line-height: 30px;
        font-weight: bold;
        color: #1E2022;
        padding: 15px;
        background-color: #fafafa;
    }

    .spectrum_mobile_content:before {
        display: block;
        position: absolute;
        content: "";
        width: 100%;
        height: 180px;
        background-color: #DB3A4A;
        z-index: -1;
    }

    .spectrum_mobile_dropdown select {
        width: 100%;
        padding: 10px;
        margin: 10px 0;
        outline: none;
        border: none;
        background-color: #fafafa;
        border-radius: 5px;
        font-size: 18px;
        line-height: 26px;
        font-weight: lighter;
        color: #58585A;
    }

    .spectrum_mobile_desc {
        margin-bottom: 20px;
    }

    .spectrum_mobile_desc h3 {
        font-size: 24px;
        line-height: 30px;
        font-weight: bold;
        color: #DB3A4A;
        margin-top: 15px;
        margin-bottom: 10px;
    }
    .spectrum_mobile_desc p {
        font-size: 16px;
        line-height: 24px;
        font-weight: lighter;
        color: #58585A;
    }

    #gallery a.gallery_link {
        /*width: calc(50% - 10px);*/
        height: auto;
    }

    #gallery a.gallery_link img {
        width: 100%;
    }

    section#gallery {
        margin-bottom: 80px;
    }

    section#team_members h2.team_members_heading {
        font-size: 28px;
        line-height: 38px;
    }

    .custom_modal .modal-body .modal_image {
        position: absolute;
        left: 0;
    }
    .custom_modal .modal-body .modal_image img {
        width: 75px;
    }

    .custom_modal .modal-body .modal_subtitle, .custom_modal .modal-body .modal_title {
        position: absolute;
        left: 85px;
    }
    .custom_modal .modal-body .modal_subtitle {
        top: 0;
    }
    .custom_modal .modal-body .modal_title {
        top: 26px;
        font-size: 20px;
        line-height: 28px;
    }

    .modal_main_desc {
        margin-top: 85px;
    }

    /* Add some top padding to the page content to prevent sudden quick movement (as the navigation bar gets a new position at the top of the page (position:fixed and top:0) */
    .sticky + .header_divider {
        padding-top: 57.61px;
    }
    .contact_buttons {
        position: fixed;
        right: 10px;
        bottom: 80px;
        z-index: 9999;
        width: auto;
    }
    .contact_buttons_notfall {
        bottom: 136px;
    }

    #upper_intro {
        padding: 0;
        margin-top: 0px;
        display: none;
    }

}

#cookies {
    position: fixed;
    bottom: 0px;
    padding: 20px 0;
    background-color: rgba(235,235,235,0.8);
    z-index: 9999;
    /*border: 1px solid #DB3A4A;*/
}

#cookies p {
    font-size: 20px;
    line-height: 28px;
    font-weight: lighter;
}
