/* ****************************************** */
/*                    General                 */
/* ****************************************** */

@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/source-sans-pro/source-sans-pro-v11-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Source Sans Pro Regular'), local('SourceSansPro-Regular'),
       url('../fonts/source-sans-pro/source-sans-pro-v11-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/source-sans-pro/source-sans-pro-v11-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/source-sans-pro/source-sans-pro-v11-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/source-sans-pro/source-sans-pro-v11-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/source-sans-pro/source-sans-pro-v11-latin-regular.svg#SourceSansPro') format('svg'); /* Legacy iOS */
}

html {
    width: 100%;
    height: 100%;
}

body {
    width: 100%;
	font-family: "Source Sans Pro", sans-serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.5;
	color: #333333;
	overflow-x: hidden!important;
}

.sw-clear {clear:both;}

.clearfix::after {
	content: "";
	clear: both;
	display: table;
  }

.sw-space-top-10 { margin: 10px 0 0 0;}
.sw-space-top-15 { margin: 15px 0 0 0;}
.sw-space-top-20 { margin: 20px 0 0 0;}
.sw-space-top-25 { margin: 25px 0 0 0;}

.sw-space-bottom-10 { margin: 0 0 10px 0;}
.sw-space-bottom-15 { margin: 0 0 15px 0;}
.sw-space-bottom-20 { margin: 0 0 20px 0;}
.sw-space-bottom-25 { margin: 0 0 25px 0;}

.sw-padding-10 {padding:10px;}
.sw-padding-15 {padding:15px;}
.sw-padding-20 {padding:20px;}

.sw-rounded-5 {border-radius: 5px;}
.sw-padding-bottom-25 { padding: 0 0 25px 0;}

.drop-cap:first-letter {
    float: left;
    margin: 0;
    padding: 0px 0.2em 0 0;
    font-size: 2em;
    font-weight: bold;
    line-height: 1.2em;
    text-indent: 0;
    background: transparent;
    color: #000000;
}

.copyright {
	font-size:1em;
}

.row-fluid {
	margin:0 auto;
	width:100%;
}

.vertical-center {
margin: 0;
position: absolute;
top: 50%;
-ms-transform: translateY(-50%);
transform: translateY(-50%);
}

.border {
	border:1px solid #000000;
}

/***** Fullwidth font scaling ***** 
<div class="scale-container-fullwidth">
<h1 class="scale-content-fullwidth">Text to scale</h1>
</div>
******************************** */
.scale-container-fullwidth {
  text-align: center;
}
.scale-content-fullwidth {
  display: inline-block;
  transform-origin: 50% 0;
}

/*************** Loader *************/
.no-js #loader { display: none;  }
.js #loader { display: block; position: absolute; left: 100px; top: 0; }
.loading-animation {
	position: fixed;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	z-index: 9999;
	background: url(../img/loader.gif) center no-repeat #000000;
}

/* ****************************************** */
/*                  Cookie Bar                */
/* ****************************************** */

#sw-cookie-bar {background-color: rgba(0, 0, 0, 0.7) !important; height:auto; line-height:2em; color:#eeeeee; text-align:center; padding:3px 0; z-index:19999;  width:100%; font-size:0.9em;}
#sw-cookie-bar.fixed {position:fixed; bottom:0; left:0; width:100%;}
#sw-cookie-bar.fixed.bottom {bottom:0; top:auto; width:100%;}
#sw-cookie-bar p {margin:0; padding:0;}
#sw-cookie-bar a {color:#ffffff; display:inline-block; border-radius:3px; text-decoration:none; padding:0 6px; margin-left:15px;}
#sw-cookie-bar .cb-enable {background:#007700;}
#sw-cookie-bar .cb-disable {background-color: rgba(255, 0, 0, 0.6) !important;}
#sw-cookie-bar .cb-enable:hover {background:#009900;}
#sw-cookie-bar .cb-disable:hover {background-color: rgba(255, 0, 0, 0.9) !important;}

/* ****************************************** */
/*                  Jumbotron                 */
/* ****************************************** */

