/* This CSS resource incorporates links to font software which is the valuable copyrighted property of Monotype and/or its suppliers. You may not attempt to copy, install, redistribute, convert, modify or reverse engineer this font software. Please contact Monotype with any questions regarding Web Fonts: http://www.fontshop.com */

@font-face {
    font-family:"DIN W01 Regular";
    src:url("../fonts/5591097/9b63158c-0e74-4751-966c-d749c5d31cce.eot?#iefix");
    src:url("../fonts/5591097/9b63158c-0e74-4751-966c-d749c5d31cce.eot?#iefix") format("eot"),url("../fonts/5591097/6ceed230-b2b3-4422-b048-4aa11687430a.woff2") format("woff2"),url("../fonts/5591097/80b0143f-6f0d-4dce-aafd-f3c81b85d177.woff") format("woff"),url("../fonts/5591097/247437df-66d2-4605-ac03-1be0e07c31a7.ttf") format("truetype");
}

html {
	font-size: 62.5%;
}

body {
	background: #d5dcdf;
	text-align: left;
	font-size: 17px; 
	font-size: 1.7rem;
	letter-spacing: 0.02em;
	line-height: 1.6;
	font-family:"DIN W01 Regular";
	color: #686363;
	-webkit-font-smoothing: antialiased;
}

a {
	color: #559dd0;
	text-decoration: none;
}

p a:hover {
	text-decoration: underline;
}

strong {
	font-family:"DIN W01 Regular";
	display: inline-block;
	border-bottom: 1px solid #559dd0;
}
body.referenzen strong {
	margin-bottom: 2px;
}


.clear {
	clear: both;
}

#site-wrapper {
	width: 90%;
	max-width: 1400px;
	margin: 100px auto 100px auto;
}

	#header {
		background: #fff;
		padding: 40px 40px 0 40px;
		position: relative;
		z-index: 100;
		height: 92px;
		box-sizing: border-box;
	}
		#mobile-nav {
			display: none;
			color: #559dd0;
			padding: 30px 40px;
			position: absolute;
			top: 0;
			left: 0;
			font-size: 20px;
			font-size: 2.0rem;
		}
		#header ul.nav {

		}
			#header ul.nav li {
				display: inline-block;
				margin-right: 25px;
			}
			#header ul.nav li:last-child {
				margin-right: 0;
			}
			#header ul.nav a {
				color: #686363;
				font-size: 20px; 
				font-size: 2.0rem;
				letter-spacing: 0.04em;
				line-height: 1.2;
			}
			#header ul.nav a:hover {
				color: #559dd0;
			}
			#header ul.nav li.current-menu-item > a {
				color: #559dd0;
			}
		#header .sub-nav {
			display: none;
			margin-top: 3px;
		}
		body.leistungen-nav #header ul#leistung {
			display: block;
		}
		#header .logo {
			position: absolute;
			z-index: 100;
			top: 43px;
			right: 40px;
		}

