/*=========== google fonts ============*/
@import url(https://fonts.googleapis.com/css?family=Poppins);

/*=========== html elements ============*/
* {
    box-sizing: border-box;
}

body {
  font-family: "Poppins", sans-serif;
  margin: 0px;
}
h1 {
	font-size : 3.5em;
}

h2 {
	font-weight : normal;
	margin : 7px 0px;
}

table, p {
	font-size : 0.8em;
}

video {
	width : 100%;
	border : 1px solid #303190;
}

hr {
	margin-top : 30px;
	text-align : left;
	margin-left : 0px;
	width : 25%;
	border-top : 2px solid #303190;
}

img {
	width : 100%;
	height : auto;
}

footer {
	position : absolute;
	bottom : 0px;
	width : 100%;
	line-height : 50px;
	background-color : #303190;
	color : white;
	text-align : center;
	font-size : 0.75em;
}

input[type=text], select, textarea {
	width : 100%;
	padding : 10px;
	margin-bottom : 10px;
	border : 1px solid #303190;
	display : inline-block;
	box-sizing: border-box;
	font-family: "Poppins", sans-serif;
	font-size : 0.8em;
}

input[type=submit] {
	padding : 10px 50px;
	color : white;
	background-color : #303190;
	display : inline-block;
	box-sizing: border-box;
	float : right;
	border : none;
	cursor : pointer;
	border-radius : 4px;
}


::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: rgb(147,148,197);
    opacity: 1; /* Firefox */
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: rgb(147,148,197);
}

::-ms-input-placeholder { /* Microsoft Edge */
    color: rgb(147,148,197);
}
select:required:invalid {
    color: rgb(147,148,197);
}

option:disabled {
	display: none;
    color: rgb(147,148,197);
}

option {
	color: #000;
}

/*=========== navbar elements ============*/
.navbar {
  position: fixed;
  top : 0px;
  left : 0px; 
  width : 100%;
  min-height: 50px;
  background-color : white;
  margin-bottom: 0px;
  border: 1px solid transparent;
  border-bottom-color : #303190;
  z-index : 1000;
}

.navbar ul {
	margin : 0px;
	padding : 0px;
}

.navbar li.selected {
	background-color : #f1f1f1;
}

.navbar a:hover, #main-links-toggle:hover  {
	opacity : 0.80;
	filter : alpha(opacity=80);
}

.logo {
	position : absolute;
	top : 0px;
	left : 0px;
	width : 150px;
	height : 48px;
	background-image : url("../img/logo.jpg");
	background-repeat : no-repeat;
	background-position : center;
	background-size : contain;
}

#main-links-toggle {
	position : absolute;
	right : 71px;
	padding : 0px 15px;
	color : #303190;
	line-height : 48px;
	font-size : 1.4em;
	cursor : pointer;
}


#main-links {
	display : none;
	position : absolute;
	top : 50px;
	width : 100%;
	border: 1px solid transparent;
	border-bottom-color : #303190;
	background-color : white;
}

#main-links a {
	color : #303190;
	font-weight : bold;
	font-size : 0.8em;
	padding : 0px 15px;
	text-decoration : none;
	line-height : 26px;
} 

@media (min-width: 772px) {
	/* show pages links and hide toggle button on screens larger than 772px */
	#main-links-toggle {
		display : none;
	}
	
	#main-links {
		position : absolute;
		top : 0px;
		right : 71px;
		height : 48px;
		width : auto;
		display : block;
		border : 0px none;
	}
	
	#main-links li {
		display : inline-block;
	}
	
	#main-links a {
		line-height : 48px;
	}
}

.lang-switch {
	position : absolute;
	top : 0px;
	right : 0px;
	height : 49px;
	width : 70px;
	overflow : hidden;
	border-left : 1px solid #c0c0c0;
}

.lang-switch li {
	display : inline-block;
	position : absolute;
	top : 0px;
	width : 35px;
	height : 48px;
}

.lang-switch a {
	display : inline-block;
	width : 35px;
	height : 48px;
	background-repeat : no-repeat;
	background-position : center;
	background-size : 18px 18px;
}


/*=========== page content elements ============*/
.page-content {
	position : absolute;
	top : 50px;
	width : 100%;
	min-height : calc(100% - 50px);
	padding-bottom : 50px;
}

.container {
	padding: 15px;
	margin-right: auto;
	margin-left: auto;
}

@media (min-width: 768px) {
	.container {
		width: 750px;
	}
	
	.container-large {
		padding-top : 50px;
		padding-bottom : 50px;
	}
}
@media (min-width: 992px) {
	.container {
		width: 970px;
	}
	
	.container-large {
		padding-top : 120px;
		padding-bottom : 120px;
	}
}
@media (min-width: 1200px) {
	.container {
		width: 1170px;
	}
	
	.container-large {
		padding-top : 150px;
		padding-bottom : 150px;
	}
}

.bkgr {
	position : absolute;
	top : 0px;
	bottom : 0px;
	left : 0px;
	right : 0px;
	background-position : center;
	background-size : cover;
	z-index : -1;
}