.jumbotron{
	background-image:url('../img/header-bg.jpg');
	height: 100vh;
	padding: 0;
	margin: 0;
	border-radius: 0;
	
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;

    -webkit-background-position: center center;
    -moz-background-position: center center;
    -o-background-position: center center;
    background-position: center center;

    -webkit-background-attachment: fixed;
    -moz-background-attachment: fixed;
    -o-background-attachment: fixed;
    background-attachment: fixed;
}

.sw-jumbo-inner {
	 width:100%;
	 height:100vh;
}

.sw-logo-big{}

.sw-slogan {
	font-size:2vmax;
	font-weight:bold;
	color:#FFFFFF;
	text-shadow: 3px 3px 3px rgba(0, 0, 0, 1);
}

.sw-jumbotron-button-wrapper {
	margin:25px 0 0 0;
}

.sw-jumbotron-button {
	margin:0 10px 0 10px;
	border:1px solid #333333;
}

.sw-dl-button {
	background-color:#000088;
	color:#FFFFFF;
}

.sw-jumbotron-fb-wrapper {
	margin-top:15px;
}

.sw-fb-like-button {
	background-color:#4267B2;
	color:#FFFFFF;
	border:1px solid #555555;
}

@media (max-width: 486px) { 
	.sw-jumbotron-button {
		margin:0 10px 10px 10px;
	}
}

/* ****************************************** */
/*              Section general               */
/* ****************************************** */

section {
	padding: 25px 0 0 0 ;
	margin: 0 0 0 0;
}

.sw-section-headline {
	padding: 10px 0 15px 0 ;
	font-size:1.8em;
	font-weight:bold;
}

.sw-section-headline-timeline {
	padding: 20px 0 15px 0 ;
	font-size:1.3em;
	font-weight:bold;
}

.sw-section-subheadline {
	margin: 0 0 15px 0;
	font-size:1.2em;
	font-weight:normal;
}

.sw-section-lead {
	margin: 0 0 25px 0;
	font-size:1em;
}

.sw-box-headline {
	padding: 10px 0 15px 0 ;
	font-size:1.5em;
	font-weight:bold;
}

@media (max-width: 486px) { 
	.sw-section-headline {}
	.sw-section-subheadline {}
}

/* ****************************************** */
/*                  Navigation                */
/* ****************************************** */

.sw-navbar-black {
	background-color: #000000;
}

.navbar-brand{
	max-width:50%;
}

.sw-img-brand {
	position:relative;
	top:-5px;
}

.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.8);
}

.navbar-dark .navbar-nav .nav-link:focus, .navbar-dark .navbar-nav .nav-link:hover {
  color: rgba(255, 255, 255, 1);
}

.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .nav-link.active {
  color: #fff;
   border-bottom:1px solid #FFFFFF;;
}

@media screen and (max-width: 1024px) {
	.navbar-dark .navbar-nav .show > .nav-link,
	.navbar-dark .navbar-nav .active > .nav-link,
	.navbar-dark .navbar-nav .nav-link.show,
	.navbar-dark .navbar-nav .nav-link.active {
	color: #fff;
	border-bottom:0px solid #FFFFFF;;
	}
}

/* ****************************************** */
/*                  About us                  */
/* ****************************************** */

.about-section {
	margin: 0 0 25px 0;
}

/* ****************************************** */
/*                  Timeline                  */
/* ****************************************** */

.timeline-section {
background-image:url('../img/timeline-bg.jpg');
	min-height: 300px;
	
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;

    -webkit-background-position: center center;
    -moz-background-position: center center;
    -o-background-position: center center;
    background-position: center center;

    -webkit-background-attachment: fixed;
    -moz-background-attachment: fixed;
    -o-background-attachment: fixed;
    background-attachment: fixed;
	
	padding-bottom:25px;
}

.timeline {
	overflow: hidden;
	width:100%;
}

.timeline ol {
  transition: all 1s;
  margin:0;
  padding:0;
  display:flex;
  justify-content: space-between;
}

.timeline ol li {
  list-style:none;
  position: relative;
  text-align:center;
  flex-grow: 1;
  flex-basis: 1;
  padding: 0 5px;
}