/* hamburger icon */
/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  position: absolute;
  top: 45px;
  left: 25px;
  z-index: 1;
  padding: 15px;
  display: none;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible; }
  .hamburger:hover {
    opacity: 0.7; }
  .hamburger.is-active:hover {
    opacity: 0.7; }
  .hamburger.is-active .hamburger-inner,
  .hamburger.is-active .hamburger-inner::before,
  .hamburger.is-active .hamburger-inner::after {
    background-color: #647b9b; }

.hamburger-box {
  width: 40px;
  height: 24px;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 40px;
    height: 4px;
    background-color: #647b9b;
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
  .hamburger-inner::before {
    top: -10px; }
  .hamburger-inner::after {
    bottom: -10px; }
.hamburger--spin .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spin .hamburger-inner::before {
    transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; }
  .hamburger--spin .hamburger-inner::after {
    transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spin.is-active .hamburger-inner {
  transform: rotate(225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spin.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; }
  .hamburger--spin.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

	#content {
		position: relative;
		background: #fff;
		padding-bottom: 35px;
		min-height: 644px;
		box-sizing: border-box;
	}
	body.home #content {
		padding-bottom: 0;
		min-height: initial;
	}
		#content .backgroundimage {
			position: relative;
		}
		#content .text-on-image {
			position: absolute;
			max-width: 600px;
			right: 0;
			bottom: 120px;
			text-align: right;
		}
		#content img {
			display: block;
			width: 100%;
			height: auto;
		}
		#content h1, #content img.former-h1 {
			margin-bottom: 16px;
		}
		#content div.image-fade {
			position: relative;
			height: 60px;
		}
			#content div.image-fade span {
				display: block;
				position: absolute;
				z-index: 1;
				background: #647b9b;
				width: 100%;
				height: 100%;
			}
			#content div.image-fade span.text {
				padding: 0 40px 0 40px;
				box-sizing: border-box;
				font-size: 36px;
				font-size: 3.6rem;
				letter-spacing: 0.04em;
				color: #ffffff;
			}
			#content div.image-fade span.active {
				z-index: 3;
			}
		body.auslandsentsendungen #content div.image-fade {
			height: 91px;
		}
		body.nachfolgemanagement #content div.image-fade {
			height: 127px;
		}
		#content h2 {
			color: #647b9b;
			font-size: 36px;
			font-size: 3.6rem;
			letter-spacing: 0.04em;
			padding: 0px 40px 0px 40px;
			margin-bottom: 6px;
			line-height: 1.4;
		}
			#content h2 img {
				display: inline-block;
			}
		#content p {
			padding: 0px 40px 0px 40px;
		}
		body.datenschutz #content h2, body.datenschutz #content h3, body.datenschutz #content h4, body.datenschutz #content ul {
			padding: 0px 40px 0px 40px;
		}
		#content a:hover {
			text-decoration: none;
			color: #647b9b;
		}
		#content .left {
			float: left;
			margin-top: 90px;
			margin-bottom: 22px;
			width: 100%;
		}
			#content .left p, #content .right p {
				margin-bottom: 13px;
			}
			body.impressum #content .left p, body.impressum #content .right p {
				margin-bottom: 28px;
			}
			#content .left p:last-of-type, #content .right p:last-of-type {
				margin-bottom: 0;
			}
			#content .left p {
				padding-right: 0;
			}
		#content .right {
			float: right;
		}
		body.leistungen #content .left {
			max-width: 871px;
		}
		body.leistungen #content .right {
			margin-top: 70px;
			max-width: 1145px;
			width: 82%;
		}
		body.onboarding #content .left { /* new: executive coaching */
			max-width: 820px;
		}
		body.onboarding #content .right {
			max-width: 800px;
			width: 56%;
		}
			body.onboarding #content .right p, body.onboarding #content .right h2 {
				text-align: right;
			}
		body.netzwerk #content .left {
			max-width: 917px;
		}
		body.netzwerk #content .right {
			max-width: 1190px;
			width: 85%;
			margin-top: 30px;
		}
		body.auslandsentsendungen #content .left {
			max-width: 917px;
		}
		body.auslandsentsendungen #content .right {
			max-width: 1120px;
			width: 80%;
		}
		body.nachfolgemanagement #content .left {
			width: 100%;
		}
			body.nachfolgemanagement #content .left h1 {
				float: left;
			}
			body.nachfolgemanagement #content .left p.right {
				float: right;
				width: 60%;
				box-sizing: border-box;
				padding-right: 40px;
			}
			body.nachfolgemanagement #content .left ol.right {
				float: right;
				width: 60%;
				box-sizing: border-box;
				counter-reset: foo;
				display: table;
				padding: 0 40px;
			}
				body.nachfolgemanagement #content .left ol.right li {
					list-style: none;
					counter-increment: foo;
					display: table-row;
				}
				body.nachfolgemanagement #content .left ol.right li:before {
					content: counter(foo) ".";
					display: table-cell;
					text-align: right;
					padding-right: 1em;
				}
		body.nachfolgemanagement #content .right {
			max-width: 1120px;
		}
		body.profil #content .left {
			width: 38%;
			margin-top: 35px;
			margin-bottom: 0;
		}
		body.profil #content .right {
			width: 62%;
			margin-top: 78px;
		}
		body.profil.en #content .right {
			margin-top: 106px;
		}
			body.profil #content .right p.spec {
				margin-bottom: 33px;
			}
			body.profil #content .right p, body.profil #content .right h2 {
				text-align: right;
			}
		body.referenzen #content .left {
			max-width: 643px;
			margin-bottom: 0;
		}
			body.referenzen #content .left h1 {
				margin-bottom: 0;
			}
		body.referenzen #content .right {
			width: 54%;
			max-width: 420px;
			margin-top: 85px;
		}
			body.referenzen #content .right h2 {
				font-family:"DIN W01 Regular";
				font-size: 17px;
				font-size: 1.7rem;
				letter-spacing: 0.02em;
				line-height: 1.6;
				color: #686363;
				margin-bottom: 40px;
				padding-left: 0;
			}
			body.referenzen #content .right ul {
				line-height: 1.3;
				padding-right: 40px;
			}
				body.referenzen #content .right ul li {
					margin-bottom: 13px;
				}
			body.referenzen #content .right p {
				padding-right: 68px;
			}
				body.referenzen #content .right p span.author {
					font-style: italic;
				}
		body.datenschutz #content .left {
			width: 67%;
			max-width: 877px;
			margin-top: 90px;
			margin-bottom: 0;
		}
			body.datenschutz #content .left h1 {
				margin-bottom: 0;
			}
		body.datenschutz #content .right {
			float: left;
			width: 100%;
			max-width: 877px;
			margin-top: 10px;
		}
			body.datenschutz #content .right h2 {
				font-weight: normal;
				margin-bottom: 13px;
			}
			body.datenschutz #content .right h3 {
				font-family:"DIN W01 Regular";
				font-size: 21px;
				font-size: 2.1rem;
				margin: 26px 0 13px 0;
			}
			body.datenschutz #content .right h4 {
				font-family:"DIN W01 Regular";
				font-size: 19px;
				font-size: 1.9rem;
				margin: 20px 0 13px 0;
			}
			body.datenschutz #content .right p, body.datenschutz #content .right h2, body.datenschutz #content .right h3, body.datenschutz #content .right h4, body.datenschutz #content .right ul {
				padding-right: 40px;
			}
				body.datenschutz #content .right p span.author {
					font-style: italic;
				}
			body.datenschutz #content .right ul {
				margin-bottom: 13px;
			}
		body.kontakt #content {
			display: flex;
			padding-top: 90px;
		}
			body.kontakt #content .left {
				float: none;
				margin: 0;
				width: auto;
			}
				body.kontakt #content .left h1 {
					margin-bottom: 0;
				}
			body.kontakt #content .middle {
				
			}
				body.kontakt #content .middle a.download {
					position: absolute;
					bottom: 0;
					left: 30px;
				}
			body.kontakt #content .right {
				float: none;
				width: 460px;
				align-self: flex-end;
				margin-left: auto;
				padding-bottom: 14px;
			}
				body.kontakt #content .right h3 {
					padding: 0px 40px 0px 40px;
					font-family:"DIN W01 Regular";
				}
				body.kontakt #content .right h4 {
					padding: 0px 40px 0px 40px;
					margin-bottom: 26px;
				}
				body.kontakt #content .right p {
					margin-bottom: 26px;
				}
		body.impressum #content .left {
			width: 34%;
			margin-top: 30px;
			margin-bottom: 0;
		}
			body.impressum #content .left h1 {
				padding: 0px 40px 0px 40px;
			}
		body.impressum #content .right {
			width: 62%;
			max-width: 826px;
			margin-top: 90px;
		}
			body.impressum #content .right h2 {
				padding: 0;
				text-align: right;
			}
			body.impressum #content .right .left {
				float: left;
				margin-top: 130px;
				width: 50%;
				margin-left: -40px;
			}
			body.impressum #content .right .right {
				float: right;
				margin-top: 130px;
				width: 50%;
				margin-left: -40px;
			}
			body.impressum #content .right h3, 
			body.impressum #content .left h3 {
				padding: 0px 40px 0px 40px;
				font-family:"DIN W01 Regular";
			}
			body.impressum #content .right h4,
			body.impressum #content .left h4 {
				padding: 0px 40px 0px 40px;
				margin-bottom: 13px;
			}

		/* slider styles */
		#content .slider {
			width: 100%;
			margin-bottom: 25px;
		}
			#content .slider h2 {
				margin-bottom: 0;
				background: #647b9b;
				color: #ffffff;
				padding: 20px 40px;
			}
			body.nachfolgemanagement #content .slider .text {
				box-sizing: border-box;
				height: 174px;
				background: #647b9b;
				display: table;
			}
				body.nachfolgemanagement #content .slider h2 {
					display: table-cell;
					vertical-align: middle;
				}
			body.auslandsentsendungen #content .slider .text {
				box-sizing: border-box;
				height: 130px;
				background: #647b9b;
				display: table;
			}
				body.auslandsentsendungen #content .slider h2 {
					font-size: 23px;
					font-size: 2.3rem;
					display: table-cell;
					vertical-align: middle;
				}
			#content .slider img {
				width: 100%;
			}

	#footer {
		background: #647b9b;
		padding: 40px 40px 0 40px;
		height: 92px;
		box-sizing: border-box;
	}
		#footer ul#language {
			float: left;
		}
			#footer ul#language li {
				display: inline-block;
				margin-right: 3px;
				color: #fff;
				font-size: 15px; 
				font-size: 1.5rem;
			}
				#footer ul#language li a {
					text-transform: uppercase;
					color: #fff;
					font-size: 20px; 
					font-size: 2.0rem;
					letter-spacing: 0.04em;
					line-height: 1.2;
				}
				#footer ul#language li a:hover {
					color: #559dd0;
				}
		#footer ul.nav {
			float: right;
		}
			#footer ul.nav li {
				display: inline-block;
				margin-right: 20px;
			}
			#footer ul.nav li:last-child {
				margin-right: 0;
			}
				#footer ul.nav li a {
					color: #fff;
					line-height: 1.2;
				}
				#footer ul.nav li a:hover {
					color: #559dd0;
				}
				#footer ul.nav li.current-menu-item a {
					color: #559dd0;
				}

