/*
BREAKPOINTS (max)
480
736
980
1280
1680
*/

/* montserrat-regular - latin */
@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 400;
	src: url('/font/montserrat-v14-latin-regular.eot'); /* IE9 Compat Modes */
	src: local('Montserrat Regular'), local('Montserrat-Regular'),
		url('/font/montserrat-v14-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		url('/font/montserrat-v14-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
		url('/font/montserrat-v14-latin-regular.woff') format('woff'), /* Modern Browsers */
		url('/font/montserrat-v14-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
		url('/font/montserrat-v14-latin-regular.svg#Montserrat') format('svg'); /* Legacy iOS */
}

/* montserrat-500 - latin */
@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 500;
	src: url('/font/montserrat-v14-latin-500.eot'); /* IE9 Compat Modes */
	src: local('Montserrat Medium'), local('Montserrat-Medium'),
		url('/font/montserrat-v14-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		url('/font/montserrat-v14-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
		url('/font/montserrat-v14-latin-500.woff') format('woff'), /* Modern Browsers */
		url('/font/montserrat-v14-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
		url('/font/montserrat-v14-latin-500.svg#Montserrat') format('svg'); /* Legacy iOS */
}

/* montserrat-700 - latin */
@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 700;
	src: url('/font/montserrat-v14-latin-700.eot'); /* IE9 Compat Modes */
	src: local('Montserrat Bold'), local('Montserrat-Bold'),
		url('/font/montserrat-v14-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		url('/font/montserrat-v14-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
		url('/font/montserrat-v14-latin-700.woff') format('woff'), /* Modern Browsers */
		url('/font/montserrat-v14-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
		url('/font/montserrat-v14-latin-700.svg#Montserrat') format('svg'); /* Legacy iOS */
}



:root {
	--background-grey : #f4f4f4;
	--base-blue : #5f92ca;
	--dark-blue : #164f8c;
	/* --base-blue : rbg(95,146,202); */
	--text-black : #3c3b3b;
	--text-grey : #b7b7b7;
	--text-menu : rgba(255, 255, 255, 0.35);
}

html {
	font-family:Montserrat;
}

body#iplution {
	font-family:inherit;
	background-color:var(--background-grey);
	max-width:1280px;
	margin:0 auto;
}

body#iplution  header#header {
	/* position:fixed; */
	padding:0;
	/*margin:0 2.5em;*/
	left:2.5em;
	top:0;
	max-width:100%;
	margin:0 auto;
	height:5em;
	background-color:rgba(255,255,255,0.98);
	z-index:10;
	border:solid 1px rgba(160, 160, 160, 0.3);
	/*border-top:none; */
	border-radius:2px;
}

header#header nav#topnav {
	/* width:50%; */
	/* margin-right:7em; */
	background-color:var(--base-blue);
	display:flex;
	justify-content:flex-end;
	align-items:center;
	
	transform: translateX(-0px); /* cover #header border */
}

header#header nav#topnav  > * {
	margin:0 1em;
}

#header-left {
	flex-grow:7;
}

#header-right {
	flex-grow:0;
}

#header-bar {
	display:flex;
	margin:0.75em 0;
}

#header-bar  > h3 {
	margin:0 1em;
	color:var(--text-grey);
}
#header-bar  > hr {
	margin:0;
	flex-grow:1;
	transform:translateY(-46%);
	border-bottom:4px solid var(--text-grey);
}



div#mainwrapper {
	display:flex;
	align-items:flex-start;
	margin-top:0.5em;
	flex-grow:1;
}

body#iplution  aside#sidebar {
	/*width:15em;*/
	/* position:relative; */
	height:unset;
	position: -webkit-sticky; /* Safari */
	position:sticky;
	top:0.5em;	
	
	padding:0.25em;
	/* margin-left:2.5em;*/
	margin-bottom:0.5em;
	background-color:var(--base-blue);
	border:solid 1px rgba(160, 160, 160, 0.3);
	border-radius:2px;
	overflow:hidden;
	
	height:calc(100vh - 1em);
	
	flex-shrink:0;
	flex-grow:0;
	min-width:14em;
	flex-basis:10em;
}

body#iplution  aside#sidebar #sidebar-content {
	position: -webkit-sticky; /* Safari */
	padding-top:1em;
}

body#iplution  aside#sidebar .inner {
	min-height:unset;
	
}


aside#sidebar #sidebar-logo-frame {

}
	
img#sidebar-logo {
	/*max-height:100%;*/
	width:100%;
	padding:0.5em;
	border-radius:0.5em;
	/*margin:0.5em 0 0 1em; */
	background-color:white;
}

aside#sidebar nav .scrolly {
	font-weight:normal;
	font-size:0.7em;
}
aside#sidebar nav .scrolly.active {
	font-weight:bold;
}

aside#sidebar nav .scrolly:hover {
	font-weight:bold;
}

aside#sidebar nav a::before {
	background: var(--text-menu);
}

aside#sidebar nav a::after {
	background-image: -moz-linear-gradient(to right, rgba(255, 255, 255, 0.35), white);
	background-image: -webkit-linear-gradient(to right, rgba(255, 255, 255, 0.35), white);
	background-image: -ms-linear-gradient(to right, rgba(255, 255, 255, 0.35), white);
	background-image: linear-gradient(to right, rgba(255, 255, 255, 0.35), white);
}



body#iplution aside#sidebar + main {
	/* margin-left:0.5em; */
	flex-grow:1;
	flex-basis:10em;
	/* max-width:100%; */
	max-width:960px;
	display:flex;
	flex-direction:column;
	justify-content:center;
}