.timeline ol li .dot{
	position:relative;
	width:10px;
	height:10px;
	display:block;
	border-radius:50%;
	background: #FFFFFF;
	margin:0 auto 5px auto;
}

.timeline ol li .dot-active {
	background: #FF0000;
	border:2px solid #FFFFFF;
}

.timeline ol li:not(:last-child)::after {
    content: "";
    width: calc(100% - 14px);
    height: 2px;
    display: block;
    background: #FFFFFF;
    margin: 0;
    position: absolute;
    top: 4px;
    left: calc(50% + 7px);
}	

.timeline-part {
	font-size:1em;
}

.tl-active{
	//font-size:1.2em;
	font-weight:bold;
}

.tl-link{
	text-decoration:none;
	color:#FFFFFF;
}

.tl-link:hover{
	position: relative;
	text-decoration:none;
	color:#FFFFFF;
	font-weight:bold;
}

.tl-details {
	display: none;
	animation-duration: 1s;
}

.tlc-active {
	display:inline-block;
	animation-duration: 1s;
}

.timeline-content {
	margin-top:20px;
	width:80%;
	padding:10px;
	background:rgba(0,0,0,0.5);
}
@media screen and (max-width: 486px) { 
	.timeline-content {
		width:90%;
		padding:10px;
	}
}

.timeline-headline{
	font-size: 1.2em;
	font-weight:bold;
}

.timeline-sub-headline{
	font-size: 1em;
	font-weight:bold;
	font-style: italic;
	margin: 0 0 10px 0;
}

.timeline-text{
		font-size: 0.9em;
	
}

.timeline-text .timeline-img { 
	width: 100px;
	float: left;
	-webkit-shape-outside:circle();
	shape-outside:circle();
	float:left;
	margin: 0 20px 0 0;
	border:1px solid #888888;
}

/* ****************************************** */
/*                  Download                  */
/* ****************************************** */

.download-section {
	background-color:#E4E4E4;
}

.sw-archive-select {
	width:auto;
}

.sw-download-download {
	padding:10px 10px 10px 10px;
	background: url('../img/dl-box-head.png');
    background-repeat: no-repeat;
	
    -webkit-background-size: 90%;
    -moz-background-size: 90%;
    -o-background-size: 90%;
    background-size: 90%;
	
	-webkit-background-position: center 10px;
    -moz-background-position: center 10px;
    -o-background-position: center 10px;
    background-position: center 10px;

	background-color:#000000;
color:#999999;
}

.sw-download-picture {
	background-color:#FFFFFF;
	background-image:url('../img/download-bg.jpg');

	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;

    -webkit-background-position: center top;
    -moz-background-position: center top;
    -o-background-position: center top;
    background-position: center top;

    -webkit-background-attachment: scroll;
    -moz-background-attachment: scroll;
    -o-background-attachment: scroll;
    background-attachment: scroll;
	
}

.sw-download-latest-button {
	margin: 0 10px 0 10px;
	background-color:#000088;
	color:#FFFFFF;
	max-width:90%;
	white-space: normal;
	border:1px solid #333333;
	position:relative;
}

.sw-download-latest-button:hover {
	background-color:#000000;
	color:#CCCCCC;
}

.sw-download-img-text1, .sw-download-img-text2  {
	position:absolute;
	background:rgba(0,0,0,0.5);
	color:#FFFFFF;
	padding:10px;
	font-size:1.5em;
	font-weight:bold;
	width:60%;
}

.sw-download-img-text1  {
	left:10px;
	top:25%;
}

.sw-download-img-text2  {
	right:10px;
	top:50%;
}

.dl-box-head {

}

.fat-or {font-size: 1.2em; font-weight:bold;}

@media screen and (max-width: 486px) { 
	.sw-download-img-text1 {
		width:80%;
	}
	.sw-download-img-text2 {
		width:90%;
	}
}

@media screen and (max-height: 700px) { 
	.sw-download-wrapper, .sw-download-download, .sw-download-picture {
		min-height:50vh;
	}
	.sw-download-download{ padding:5% 10px 10px 10px; }
}

@media screen and  (min-height: 701px) { 
	.sw-download-wrapper, .sw-download-download, .sw-download-picture {
		min-height:30vh;
	}
}