/* new flex styles */
/*.flex-wrapper {
	display: flex !important;
	padding-top: 90px !important;
}
	.flex-item {
		float: none !important;
		margin: 0 !important;
		width: auto !important;
	}
	.left.flex-item {
		margin: 0 !important;
	}
	.right.flex-item {
		margin: 0 !important;
		margin-left: auto !important;
		align-self: flex-end !important;
	}
	.flex-wrapper .clear {
		display: none;
	}*/

@media screen and (max-width: 1460px) {	
	body.datenschutz #content .right {
		max-width: 100%;
		padding-right: 40px;
		box-sizing: border-box;
	}
}

@media screen and (max-width: 1400px) {	
	#site-wrapper {
		width: 95%;
		margin: 50px auto 50px auto;
	}
}

@media screen and (max-width: 1315px) {	
	#content .text-on-image {
		max-width: 510px;
	}
}

@media screen and (max-width: 1279px) {
	#header .logo {
		width: 310px;
	}
		#header .logo img {
			width: 100%;
			height: auto;
			display: block;
		}

		#header ul.nav a {
			font-size: 19px;
			font-size: 1.9rem;
		}
}

@media screen and (max-width: 1160px) {
	#site-wrapper {
		max-width: 820px;
		background: #ffffff;
	}
		#header {
			height: auto;
			padding: 140px 40px 0 40px;
		}
			#header .logo {
				top: 39px;
			}
			#header ul.main-nav {
				display: none;
				margin-bottom: 40px;
			}
				#header ul.nav li {
					display: block;
					margin-right: 0;
					padding: 7px 0;
				}
			#header .sub-nav {
				display: block;
				margin-top: 7px;
				margin-left: 20px;
			}
			.hamburger {
				display: inline-block;
			}

		#content .text-on-image {
			position: relative;
			max-width: 100%;
			right: initial;
			bottom: initial;
			text-align: left;
			padding: 0;
		}
		body.home #content {
			padding-bottom: 35px;
		}

		#content {
			display: block !important;
			padding-top: 0 !important;
		}
		div.left, div.right {
			margin: 0 !important;
			padding: 0 !important;
			width: 100% !important;
			max-width: 100% !important;
			text-align: left !important;
		}
		#content h1, #content h2, #content h3, #content h4, #content p, #content ul, #content ol {
			padding: 0 40px !important;
			margin: 0 !important;
			margin-bottom: 30px !important;
			width: auto !important;
			float: none !important;
			text-align: left !important;
		}
		#content h2 {
			margin: 10px 0 30px 0 !important;
			line-height: 1.2;
		}
		#content .slider h2 {
			padding: 20px 40px !important;
			margin: 0 !important;
		}
		#content h3 {
			margin-bottom: 0 !important;
		}
		#content img:not(.slider img) {
			display: block !important;
			width: 100% !important;
			max-width: 100% !important;
			height: auto !important;
			margin-bottom: 30px !important;
		}
		body.kontakt #content img.former-h1 {
			max-width: 432px !important;
		}

		#content .slider {
			width: 100% !important;
			max-width: 100% !important;
			float: none !important;
			margin-bottom: 30px !important;
		}
		body.nachfolgemanagement #content .slider .text, body.auslandsentsendungen #content .slider .text {
			height: auto;
			display: block;
		}
			body.nachfolgemanagement #content .slider h2, body.auslandsentsendungen #content .slider h2 {
				display: block;
			}

		#scrollbar2 .scrollbar {
			display: none;
		}
		#scrollbar2 .viewport {
			height: auto;
			overflow: auto;
		}
			#scrollbar2 .overview {
				position: relative;
			}

	body.profil #content img.former-h1 {
		width: auto;
		max-width: 100%;
	}
}

