/*
	HTML5 Reset :: style.css
	----------------------------------------------------------
	We have learned much from/been inspired by/taken code where offered from:

	Eric Meyer					:: http://meyerweb.com
	HTML5 Doctor				:: http://html5doctor.com
	and the HTML5 Boilerplate	:: http://html5boilerplate.com

-------------------------------------------------------------------------------*/

/* Let's default this puppy out
-------------------------------------------------------------------------------*/

html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, menu, nav, section, time, mark, audio, video, details, summary {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font-weight: normal;
	vertical-align: baseline;
	background: transparent;
}

article, aside, figure, footer, header, nav, section, details, summary {display: block;}

/* Handle box-sizing while better addressing child elements:
   http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
html {
	box-sizing: border-box;
}

*,
*:before,
*:after {
	box-sizing: inherit;
}

/* consider resetting the default cursor: https://gist.github.com/murtaugh/5247154 */

/* Responsive images and other embedded objects */
/* if you don't have full control over `img` tags (if you have to overcome attributes), consider adding height: auto */
img,
object,
embed {max-width: 100%;}

/*
   Note: keeping IMG here will cause problems if you're using foreground images as sprites.
	In fact, it *will* cause problems with Google Maps' controls at small size.
	If this is the case for you, try uncommenting the following:

#map img {
		max-width: none;
}
*/

/* force a vertical scrollbar to prevent a jumpy page */
html {overflow-y: scroll;}

/* we use a lot of ULs that aren't bulleted.
	you'll have to restore the bullets within content,
	which is fine because they're probably customized anyway */
ul {list-style: none;}

blockquote, q {quotes: none;}

blockquote:before,
blockquote:after,
q:before,
q:after {content: ''; content: none;}

a {margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent;}

del {text-decoration: line-through;}