/* ****************************************** */
/*               Prices & Sizes               */
/* ****************************************** */

.info_request{
	width:100%;
}

.infoalert {
	display:inline-block;
}

.info-thanks, .info-error {
	margin: 0 5% 0 5%;
	text-align:center;
}

/* ****************************************** */
/*              Facts & Numbers    	           */
/* ****************************************** */

.facts {
background-image:url('../img/counter-bg.jpg');
	min-height: 300px;
	
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;

    -webkit-background-position: center center;
    -moz-background-position: center center;
    -o-background-position: center center;
    background-position: center center;

    -webkit-background-attachment: fixed;
    -moz-background-attachment: fixed;
    -o-background-attachment: fixed;
    background-attachment: fixed;
}

.sw-counter-elem {
	height:200px;
}

.sw-facts-head {
	font-size:2em;
}

.sw-facts-sub-head {
	font-size:1.2em;
	margin: -10px 0 0 0;
}

.sw-facts-number {
	font-size:3em;
	font-weight:bold;
}

.sw-facts-devider {
	border-right:1px solid #444444;
}

@media screen and (max-width: 486px) { 
	.sw-facts-devider {
		border-right:0px solid #444444;
	}
}

/* ****************************************** */
/*                   Clients                  */
/* ****************************************** */
.clients-section {
	padding-bottom:25px;
}

.clients-grid {
	padding:1em;
	display:none;	
}

.clients-img {
	border:0px;
	transition: transform .2s;
}

.clients-img:hover {
	transform: scale(1.1);
}

@media(min-width:768px) {
	//.clients-img {width:80%;}
	.clients-grid {
		padding:1em;	
	}
}

.clients-text {
	font-size:0.8em;
	padding-top:5px;
}

.clients-link {
	text-decoration:none;
	color:#555555;
}

.clients-link:hover {
	text-decoration:none;
	color:#888888;
}

.loadmore {
	cursor:pointer;
	margin-top:20px;
}

/* ****************************************** */
/*                    Team                    */
/* ****************************************** */
.team-section {
	padding-top:0px;

	background-image:url('../img/bg-team.jpg');
	min-height: 300px;
	
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;

    -webkit-background-position: center center;
    -moz-background-position: center center;
    -o-background-position: center center;
    background-position: center center;

    -webkit-background-attachment: fixed;
    -moz-background-attachment: fixed;
    -o-background-attachment: fixed;
    background-attachment: fixed;
}

.sw-rounded-circle {
	border:5px solid #FFFFFF;
	-webkit-box-shadow: 0px 10px 23px 0px rgba(0,0,0,0.75);
	-moz-box-shadow: 0px 10px 23px 0px rgba(0,0,0,0.75);
	box-shadow: 0px 10px 23px 0px rgba(0,0,0,0.75);
	transition: transform .2s;
}

.sw-rounded-circle:hover {
	transform: scale(1.05);
}
	
.team-img-wrapper {
	//margin-bottom:10px;
}

.team-name {
	color:#FFFFFF;
	font-size:1.2em;
	font-weight:bold;
	margin-top:10px;
}

.team-jobdesc {
	color:#FFFFFF;
	font-size:0.9em;
}

@media screen and (max-width: 768px) {
	.team-item {
		margin-bottom:15px;
	}
}

/* ****************************************** */
/*                  Subscribe                 */
/* ****************************************** */

.subscribe_request {
	width:100%;
}

.subscribe-hint {
	font-size:0.8em;
	margin:25px 0 25px 0;
	color:#999999;
	text-align:center;
}

.subscribealert {
	display:inline-block;
}

.subscribe-thanks, .subscribe-error {
	margin: 0 5% 0 5%;
	text-align:center;
}

/* ****************************************** */
/*                   Contact                  */
/* ****************************************** */

.contact-section {
background-image:url('../img/bg-contact.jpg');
	min-height: 300px;
	
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;

    -webkit-background-position: center center;
    -moz-background-position: center center;
    -o-background-position: center center;
    background-position: center center;

    -webkit-background-attachment: fixed;
    -moz-background-attachment: fixed;
    -o-background-attachment: fixed;
    background-attachment: fixed;
	
	padding-bottom:25px;
}