@media screen and (max-width: 1024px) {

}

@media screen and (max-width: 720px) {
	#site-wrapper {
		margin: 25px auto;
	}
}

@media screen and (max-width: 600px) {
	#footer {
		padding: 40px;
		height: auto;
	}
		#footer ul#language {
			width: 100%;
			text-align: center;
		}
		#footer ul.nav {
			width: 100%;
			text-align: center;
			margin-top: 15px;
		}
			#footer ul.nav li {
				margin: 0 15px !important;
			}
}

@media screen and (max-width: 530px) {
	#site-wrapper {
		width: initial;
		margin: 15px;
	}

		#header {
			padding: 78px 20px 0 20px;
		}
			#header .logo {
				top: 20px;
				right: 20px;
				width: 179px;
			}
			#mobile-nav {
				padding: 22px 20px;
			}
			#header ul.main-nav {
				margin-bottom: 25px;
			}

		.hamburger {
		  position: absolute;
		  top: 12px;
		  left: 5px;
		}

		#content h1, #content h2, #content h3, #content h4, #content p, #content ul, #content ol {
			padding: 0 20px !important;
		}

		#content h2 {
			font-size: 27px;
			font-size: 2.7rem;
		}
		#content .slider h2 {
			padding: 20px !important;
		}

		#footer {
			padding: 20px;
		}
			#footer ul.nav li {
				display: block;
				margin: 0 !important;
			}
}