abbr[title], dfn[title] {border-bottom: 1px dotted #000; cursor: help;}

/* tables still need cellspacing="0" in the markup */
table {border-collapse: separate; border-spacing: 0;}
th {font-weight: bold; vertical-align: bottom;}
td {font-weight: normal; vertical-align: top;}

hr {display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0;}

input, select {vertical-align: middle;}

pre {
    white-space: pre; /* CSS2 */
    white-space: pre-wrap; /* CSS 2.1 */
    white-space: pre-line; /* CSS 3 (and 2.1 as well, actually) */
    word-wrap: break-word; /* IE */
}

input[type="radio"] {vertical-align: text-bottom;}
input[type="checkbox"] {vertical-align: bottom;}
.ie7 input[type="checkbox"] {vertical-align: baseline;}
.ie6 input {vertical-align: text-bottom;}

select, input, textarea {font: 99% sans-serif;}

table {font-size: inherit; font: 100%;}

small {font-size: 85%;}

strong {font-weight: bold;}

td, td img {vertical-align: top;}

/* Make sure sup and sub don't mess with your line-heights http://gist.github.com/413930 */
sub, sup {font-size: 75%; line-height: 0; position: relative;}
sup {top: -0.5em;}
sub {bottom: -0.25em;}

/* standardize any monospaced elements */
pre, code, kbd, samp {font-family: monospace, sans-serif;}

/* hand cursor on clickable elements */
.clickable,
label,
input[type=button],
input[type=submit],
input[type=file],
button {cursor: pointer;}

/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea {margin: 0;}

/* make buttons play nice in IE */
button,
input[type=button] {width: auto; overflow: visible;}

/* scale images in IE7 more attractively */
.ie7 img {-ms-interpolation-mode: bicubic;}

/* prevent BG image flicker upon hover
   (commented out as usage is rare, and the filter syntax messes with some pre-processors)
.ie6 html {filter: expression(document.execCommand("BackgroundImageCache", false, true));}
*/

/* let's clear some floats */
.clearfix:after { content: " "; display: block; clear: both; }

/*
     FILE ARCHIVED ON 08:18:27 Jan 09, 2019 AND RETRIEVED FROM THE
     INTERNET ARCHIVE ON 18:45:27 Feb 24, 2021.
     JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE.

     ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C.
     SECTION 108(a)(3)).
*/
/*
playback timings (ms):
  exclusion.robots.policy: 0.193
  CDXLines.iter: 22.013 (3)
  RedisCDXSource: 2.281
  captures_list: 482.226
  esindex: 0.017
  LoadShardBlock: 453.333 (3)
  PetaboxLoader3.resolve: 192.508 (2)
  PetaboxLoader3.datanode: 735.435 (5)
  exclusion.robots: 0.209
  load_resource: 595.364 (2)
*/
* {
	box-sizing: border-box;
}

html {
	overflow: hidden;
}

body {
	position: relative;
	font-family: Roboto, sans-serif;
	color: #1a1a1a;
	line-height: 1.5;
}

a,
a:visited {
	color: #5c92d0;
}

a:hover {
	color: #3f638c;
}

.group:after {
	content: "";
	display: table;
	clear: both;
}
.content {
	width: 1150px;
	position: relative;
	margin: 0 auto;
	padding: 0 25px;
}

header {
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
}

header .logo-small {
	float: left;
	display: block;
	margin-top: 1vh;
	transition: opacity .25s ease-in-out;
	display: none;
}

header .menu-btn {
	float: left;
	display: block;
	position: relative;
	top: 2.5vh;
}

header .logo-small,
header .menu-btn {
	transition: opacity .25s ease-in-out;
}

header .logo-small:hover,
header .menu-btn:hover {
	opacity: 0.85;
}

.flex-center {
	display: flex!important; 
	gap: 5px; 
	align-items: center; 
	justify-content: space-evenly;
}

.language-select {
  min-width: 70px;
  position: relative;
  top: 2.5vh;
  float: left;
  margin: -9px 10px 0 0;
  display: flex;
  align-items: center;
}

.language-select .dropdown-btn {
  width: 100%;
  padding: 5px 10px;
  display: block;
  font-size: 20px;
  line-height: 30px;
  color: #423b4c;
  text-decoration: none;
  border-radius: 3px 3px 0 0;
  border: 1px solid transparent;
  transition: background-color .15s ease-in-out;
}

.language-select .dropdown-btn.active {
  color: #423b4c;
  background-color: #fff;
  border: 1px solid #dbd7e0;
  border-bottom: 0;
}

.language-select .dropdown-btn .fa {
  padding-left: 4px;
  vertical-align: 1px;
  font-size: 14px;
}

.language-select .flag {
    width: 23px;
    margin-right: 3px;
    vertical-align: 0;
}

.language-select .dropdown-menu {
  width: 100%;
  position: absolute;
  top: 40px;
  right: 0;
  display: none;
  list-style: none;
  border: 1px solid rgba(66, 59, 76, 0.2);
  border-top: 0;
  border-radius: 0 0 3px 3px;
}

.language-select .dropdown-menu .menu-item > a {
  padding: 5px 10px;
  display: block;
  font-size: 20px;
  line-height: 30px;
  text-decoration: none;
  color: #555;
  background-color: #fff;
  transition: background-color .15s ease-in-out;
}

.language-select .dropdown-menu .menu-item:last-child > a {
  border-radius: 0 0 3px 3px;
}

.language-select .dropdown-btn.active:hover,.language-select .dropdown-menu .menu-item>a:hover {
  background-color: #ebe9ed;
}

.menu {
	width: 100%;
	height: 296px;
	position: fixed;
	top: -296px;
	left: 0;
	z-index: 1001;
	background-color: #5c92d0;
}

.menu .top {
	width: 100%;
	height: 84px;
	background-color: rgba(255, 255, 255, 0.15);
}

.menu .social {
	float: left;
}

.menu .top a {
	height: 84px;
	display: block;
	float: left;
	padding: 0 15px;
	line-height: 84px;
	font-size: 20px;
	color: #fff;
	transition: background-color .25s ease-in-out;
}

.menu .top a:hover {
	background-color: rgba(255, 255, 255, 0.1);
}

.menu .top .social a {
	text-decoration: none;
	font-size: 18px;
}


.menu a[data-close=menu] {
	display: block;
	float: right;
}

nav .item {
	width: 33.3333333%;
	height: 212px;
	display: block;
	float: left;
	text-align: center;
	text-decoration: none;
	color: #fff;
}

nav .item .text {
	width: 100%;
	display: block;
	font-size: 24px;
	text-transform: uppercase;
	line-height: 116px;
}

nav .item .icon {
	width: 28px;
	height: 28px;
	display: inline-block;
	transform: rotate(45deg);
	border: 4px solid #fff;
	animation: reverse-spin .25s;
}

nav .item:hover .icon {
	animation: spin .25s;
}

@keyframes spin {
	100% {
		transform:rotate(135deg);
	}
}
@keyframes reverse-spin {
	100% {
		transform:rotate(-45deg);
	}
}

.screens {
	position: relative;
	top: 0;
}

.screen {
	width: 100%;
	height: 100vh;
	position: relative;
	overflow: hidden;
}

.scroll-hint {
	width: 70px;
	height: 70px;
	position: fixed;
	bottom: 20px;
	left: calc(50% - 35px);
	z-index: 1000;
	transform: translate(-50%, -50%);
	font-size: 48px;
	color: #777;
	background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAMAAAD04JH5AAAAPFBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQLyYwAAAAE3RSTlMADQ46Ozw9SElKS0y5x+zz9Pj5WslQRAAAAQdJREFUeJztzlcOwkAQBFFyxjbM/e9KFsbrNGK3V6Cq/1a/yYSIiIiIiIiIiIiIfqRp8kF/q2LtG+yLedT/yk4uwf5sZUTBsjJzCa7/FlFw//cI7v/xBMvSzCV4/scSLF7/ZueN6z+OoPY/TlD7jyI4mLkEH/9mh68Bs6NL0Pg/zr4G+AQJ/l2CJP8OQaL/ULAV/48UJPwfJUj6P0KQ+H9QkPx/QCD4DwU78X+PQPTfKZD9dwiE/60C6X+LQPwfCtT/gUD+3yfQ/HcLVP9dAt1/u0D53ybQ/ocC9X9ToP//FOT4rwvy/L8Fuf5fgnz/D0HO/5sg7/9VkPmfiIiIiIiIiIiIiP6gC0vzP5P1npi3AAAAAElFTkSuQmCC');
	filter: grayscale(100%)  brightness(0%) invert(100%);
	background-size: contain;
	-moz-animation: bounce 2s infinite;
	-webkit-animation: bounce 2s infinite;
	animation: bounce 2s infinite;
	opacity: 0.75;
	cursor: pointer;
}

@-moz-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -moz-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -moz-transform: translateY(-30px);
    transform: translateY(-30px);
  }
  60% {
    -moz-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}

