html,body {padding: 0px;margin: 0px;font-family: 'sofia-pro', sans-serif;font-size: 14px;height:100%;width: 100%;text-align: center;background-color: white; font-weight: 300; -webkit-text-size-adjust: 100%; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
body{text-align: left;line-height: 28px; font-size: 20px; }

input[type=submit]{-webkit-appearance: none;-webkit-border-radius: 0px;-moz-border-radius: 0px;border-radius: 0px;}
textarea{font-size: 11px}
*:before, *:after { box-sizing: border-box; }
* { box-sizing: border-box; }
*:focus {outline: none;}

h1, h2, h3, h4, h5 {padding: 0px; margin: 0px; line-height: normal}
div{ padding: 0px;margin: 0px;}
a {	padding: 0px; margin: 0px; cursor: pointer }
img {border: 0px none;padding: 0px;	margin: 0px;}
b, strong, .bold {font-weight: bold;}
hr {border: none; border-bottom: 1px solid #cacaca; margin-bottom: 15px}
.clear {clear: both; overflow: auto}
.left {float: left}
.right {float: right}
p{font-size: 20px}
a{color: #3b3a3a}
h1{margin-bottom: 20px}

.clearfix { }
.clearfix:after { clear: both; content: "."; display: block; font-size: 0; height: 0; line-height: 0; visibility: hidden; }

.iframe iframe{position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
.iframe {position: relative;padding-bottom: 56.25%; padding-top: 25px;height: 0;}
.instagram-media{margin: 0px auto !important}

.container-wrapper{width: 100%; height: 100%;}
.container{width: 100%; height: 100%;}
.container-left-wrapper{float: left; width: 50%;height: 100%;}
.container-right-wrapper{float: left; width: 50%;height: 100%; background-color: #1e4387; padding: 00px 0px 0px 0px;position: fixed; top: 0px; right: 0px; }
.container-right{background-image: url('/images/banner3.jpg'); height: 100%; background-size: cover; background-repeat: no-repeat; background-position: top center}
.container-left{ height:100%}
.header-wrapper{position: relative;padding: 20px 0px; height: 94px; }
.header{width: 90%; max-width: 700px; margin: 0px auto 30px auto}
.menu-wrapper{position: absolute; top:40px; right: 30px}
.menu-wrapper ul{clear: both; overflow: auto;padding:0px; margin: 0px; list-style-type: none}
.menu-wrapper ul li{float: left; padding:0px; margin: 0px; padding-left: 30px}
.menu-wrapper ul li a {text-decoration: none; color: #f19306; font-weight: bold; font-size: 16px}

.block-wrapper{padding: 30px 0px 30px 0px; position: relative}
.block{width: 90%;max-width: 700px; margin: 0px auto 30px auto}
.block-wrapper h2{font-size: 24px; margin-bottom: 30px; margin-top: 10px}
.block-gray{background-color: #f2f2f2; color:#3b3a3a}
.block-wrapper p {line-height: 28px}
.block-services ul{float: left; width: 50%;padding:0px; margin: 0px; list-style-type: none}
.block-services ul li{padding:0px; margin: 0px; line-height: 40px; font-weight: bold}
.block-contact{}
.services{padding: 0px 0px; font-size: 25px; clear:both; overflow: auto}
.career{clear:both; overflow: auto}

.block-career ul{float: left; width: 50%;padding:0px; margin: 0px; list-style-type: none}
.block-career ul li{padding:0px; margin: 0px; }
.contact-left{float: left; width: 50%; }
 

#job-offer-list-wrapper { display: none; position: absolute; left: 0; top: 0; z-index: 1; background: #1e4387; width: 100%; height: 100%; padding: 20px; }
#job-offers-list { position: absolute; left: 0; top: 10%; width: 100%; max-height: 80%; overflow: hidden; }
#job-offers-list .job-offer { display: none; position: relative; padding: 20px 20px 0px 20px ; z-index: 1; color: #FFF; font-size: 14px }
#job-offers-list .job-offer a{color: white}
#job-offers-list .job-offer h2 { margin-top: 0; }
#job-offer-list-close { position: absolute; right: 10px; top: 10px; z-index: 2; color: #FFF; text-decoration: none; }
#job-offers-list li{font-size: 16px}
#job-offers-list p{font-size: 16px}

.job-offer-list-visible { display: block !important; }

#google-maps iframe { width: 100%; height: 400px; display: block; }
.container-right-visible { display: block !important; }

#mobile-menu-trigger { display: none; }
#mobile-menu-trigger img {fill: #f19306}
#mobile-menu-close { display: none; }

.logo a{width: 140px; height: 55px; display: inline-block; }
#topmenu .logo{text-align: center; display: none}
#topmenu .logo a{width: auto; height: 55px;  margin: 0px auto; text-decoration: none; color: white;}
.block-gallery{padding:0px}
.block-gallery ul{clear:both; overflow: auto; list-style-type: none;padding:0px; margin:0px;}
.block-gallery ul li{width: 33.33%; float: left; padding:0px; margin:0px; }

.block-gallery ul li:nth-child(3n+3){width: 33.33%}
.block-gallery ul li img {width: 100%;padding:0px; margin:0px;  display: block;}
.block-gallery img{width: 100%}
.block-gallery ul li a{display: block;padding:0px; margin:0px; text-decoration:none; overflow: hidden;height: auto}

#dsq-app517{display: none;}

#mobile-menu-close{display: none; width: 32px; height: 32px; position: absolute; right: 20px; top: 30px; background: url('/images/close.png') no-repeat}

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
	.logo a {
		
		background-size: 140px 55px; 
	}
	.coffee {
		background-image: url('/images/coffee@2x.png');
		background-size: 200px 200px; 
	}
	#topmenu .logo a{
	
	}
}

.coffee{background: url('/images/coffee.png'); width: 200px; height: 200px; display: inline-block; position: absolute; left: 60%; top:40px }

.contact-form {margin-top: 40px}
.contact-form ul{margin:0px; padding: 0px; list-style-type: none}
.contact-form ul li{margin:10px 0px 10px; padding: 0px; position: relative }
.contact-form ul li input,.contact-form ul li select, .contact-form ul li textarea{font-size: 18px; background-color: white; height: 47px; width: 100%; border: 1px solid #cacaca;border-radius: 4px;-moz-border-radius: 4px;-webkit-border-radius: 4px; padding: 0 20px;transition: border-color .25s ease-in-out; -moz-transition: border-color .25s ease-in-out; -webkit-transition: border-color .25s ease-in-out;-webkit-appearance:none;-moz-appearance: none;  text-indent: 0.01px;text-overflow: '';transition: background-color .25s ease-in-out; -moz-transition: background-color .25s ease-in-out; -webkit-transition: background-color .25s ease-in-out;}
.contact-form ul li label{color: #cacaca;display: inline-block; position: absolute; top: -12px; left: 10px; z-index: 1; background: #FFF; padding: 0 15px; font-weight: 600; font-size: 12px}
.contact-form ul li textarea {height: 80px; padding: 20px 20px; resize: none;}
.contact-form ul li input.submit{background-color: #fc9c05; border: 0px; color: white; font-weight: 700; font-size: 16px; letter-spacing: 1px; cursor: pointer}

.contact-form ul li:nth-child(2n+1){float: left; width: 50%; padding-right: 10px}
.contact-form ul li:nth-child(2n+2){float: left; width: 50%; padding-left: 10px}
.contact-form ul li:nth-child(2n+2) label{left: 30px}
.contact-form ul li:nth-child(5){width: 100%; padding-right: 0px}
.contact-form ul li:nth-child(6){width: 100%; padding-left: 0px; margin-top:0px}

.contact-form ul li input.submit:hover{background-color: #ff8400}
.error{border: 1px solid red !important; outline: 1px solid red !important}
.submit.failure{background-color: red !important; color: white !important}
.submit.success{background-color: green !important; color: white !important}

.home{background: #1e4387 no-repeat; background-size:70% auto; background-position-y: 50px}
.choose-country { color: white; font-size: 20px; font-weight: bold; text-align: center; padding-top: 20px}
.choose-country img{display: block; margin: 0px auto 20px auto; max-width: 95%; }
.choose-country a {margin: 0px 10px; display: inline-block; border: 2px solid white; -webkit-border-radius: 5px;-moz-border-radius: 5px;border-radius: 5px; color: white; text-decoration: none; padding: 10px; font-weight: bold;transition: background-color .25s ease-in-out; -moz-transition: background-color .25s ease-in-out; -webkit-transition: background-color .25s ease-in-out;}
.choose-country a:hover{background-color: white; color: #1e4387}

.portfolio-wrapper{clear:both; overflow: auto}
.portfolio-wrapper ul{width: 100%}
.portfolio-wrapper ul li{float: left; width: 33.33%; margin-bottom: 10px}
.portfolio-wrapper ul li a{display: block; width:100%;  background-position: top center; background-size: cover}
.portfolio-wrapper ul li a:before{padding-top: 30.03%;content: "";display: block;}
.portfolio-wrapper ul li:nth-child(3n+1){padding-right: 10px}
.portfolio-wrapper ul li:nth-child(3n+3){padding-left: 10px}
.portfolio-wrapper ul li:nth-child(3n+2){padding-left: 5px; padding-right: 5px}


#portfolio-list-wrapper { display: none; position: absolute; left: 0; top: 0; z-index: 1; background: #1e4387; width: 100%; height: 100%; }
#portfolio-list { position: relative; width: 100%;  overflow: auto; height: 100%; }
#portfolio-list-close { position: absolute; right: 10px; top: 10px; z-index: 2; color: #FFF; text-decoration: none; }

#portfolio-list .portfolio-element{display: none}
#portfolio-list .portfolio-element img{width: 100%}

.blog .container-right-wrapper{background-size: cover; padding: 0px; display: table}
.blog.blog-post .container-right-wrapper{background-size: cover; background-color: white; padding: 0px; display: table}
.blog.blog-post .block{width: 100%; max-width: 100%}
.blog .block{width: 90%;max-width: 700px; margin: 0px auto 30px auto}
.blog.blog-post .container-right{ background-color: rgba(0,0,0,0.30);} 
.blog .container-right{background-image: none; display: table-cell;  color: white; text-align: center; display: table-cell; vertical-align: middle;} 

.blog .container-right .post-title{font-size: 40px; font-weight: bold;  line-height: 60px; width: 90%; margin: 0px auto 20px auto}
.blog .container-right .post-date{font-size: 20px; font-weight: bold}
.blog .container-right .post-date span{display: none;}
.block-post.block-wrapper{padding: 30px 0px}
.block-post p{width: 90%; max-width: 700px; margin: 0px auto 30px auto}
.block-post p.code-wrapper{font-family: monospace;}
.block-post p.image-wrapper {width: 100%; max-width: 800px; margin: 0px auto 30px auto;text-align: center;}
.block-post .double-image { flex-columns: 2; display: flex; flex-direction: row; justify-content: flex-start; align-items: stretch; margin: 0px auto 30px auto; width: 90%; max-width: 700px; }
.block-post p img{width: 100%}
.block-post li img{width: 100%}
.block-post p img.no-resize{width: auto; max-width: 100%}
.block-post p.image-wrapper span{color: gray; font-size: 16px; }
.block-post h1{width: 90%;max-width: 700px; margin: 0px auto 30px auto}
.block-post h2{width: 90%;max-width: 700px; margin: 0px auto 30px auto; font-size: 28px}
.block-post h3{width: 90%;max-width: 700px; margin: 0px auto 30px auto; font-size: 24px}
.block-post h4{width: 90%;max-width: 700px; margin: 0px auto 30px auto; font-size: 20px}

.featured {color: green; font-weight: bold}
.block-post .table-of-contents ol{width: 90%;max-width: 700px; margin: 0px auto 30px auto; counter-reset: item; padding-left: 10px; }
.block-post .table-of-contents ol li{margin-bottom: 10px; display: block}
.block-post .table-of-contents ol li:before{content: counters(item, ".") " "; counter-increment: item}

.block-post ul{width: 90%;max-width: 700px; margin: 0px auto 30px auto}
.block-post ul li{margin-bottom: 10px}

.block-post ol{width: 90%;max-width: 700px; margin: 0px auto 30px auto}
.block-post ol li{margin-bottom: 10px}

.block-post blockquote{position: relative}
.block-post blockquote p{font-family: "expo-serif-pro"; font-size: 28px; font-weight: 400; font-style: italic; line-height: 34px;color: gray}
.block-post blockquote:before{content:"“"; position: absolute; top: 0px;  font-size: 100px; color: gray; width: 100%;max-width: 800px; left: 0; right: 0; margin-left: auto; margin-right: auto; }
.blog .localizer{width: 100%; max-width: 700px; margin: 0px auto 30px auto; clear: both; overflow: auto}
.blog.blog-post .localizer{width: 90%;}
.blog .localizer ul{list-style-type:none; margin:0px; padding:0px}
.blog .localizer ul li{display: inline; margin:0px; padding:0px;font-size: 18px; margin-right: 5px}
.blog .localizer ul li:after{content:"/"; display:inline-block; margin-left: 5px}
.blog .localizer ul li:last-child:after{display: none}
.blog .localizer ul li a{}
.blog .post-author{margin-top: 20px}
.blog .post-author img{ width: 100px; border-radius: 50px; vertical-align:middle}
.blog .description{font-size: 16px; font-weight: normal; display: block ; margin-bottom: 15px }
.post-image{background-size: cover; width: 100%; height: 150px; display: block; margin-bottom: 10px}
.post-box-wrapper{width: 50%; float:left; height: 280px; overflow: hidden}
.post-box-wrapper:nth-of-type(2n+1){padding-right: 15px}
.post-box-wrapper:nth-of-type(2n+2){padding-left: 15px}
.post-box-wrapper span{display: block; font-size: 14px; color: gray}
.post-title{ text-decoration: none;}
.progress-wrapper{width: 50%; position: fixed; height: 5px; background-color: white;top: 0px; left:0px;z-index: 1000}
.progress{background-color:#1e4387; position: absolute; top: 0px; left:0px; height: 7px; z-index: 1000}
.block-post #disqus_thread{width: 90%; max-width: 700px; margin: 0px auto 30px auto}

.video-wrapper {position: relative;padding-bottom: 56.25%; padding-top: 25px; height: 0;}
.video-wrapper.standard{padding-bottom: 70%}
.video-wrapper iframe {position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
.video-wrapper video {position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
p.video-wrapper {width: 100%; max-width: 800px; margin: 0px auto 30px auto}

.language-switch{position: absolute; top:-30px; right: 0px; font-size: 16px; font-weight: bold;color: gray}
.language-switch a{text-decoration: none; color: gray}
.language-switch a:hover{color:#1e4387}
.error404 h1{margin-top: 100px}
.error404 .fab {font-size: 30px; display: inline-block; margin-right: 10px; margin-top: 10px}
.block-hello{padding: 80px 0px 50px 0px}
.block-hello span{display: block; font-weight: bold; line-height: normal;}
.block-hello span.size74{font-size: 74px}
.block-hello span.size50{font-size: 50px}

.arrow-wrapper{margin-top: 50px; height: 100px}
.arrow a{text-decoration: none; color: gray; display: inline-block; transform: rotate(90deg); border: 3px solid gray; text-align: center; height: 50px; width: 50px; font-size: 46px; margin-bottom: -22px}
.arrow{text-align: center; }

.training-header-wrapper {border-bottom: 5px solid #1e4387; clear: both; overflow: auto; margin-bottom: 30px}
.training-header {width: 90%; max-width: 700px; margin: 0px auto 0px auto}
.training-header span{display: block; }
.training-header-left{width: 50%; float: left; padding-right: 10px; position: relative}
.training-header-right{width: 50%; float: left; padding-left: 10px}
.training-header h1{font-size: 26px; margin: 0px 0px 0px 0px; display: inline}
.training-post h2{ color: #1e4387}
.training-post h2 span{border-bottom: 5px solid #1e4387}
.training-post h3{position: relative; margin-bottom: 40px}
.training-post h3 span{position: absolute; bottom: -24px; left: 0px; color: gray; font-size: 18px; font-style: italic}


.training-header label{font-size: 22px; display: block; color: #393939; margin: 5px 0px 20px 0px}
.training-header-right img{width: 100%; display: block}
.btn{text-decoration: none; text-align: center; display: block; margin: 0px auto; background-color: #fc9c05; border: 0px; color: white;font-weight: 700;font-size: 16px; letter-spacing: 1px; cursor: pointer; height: 47px; border-radius: 4px !important; -moz-border-radius: 4px !important; -webkit-border-radius: 4px !important; line-height: 47px}
.btn:hover{background-color: #ff8400}
.training-header-left a.btn {margin-top: 20px}
.training-form-header{background-color: #1e4387; color: white; font-size: 26px; }
.training-form-header h2 {padding: 10px 0px 20px 0px; border-bottom: 0px; color: white}
.training-form-header h2 span{display: block; font-size: 20px}

.training-form {margin: 40px auto 0px auto;width: 90%; max-width: 500px;}
.training-form ul{margin:0px; padding: 0px; list-style-type: none; max-width: 100%; width: 100%}
.training-form ul li{margin:10px 0px 20px; padding: 0px; position: relative }

.training-form ul li input,.contact-form ul li select, .contact-form ul li textarea{font-size: 18px; background-color: white; height: 47px; width: 100%; border: 1px solid #cacaca;border-radius: 4px;-moz-border-radius: 4px;-webkit-border-radius: 4px; padding: 0 20px;transition: border-color .25s ease-in-out; -moz-transition: border-color .25s ease-in-out; -webkit-transition: border-color .25s ease-in-out;-webkit-appearance:none;-moz-appearance: none;  text-indent: 0.01px;text-overflow: '';transition: background-color .25s ease-in-out; -moz-transition: background-color .25s ease-in-out; -webkit-transition: background-color .25s ease-in-out;}
.training-form ul li label{color: #cacaca;display: inline-block; position: absolute; top: -12px; left: 10px; z-index: 1; background: #FFF; padding: 0 15px; font-weight: 600; font-size: 12px}
.training-form ul li textarea {height: 80px; padding: 20px 20px 20px 20px; resize: none;border: 1px solid #cacaca;border-radius: 4px;-moz-border-radius: 4px;-webkit-border-radius: 4px;  width: 100%; font-size: 18px}
.training-form ul li input.submit{background-color: #fc9c05; border: 0px; color: white; font-weight: 700; font-size: 16px; letter-spacing: 1px; cursor: pointer}
.training-form .btn {margin-top: 20px}
.form-invoice{display: none}

.training-box-wrapper {width: 50%; float: left; position: relative}
.training-box:nth-child(2n+1){padding-right: 10px}
.training-box:nth-child(2n+2){padding-left: 10px}
.training-box-wrapper img.person {display: block; width: 100%}

.training-person {position: relative;  line-height: 22px}
.training-person a{ color: white; text-decoration:none; font-weight: bold; background-color: #1e4387; height: 50px; display: flex; align-items: center; justify-content: left; text-align: left; padding-left: 20px}
.training-details {position: relative}
.training-details .name {display: block; font-weight: bold; font-size: 28px; display: block; text-align: left; padding: 10px 70px 0px 0px;}
.training-details .date {text-align: left; display: block;  padding-left: 0px; margin-top: 5px}
.training-details img.service {display: block; width: 50px; height: 50px; position: absolute; top: 10px; right: 10px; z-index: 10}
.payment-info{text-align: center; font-size: 14px; padding-top: 20px}
.text-center{text-align: center}
.training-post .break img{height: 30px; vertical-align: bottom; margin-right: 10px}

.author-wrapper{width: 100%; background-color: #f3f3f3; clear: both; overflow: auto;}
.author-wrapper .author-box{width: 100%; max-width: 700px; margin: 30px auto 30px auto; clear: both; overflow: hidden; position: relative; min-height: 250px;}
.author-wrapper .author-image{position: absolute; left: 0px}
.author-wrapper .author-image img{width: 250px;}
.author-wrapper .author-content{padding-left: 275px; }
.author-wrapper .author-name {font-size: 28px; font-weight: bold}
.author-wrapper .author-bio {font-size: 18px; }
.author-wrapper .author-social {margin-bottom: 10px}
.author-wrapper .author-social img{height: 25px}
.author-wrapper .author-social a {text-decoration :none}
table{border-collapse: collapse; width: 90%;max-width: 700px; margin: 0px auto 30px auto}
table,td,th {border: 1px solid black;}
td{padding: 3px 5px}

@media only screen and (min-width: 1100px) and (max-width: 1300px)
{
.menu-wrapper ul li{padding-left: 10px}
}

@media only screen and (max-width: 1100px)
{
	.container-left-wrapper { width: 100%; }
	.container-right-wrapper { width: 100%; display: none  }
	#mobile-menu-trigger { display: block; position: absolute; right: 20px; top: 32px; }
	#topmenu { display: none; position: fixed; right: 0px; top: 0; width: 100%; z-index: 3; background: rgba(252, 156, 5, 0.9); padding: 20px;height: 100%;  }
	#topmenu .logo{display: block}
	#topmenu ul{overflow: hidden; margin-top: 50px}
	#topmenu li { display: block; width: 100%; padding-left: 0;  letter-spacing: 1px; text-align: center; line-height: 40px  }
	#topmenu li a{color: white; font-size: 20px;}
	#topmenu li:not(:last-child) { margin-bottom: 0px; }

	#mobile-menu-close { display: inline-block; text-decoration: none; text-align: left; }
	.language-switch{top: auto; right: auto; width: 100%; bottom: 20px; text-align: center; left: 0px; color: white}
	.language-switch a{color: white;}
	.language-switch a:hover{color: white;}


	.mobile-menu-opened #topmenu{display: block;}
	.blog-page .container-right-wrapper{display: none}
	.progress-wrapper{width: 100%}
	.blog .container-right-wrapper{display: none !important}
	
	
}
@media only screen and (max-width: 720px) {
 						
	.training-header-left{width: 100%; float: none; padding-right: 0px; margin-bottom: 20px }
	.training-header-right{width: 100%; float: none; padding-left: 0px; margin-bottom: 20px}
	.training-box-wrapper {width: 100%; float: left; position: relative}
	.training-box:nth-child(2n+1){padding-right: 0px}
	.training-box:nth-child(2n+2){padding-left: 0px}
						
}
@media only screen and (max-width: 700px)
{
	.block-services ul { width: 100%; }
	.block-career ul { width: 100%; }
	.contact-left { width: 100%; margin-bottom: 20px; }
	h1{ font-size: 26px}
	.block-services ul li{font-size: 20px}
	.block-hello span.size74{font-size: 30px}
	.block-hello span.size50{font-size: 38px}
	
}

@media only screen and (max-width: 480px){
	.coffee{display: none }
	.contact-form ul li{width: 100%}
	.contact-form ul li label{left: 10px !important; }
	.contact-form ul li:nth-child(2n+1){width: 100%; padding-right: 0px}
	.contact-form ul li:nth-child(2n+2){width: 100%; padding-left: 0px}
	.block-gallery ul li{width: 50%}
	.block-gallery ul li:nth-child(3n+3){width: 50%}
	.choose-country a{display: block; width: 100%; max-width: 160px; margin: 20px auto 20px auto;}
	.post-box-wrapper{width: 100%}
	.post-box-wrapper:nth-of-type(2n+1){padding-right: 0px}
	.post-box-wrapper:nth-of-type(2n+2){padding-left: 0px}
	.block-post blockquote:before{left: -35px}
	.block-post blockquote p{font-size: 24px}
	
	
}