.color-mask {
	background-color : #303190;
	opacity : 0.50;
	filter : alpha(opacity=50);
}

.mask-dark {
	opacity : 0.90;
	filter : alpha(opacity=90);
}

.page-article {
	padding-top : 70px;
	padding-bottom : 70px;
}

.page-article h2 {
	color : #303190;
}

.tag {
	font-weight : bold;
	color : #303190;
	opacity : 0.50;
	filter : alpha(opacity=50);
}

.footnote {
	font-size : 0.75em;
}

.td-0 {
	padding-right : 20px;
}

.banner-container {
	position : relative;
	width : 100%;
	background-size : cover;
	background-position : center;
	color : white;
}

.banner-container .tag {
	color : white;
}

.banner-container p {
	font-size : 1em;
	width : 50%;
}

.banner-container div + p {
	font-size : 1.2em;
}

.banner-content {
	position : relative;
}

.contact-bar {
	background-color : #303190;
	padding : 10px;
	width : 100%;
	color : white;
	text-align : center;
}

.contact-bar i {
	margin : 0px 15px;
}

.contact-bar span {
	margin : 0px 15px;
	display : inline-block;
}

.color-white {
	color : white;
}

.p-list p {
	margin : 2px 15px 2px 15px;
}

.border-left {
	border-left : 2px solid #303190;
	margin-top : 15px;
	margin-bottom : 15px;
	padding-top : 0px;
	padding-bottom : 0px;
}

.border-right {
	border-right : 2px solid #303190;
	margin-top : 15px;
	margin-bottom : 15px;
	padding-top : 0px;
	padding-bottom : 0px;
}

p.outline {
	font-size : 1.2em;
	width : 75%;
}

table.clients {
	color : #303190;
}

table.clients .td-0 {
	font-weight : bold;
}

.gray-bkgr {
	position : relative;
	width : 100%;
	background-color : #f1f1f1;
	color : #303190;
}

.card {
	position : relative;
	width : 100%;
	background-color : white;
	margin : 0px 0px 20px 0px;
	padding : 20px 30px;
	height : 203px;
}

.card .tag {
	opacity : 1.0;
	filter : alpha(opacity=100);
}

.photo {
	display : block;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 5px;
	max-width : 450px;
	margin : auto;
}

.team-member {
	padding : 10px;
	max-width : 220px;
	margin : auto;
	height : 320px;
	text-align : center;
}

.team-member img+p {
	font-weight : bold;
	margin-bottom : 0px;
}

.photo-tag {
	text-align : center;
	color : #303190;
}

.photo-tag-outline {
	font-size : 1.1em;
}

.thumbnail {
	cursor : pointer;
}

.thumbnail:hover {
    box-shadow: 0 0 2px 1px #303190;
}

.hidden-fullscreen {
	display : none;
	position : fixed;
	top : 0px;
	left : 0px;
	width : 100%;
	height : 100%;
	z-index : 9999;
}

#mask {
	background-color : black;
	opacity : 0.7;
	filter : alpha(opacity=70);
}

#slideshow, #photo-zoom-in {
	background-position : center;
	background-repeat : no-repeat;
	background-size : contain;
	color : white;
	text-shadow: 2px 2px 5px black;
}

#close {
	position : absolute;
	top : 0px;
	right : 0px;
	cursor : pointer;
}

#prev {
	position : absolute;
	top : 45px;
	top : calc(50% - 25px);
	left : 0px;
	cursor : pointer;
}

#next {
	position : absolute;
	top : 45%;
	top : calc(50% - 25px);
	right : 0px;
	cursor : pointer;
}

#slide-tag {
	position : absolute;
	left : 0px;
	bottom : 0px;
	width : 100%;
	font-weight : bold;
	font-size : 1em;
	text-align : center;
	padding : 10px;
}

.offer-img {
	float : left;
	width : 100px;
	height : 100px;
	background-size : cover;
	margin : 5px;
    border: 1px solid #ddd;
    border-radius: 4px;
}

.no-image {
	background-image : url("../img/noimage.png");
}

.fixed-container {
	position : fixed;
	top : 100px;
	width : 100%;
}

#form-message {
	display : none;
	width : 100%;
	max-width : 500px;
	margin : auto;
	text-align : center;
	z-index : 9999;
	background-color : white;
	padding : 20px;
	font-size : 0.8em;
    border: 1px solid;
}

.error {
	color : red;
	border-color : red;
}

.succes {
	color : green;
	border-color : green;
}

.bkgr-blue {
	background-color : #303190;
}

.video-responsive {
	overflow:hidden;
    padding-bottom:56.25%;
    position:relative;
    height:0;
}

.video-responsive iframe{
    left:0;
    top:0;
    height:100%;
    width:100%;
    position:absolute;
}

.info-article h1 {
	color : #303190;
	font-size : 2em;
}

.info-article h2 {
	color : #303190;
	font-size : 1em;
}
.info-article ul {
	margin : 0px;
}

.info-article li {
	font-size : 0.8em;
}