#wrapper > section {
	margin-bottom:0.5em;
}

section.wrapper.fullscreen {justify-content:flex-start;}

#iplution section.wrapper > .inner {
	padding:0;
	width:unset;
}

#iplution section.wrapper > .inner > * {
	max-width:100%;
}

#iplution footer.wrapper {
	background-color:var(--dark-blue);
	margin-bottom:0.5em;
}

#iplution footer.wrapper > .inner {
	padding:0.5em 1.5em;
	text-align:right;
	color:rgba(255,255,255,0.5);
}

#iplution footer.wrapper > .inner  .menu{
	color:rgba(255,255,255,0.5);
}

#iplution footer.wrapper > .inner  .menu a {
	text-decoration:none;
	border:none;
}

#iplution footer.wrapper ul {
	margin:0;
}

/* ################ */
/* SECTION SPECIFIC */
/* ################ */


#iplution #intro {
	background:#ffffff;
	border:solid 1px rgba(160, 160, 160, 0.3);
	color:var(--text-black);
	padding:2em 3em 3.3em 3em
}

/* #iplution #intro h2{font-weight:500;} */
#iplution #intro p{font-size:1em;}

#iplution #news {
	background:#ffffff;
	border:solid 1px rgba(160, 160, 160, 0.3);
	color:var(--text-black);
	padding:2em 3em 3.3em 3em
}

#news-wrapper {
	display:grid;
	grid-template-columns:1fr 1fr 1fr;
	grid-column-gap:0.5em;
}

#news-wrapper article {
	border:solid 1px rgba(160, 160, 160, 0.3);
	border-radius:0.5em;
	background-color:rgba(0,0,0,0.01);
	padding:0.75em;
	cursor:pointer;
	transition:0.2s;
}

#news-wrapper article:hover {
	background-color:rgba(0,0,0,0.04);
}

#news-wrapper article:hover h3.article-head{
	text-decoration:underline;
}

#news-wrapper article .article-img {
	max-width:100%;
}

#news-wrapper article .article-img  img{
	max-width:100%;
}

#news-wrapper article h3.article-head {
	color:black;
	font-weight:bold;
	font-size:1.2rem;
	margin-bottom:0;
}

#news-wrapper article .article-author {
	font-size:0.75rem;
	color:#b7b7b7;
}

#news-wrapper article .article-abstract {
	font-size:0.9rem;
	text-align:justify;
}

#iplution #whatwedo {
	background:#ffffff;
	border:solid 1px rgba(160, 160, 160, 0.3);
	color:var(--text-black);
	padding:2em 3em 3.3em 3em
}

#iplution #whoweare {
	background:#ffffff;
	border:solid 1px rgba(160, 160, 160, 0.3);
	color:var(--text-black);
	padding:2em 3em 3.3em 3em
}


#intro-video-frame {
	text-align:center;
}



#iplution h2 {
	font-weight:500;
	color:var(--text-black);
}

#iplution h4 {
	color:var(--text-black);
}





.qbox {
	border:solid 1px rgba(160, 160, 160, 0.3);
	border-radius:0.5em;
	background-color:rgba(0,0,0,0.01);
	padding:1em;
}

.qbox + .qbox {
	margin-top:1em;
}

.qbox-content {
	display:flex;
	align-items:center;
}
.qbox-content >*:first-child{
	padding-right:1em;
	border-right:solid 1px rgba(160, 160, 160, 0.3);
}
.qbox-content >*:nth-child(2){
	padding-left:1em;
}

#whatwedo-image {
	max-width:100%;
	margin-bottom:2em;
}

#whatwedo .qbox img {
	height:7em;
}

#whatwedo .qbox p {
	font-size:smaller;
	margin-bottom:0;
}

#whoweare .qbox img {
	float:left;
	margin:0 0.5em;
	height:8em;
}

#whoweare #malte {
	text-align:justify;
	border-right:none;
	margin-bottom:0;
}

#whoweare #worldmap {
	margin:0.5em 0;
}


#iplution #getintouch {
	position:relative;
	background:#ffffff;
	border:solid 1px rgba(160, 160, 160, 0.3);
	color:var(--text-black);
	padding:2em 3em 3.3em 3em
}

#iplution #getintouch form#contact {
	max-width:85%;
}

#iplution #getintouch #address {
	position:absolute;
	bottom:0.5em;
	right:0;
	transform:translateX(40%);
	background-color:var(--base-blue);
	padding:1em;
}


#getintouch label {
	font-weight:300;
	color:var(--text-black);
}

#getintouch h3 {
	color:var(--text-black) !important;
}

#getintouch a.button {
	color:var(--text-black) !important;
	border:solid 1px rgba(160, 160, 160, 0.3) !important;
	transition:0.2s;
}

#getintouch a.button:hover {
	
	background-color:rgba(95, 146, 202, 0.1);
}

#getintouch input,#getintouch textarea {
	background:rgba(95, 146, 202, 0.1);
}

/* STATICS */

#contact_agree {display:none;}

body#imprint.static {background-color:white;color:black;}
body#imprint.static h2{color:black;}
body#imprint.static strong {color:black;}

body#privacy.static {background-color:white;color:black;}
body#privacy.static h2{color:black;}
body#privacy.static strong {color:black;}

body#legal.static {background-color:white;color:black;}
body#legal.static h2{color:black;}
body#legal.static strong {color:black;}

/* TEMP */

#getintouch a {font-weight:bold;}
#getintouch a:hover {color:var(--dark-blue);}