.contact_message {
	display:none;
	border: 1px solid #00A31E;
	color: #FFF;
	background-color:rgba(0, 163, 30, 0.5);
	padding:10px;
	border-radius:5px;
}

.contact-message-add {
		display:inline-block;
}

.contact-message-headline {
	font-size:16px;
	font-weight:bold;
	margin-bottom:10px;
}

.required-label{
	background-color:#FF0000;
	color: #FFFFFF;
	font-size: .85em;
	//width: 50%;
	clear: both;
	padding:5px 10px 5px 10px;
	margin-top:5px;
	display: inline-block;
	border-radius:5px;
}

@media (max-width: 900px) {
	.	-label{
		max-width: 100%;
	}
}

/* ****************************************** */
/*                    Footer                  */
/* ****************************************** */

.footer {
    //max-height:100px;
    background-color: #000000;
	padding-top:10px;
}

.privacy-trigger, .terms-trigger {
	display:inline-block;
	margin-right:15px;
	cursor:pointer;
	color: #6c757d;
}

.privacy-trigger:hover, .terms-trigger:hover {
	color: rgba(255, 255, 255, 0.8);
}

.top-modal-headline {
		font-size:1em;
}

.modal-headline {
	padding-bottom:5px;
	font-size:1em;
	font-weight:bold;
}

.modal-small-font {
	font-size:0.8em;
	padding-bottom:10px;
}

.modal-li {
	margin-top:10px;
	font-size:0.8em;
}

/* ****************************************** */
/*                  swAds Popup                 */
/* ****************************************** */
.swad-overlay {
	display:none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0; 
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0,0,0,0.85);
    z-index: 29999;
    cursor: pointer;
}

.swad-popup {
	height:100vh;
	display:flex;
	align-items:center;
	justify-content:center;
}

.swad-img-wrapper {
		//border:1px solid #FF0000;
		display:inline-block;
		margin-top:-0.9em;
		padding:0px;
		max-width:90%;
		max-height:90%;
		margin-left	:5%;
		margin-right:5%
}

/**** Phones etc. ****/
@media only screen and (max-width: 640px) {
	.swad-img-wrapper {
		max-width:90%;
	}
}

/**** iPhone 4 landscape ******/
@media screen and (max-width: 320px) and (orientation: landscape) {
	.swad-img-wrapper {	
		position:relative;
		top:0px;
		max-height:75vh;
		max-width:60%;
	}
}

/*** All phones landscape ****/
@media screen and (max-width: 640px) and (orientation: landscape) {
	.swad-img-wrapper {	
		position:relative;
		top:0px;
		max-height:75vh;
		max-width:60%;
	}
}

.swad-img {
	border-radius:5px;
	border:1px solid #555555;
	border-radius:5px;
	max-width:100%;
}

.swad-close {
	position:relative;
	float:right;
 	margin: 0 -0.6em -0.9em 0;
	font-size: 1.2em;
}

.swad-hint {
	padding-left: 5px;
	font-size:0.7em;
	color:#999999;
}

/* ****************************************** */
/*              Scroll top button             */
/* ****************************************** */

#sw-scroll-top {
    position:fixed;
    right:10px;
    bottom:10px;
    cursor:pointer;
    width:30px;
    height:30px;
    background-color:#000088;
    text-indent:-9999px;
    display:none;
    -webkit-border-radius:5px;
    -moz-border-radius:5px;
    border-radius:5px;
	opacity: 0.3;
    filter: alpha(opacity=30); /* For IE8 and earlier */
    -ms-filter:"alpha(opacity=30)";
	
}

#sw-scroll-top span {
    position:absolute;
    top:50%;
    left:50%;
    margin-left:-8px;
    margin-top:-12px;
    height:0;
    width:0;
    border:8px solid transparent;
    border-bottom-color:#ffffff
}

#sw-scroll-top:hover {
    opacity:1;
    filter:"alpha(opacity=100)";
    -ms-filter:"alpha(opacity=100)";
}

/********** Color classes **************/
.white {color:#FFFFFF;}