@-webkit-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }
  60% {
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}

@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -moz-transform: translateY(-30px);
    -ms-transform: translateY(-30px);
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }
  60% {
    -moz-transform: translateY(-15px);
    -ms-transform: translateY(-15px);
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}

.screen .home-background {
	width: 100%;
	height: 100vh;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	opacity: 1;
	background-image: url('../img/home.jpg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

/* used for parralax on home background */
/* .screen .home-background2 {
	width: 100%;
	height: 100vh;
	position: absolute;
	left: 0;
	z-index: 1;
	opacity: 1;
	background-image: url('../img/home2.png');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
} */

.screen .background {
	width: 100%;
	height: 50vh;
	position: absolute;
	left: 0;
	bottom: 13vh;
	z-index: 1;
	opacity: 0;
	background-image: url('../img/bg.png');
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: bottom center;
}

.screen .background-aux {
	width: 100%;
	height: 100vh;
	position: absolute;
	left: 0;
	bottom: -7vh;
	z-index: 1;
	opacity: 1;
	background-image: url('../img/bg_large.png');
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: bottom center;
}

.screen .dash {
	width: 0;
	height: 2px;
	position: absolute;
	top: 35%;
	z-index: 2;
	line-height: 2px;
	font-size: 2px;
	background-color: #5c92d0;
}

.screen .dash.left {
	left: 0;
}
.screen .dash.right {
	right: 0;
}

.screen .dash.left.full,
.screen .dash.right.full {
	width: 200vh !important;
}

.screen.home .logo {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	height: 29vh;
	position: absolute;
	top: 40%;
	left: 50%;
	z-index: 3;
	transform: translateX(-50%);
}

.screen.home .languages {
	height: 29vh;
	position: absolute;
	bottom: 8vh;
	top: 65%;
	left: 50%;
	z-index: 3;
	padding: 0 25px;
	transform: translateX(-50%);
	display: flex;
	gap: 100px;
	opacity: 1;
	align-items: center;
}

.languages a {
	padding: 5px;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-decoration: none;
	color: white;
	min-width: 50px;
}

.languages a img {
	width: 50px;
	height: auto;
}

.screen.home .logo .box {
	width: 100%;
	bottom: 8vh; 
	opacity: 1; 
	display: flex; 
	align-items: center;
	width: 29vh;
	position: relative;
}

.screen.home .logo .box img {
	height: 100%;
	filter: grayscale(100%)  brightness(0%) invert(100%);
}

.screen.home .logo .brand {
	float: right;
}

.screen.home .logo .text {
	height: 11vh;
	position: relative;
	float: right;
	bottom: 8vh;
	margin-top: 2vh;
	opacity: 1;
}

.screen.home .logo .text img {
	height: 100%;
	filter: grayscale(100%)  brightness(0%) invert(100%);
}

.screen.home .logo .motto {
	font-size: 4vh;
	position: relative;
	clear: right;
	bottom: -6vh;
	margin-top: 2vh;
	opacity: 1;
	font-family: "Abel", sans-serif;
	color: white;
	display: flex;
	justify-content: center;
}

.screen.home .logo .motto img {
	height: 100%;
}

.heading {
	position: relative;
	bottom: -12vh;
	z-index: 3;
	font-size: 4.25vh;
	font-weight: 300;
	text-transform: uppercase;
	color: #5c92d0;
}

.subheading {
	font-size: 24px;
	font-weight: 300;
	margin-bottom: 25px;
}

.body {
	position: relative;
	top: 12vh;
	z-index: 3;
}

.body.right .heading {
	float: right;
	margin-right: 70px;
}

.body.left .heading {
	float: left;
}

.body .text {
	width: 60%;
	top: 34vh;
	position: absolute;
	padding: 28px 40px;
	font-size: 18px;
	color: #fff;
	background-color: rgba(92, 146, 208, 0.7);
}

.portfolio {
	display: flex;
	flex-direction: column;
	gap: 12vh;
}

.portfolio .heading {
	top: 0vw;
}

.portfolio .body .text {
    width: 100%;
    top: 8vh!important;
    display: flex;
	flex-direction: column;
    padding: 28px 24px;
	background-color: rgba(92, 146, 208, 0.85);
}

.portfolio .body .text h2{
	text-transform: uppercase;
	color: #fff;
}

.portfolio .body .photo {
    height: 46vh;
}

.portfolio .body .panel {
    width: 50%;
    padding: 16px;
}

.portfolio .body .panel-content {
    max-height: 30vh;
	overflow: hidden;
}

.portfolio .body .panel-more {
    display: block;
	float: left;
	margin-top: 16px;
	padding: 8px 16px;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	text-transform: uppercase;
	border: 1px solid #fff;
}

.portfolio .body .panel-title {
	position: relative;
    margin-bottom: 24px;
    font-size: 24px;
    text-transform: uppercase;
}

.portfolio .body .panel-title:after {
	width: 100px;
	height: 1px;
	position: absolute;
	left: 0;
	bottom: -4px;
	content: "";
	font-size: 1px;
	line-height: 1px;
	border-bottom: 1px solid #fff;
}

.portfolio .body .panel-description p {
	margin-bottom: 16px;
	color: #F3F9FF;
}

.portfolio .body .panel-description strong {
    display: block;
	color: #fff;
}

.portfolio ul {
	list-style-type: square;
	list-style-position: outside;
	margin-left: 1.5em;
}

.logistics p {
	font-size: 24px;
}

.body.right .text {
	right: 0;
}

.body.left .text {
	left: 0;
}

.body .photo {
	height: 42vh;
	position: relative;
	bottom: -8vh;
	box-shadow: 0 5px 75px rgba(0, 0, 0, 0.45);
}

.logistics .body .photo {
	height: 60vh;
	width: auto;
	position: relative;
	bottom: -8vh;
	box-shadow: 0 5px 75px rgba(0, 0, 0, 0.45);
}

.logistics .heading {
	bottom: 5vh
}

.logistics .body .text {
	top: 12vh;
}

.body.left .photo.right {
	float: right;
	bottom: -36px;
}

.body.left .photo.left {
	float: left;
}

.sections {
	position: relative;
	z-index: 3;
	clear: both;
	top: 38vh;
}

.section {
	width: 28.3333333%;
	float: left;
	margin-right: 5%;
}

.section:last-child {
	margin: 0;
}

.section-heading {
	margin-bottom: 20px;
	font-size: 20px;
	text-transform: uppercase;
	color: #5c92d0;
}

.section-content {
	max-height: 95px;
	overflow: hidden;
	font-size: 16px;
}

.section-more {
	display: none;
	float: left;
	font-size: 16px;
	text-decoration: none;
	color: #777;
}

.modal {
	width: 500px;
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 1000;
	display: none;
	padding: 20px;
	background-color: #fff;
	transform: translate(-50%, -50%);
	box-shadow: 0 1px 150px rgba(0, 0, 0, 0.55);
}

.modal .close-btn {
	display: block;
	position: absolute;
	top: 20px;
	right: 20px;
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
}

.modal-heading {
	margin-bottom: 20px;
	padding-bottom: 15px;
	font-size: 20px;
	text-transform: uppercase;
	color: #5c92d0;
	border-bottom: 1px solid #ddd;
}

.modal-content {
	max-height: 90vh;
	overflow: auto;
}

.modal p {
	margin-bottom: 16px;
}

.modal ul {
	list-style-type: square;
	list-style-position: outside;
	margin-left: 1.5em;
}

.reference-logo {
	float: left;
	margin-right: 40px;
}

.reference-content {
	max-width: 400px;
	float: left;
}

.partners {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.partners-container {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	background-color: #ffffff;
	border: rgba(0, 0, 0, 0.45) dotted;
	padding: 5px;
}
  
.partners-container .row {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 15px;
}

.partners-container .row img {
	display: block;
    max-width: 200px;
    max-height: 90px;
    width: auto;
    height: auto;
}

.screen.contact .heading {
	position: relative;
}

.screen.contact .background {
	opacity: 1;
}

.contact-info {
    position: relative;
    top: 9.5vh;
    z-index: 2;
}

.contact-info .dash {
	width: 200vh;
	top: 164px;
}

.contact-info .dash.left {
	left: -50vh;
}

.contact-info .dash.right {
	left: 50vh;
}

.contact-box {
	width: 320px;
	height: auto;
	position: relative;
	top: 10vh;
	z-index: 2;
	float: left;
	margin-top: 20px;
	padding: 20px;
	background-color: #fff;
	border: 2px solid #5c92d0;
}

.contact-box .info,
.contact-details .info {
	margin-bottom: 18px;
	text-align: center;
}

.contact-box .info label,
.contact-details .info label {
	color: #808080;
	font-size: 16px;
}

.contact-box .info div,
.contact-details .info div {
	font-size: 16px;
}

.contact-details {
	position: relative;
    margin: 18px 0 0 70px;
}

.contact-details img {
	width: 700px;
	height: auto;
	position: relative;
	left: 50px;
	z-index: 3;
}

/* COOKIES CONSENT START */
.cookies-eu-banner {
	background-color: rgba(0, 0, 0, 0.3);
	color: #fff;
	padding: 6px;
	font-size: 13px;
	text-align: center;
	position: fixed;
	bottom: 0;
	width: 100%;
	z-index: 10;
}

.cookies-eu-banner.hidden {
	display: none;
}

.cookies-eu-banner a{
	color: #fff;
}
  
.cookies-eu-banner button {
	text-decoration: none;
	background: #222;
	color: #fff;
	border: 1px solid #000;
	cursor: pointer;
	padding: 4px 7px;
	margin: 2px 0;
	font-size: 13px;
	font-weight: 700;
	transition: background 0.07s, color 0.07s, border-color 0.07s;
	opacity: 1;
}
  
.cookies-eu-banner button:hover {
	background: #fff;
	color: #222;
}
/* COOKIES CONSENT END */

@media screen and (max-width: 1600px) {
	.body .text {
		width: 80%;
	}
}

@media screen and (max-width: 1200px) {
	html, body {
		overflow-x: hidden;
		overflow-y: auto;
	}

	.content {
		width: 100%;
	}

	.center {
		text-align: center;
	}

	.scroll-hint {
		display: none;
	}

	.screen {
		height: auto;
		overflow: visible;
	}

	.screen.home {
		height: 100vh;
	}

	.screen.home .logo {
		width: 100%;
		top: 20%;
		position: relative;
		left: 0;
		transform: none;
		flex-wrap: wrap;
	}

	.screen.home .logo .box {
		width: 60%;
		bottom: 0;
		opacity: 1;
		justify-content: center;
	}

	.screen.home .logo .brand {
		width: 100%;
	}

	.screen.home .logo .text {
		width: 100%;
		height: auto;
		bottom: 0;
		margin-top: 5vh;
		opacity: 1;
		text-align: center;
	}

	.screen.home .logo .text img {
		width: 60%;
		height: auto;
	}

	.screen.home .logo .motto {
		width: 100%;
		height: auto;
		bottom: 0;
		margin-top: 2vh;
		opacity: 1;
		text-align: center;
	}

	.screen.home .logo .motto img {
		width: 50%;
		height: auto;
	}

	.screen.home .languages {
		top: 80%;
	}

	.screen .background {
		bottom: 0;
		background-size: 150%;
		opacity: 1;
	}

	.body {
		top: 0;
		margin-top: 150px;
	}

	.portfolio {
		top: 0vh;
	}

	.body .heading {
		width: 100%;
		bottom: 0;
		float: none;
		text-align: center;
	}

	.body.left .heading {
		margin-left: 0;
	}

	.body.right .heading {
		margin-right: 0;
	}

	.body .photo {
		width: 100%;
		height: auto;
		bottom: 0;
		margin-top: 20px;
	}

	.body.left .photo.right {
		float: none;
		height: 65vh;
		bottom: 0vh;
	}
	
	.body.left .photo.left {
		float: none;
		bottom: 0vh;
	}

	.body .text {
		width: 90%;
		position: relative;
		margin-left: 5%;
		padding: 14px 20px;
	}

	.portfolio .body .text {
		width: 90%;
	}

	.body.left .text,
	.body.right .text {
		top: -100px;
	}

	.logistics .body.left .text,
	.logistics .body.right .text {
		top: 0px!important;
	}

	.sections {
		top: 0;
	}

	.section {
		width: 100%;
		margin: 0 0 25px;
		overflow: visible;
	}

	.section-content {
		max-height: none;
	}

	.reference-content {
		margin-top: 20px;
	}

	.contact-info,
	.contact-box,
	.contact-details {
		top: 0;
	}

	.contact-box {
		width: 100%;
	}

	.contact-details {
		margin-left: 0;
	}

	.screen.contact .background {
		display: none;
	}

	.contact-details img {
		position: static;
		left: 0px;
		z-index: 3;
	}

	.partners {
		top: 5VW!important;	
	}
}

@media screen and (max-width: 768px) {
	.menu {
		height: 220px;
	}

	nav .item {
		height: 136px;
	}

	nav .item .text {
		font-size: 18px;
		line-height: 84px;
	}

	nav .item .icon {
		width: 20px;
		height: 20px;
	}

	.screen.home .logo .text img {
		width: 80%;
	}

	.screen.home .logo .motto {
		font-size: 48px;
	}

	.screen.home .logo .motto img {
		width: 70%;
	}

	.screen .background {
		background-size: 200%;
	}

	.menu .top .social a {
		font-size: 14px;
	}

	.menu .social span {
		display: none;
	}

	.portfolio .body .photo {
		width: 100%;
		height: auto;
	}

	.portfolio .body .text {
		width: 100%;
		top: -10px;
		flex-direction: column;
		margin: 0;
	}

	.portfolio .body .panel-description p,
	.portfolio .body .panel-description strong {
		color: #1a1a1a;
	}


	.portfolio .body .panel {
		width: 100%;
		padding: 16px 0;
	}

	.portfolio .body .panel-title {
		font-size: 20px;
		color: #5c92d0;
	}

	.logistics .text {
		top: 0vh;
	}

	.section-content, .portfolio .body .panel-content {
		max-height: none;
	}

	.section-more, .panel-more {
		display: none !important;
	}

	.team {
		flex-direction: column;
	}

	.team .member {
		width: 100%;
		margin-bottom: 16px;
	}
}

@media screen and (max-width: 768px) {
	.screen.home .logo .motto {
		font-size: 36px;
	}
}
