/*
Theme Name: Valkenberg Techniek Theme
Version: 1.0
Author: Fanatiek media
Author URI: https://fanatiekmedia.nl/
*/

/***************************
          FONTS
***************************/

@font-face {
	font-display: swap; 
	font-family: 'Arimo-Font';
	font-style: normal;
	font-weight: 400;
	src: url('./assets/fonts/arimo-v35-latin-regular.woff2') format('woff2');
}

@font-face {
	font-display: swap;
	font-family: 'Arimo-Font';
	font-style: normal;
	font-weight: 700;
	src: url('../fonts/arimo-v35-latin-700.woff2') format('woff2'); 
}

/***************************
          COLORS
***************************/

:root {
	--white: #fff;
	--black: #000;
	--xlightblue: #EAEBED;
	--lightblue: #cadbea;
	--darkblue: #2A3B49;
	--darkblue-hover: #182732;
	--orange: #FF6D00;
	--orange-hover: #e05f00;
	--red: #c22;
	--green: #4a2;
}

/***************************
          GENERAL
***************************/

body {
	width: 100%;
	background-color: var(--white);
    font-family: 'Arimo-Font', sans-serif;
	font-size: 17px;
	color: var(--darkblue);
}
	
body.show-nav {
	overflow: hidden;
}
	

html {
	font-size: 100%;
	width: 100%;
}

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

a {
	color: var(--darkblue);
	text-decoration: underline;
	transition: all 0.3s ease;
}

a:hover {
	color: var(--darkblue);
	text-decoration: none;
}

p {
	margin: 0 0 20px;
	line-height: 175%;
}

ul, ol {
	margin: 0 0 20px;
}

li {
	line-height: 175%;
}

.text-center {
	text-align: center;
}

input, textarea {
    padding: 10px 15px;	
    width: 100%;
    font-family: 'Arimo-Font', sans-serif;
	border: 1px solid var(--darkblue);
	line-height: 120%;
	border-radius: 5px;
	background-color: var(--white);  
	color: var(--darkblue);
	font-size: 18px;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0px 1000px var(--white) inset !important;
 	color: var(--darkblue) !important;
}

input:focus,
textarea:focus {
	outline: none;
	border-color: var(--darkblue-hover);
}

input.small {
	width: 120px;
}

input[type="checkbox"],
input[type="radio"] {
	width: auto;
}

input[type="radio"],
input[type="checkbox"] {
	-webkit-appearance: none;
	width: 20px;
	height: 20px;
	border: 1px solid var(--darkblue);
	background-color: var(--white);
	border-radius: 5px;
	cursor: pointer;
	box-shadow: none;
}

input[type="checkbox"]:focus {
	border-color: var(--darkblue-hover);
}

input[type="radio"]:checked,
input[type="checkbox"]:checked {
	background-color: var(--white);
    background-image: url('./assets/images/checkmark-darkblue.svg');
    background-size: 12px 11px;
    background-repeat: no-repeat;
    background-position: center center;
    border-color: var(--darkblue);
}

input[type="radio"] {
	border-radius: 10px;
}

select {
	border: 0px;
	height: 42px;
	padding: 0px 30px 0px 15px;
	width: 100%;
    font-family: 'Arimo-Font', sans-serif;
	border: 1px solid var(--darkblue);
	color: var(--darkblue);
	border-radius: 5px;
	font-size: 18px;
	line-height: 100%;
	-webkit-appearance: none; 
	appearance: none;
	background-image: url('./assets/images/dropdown.svg');
	background-position: right 10px center;
	background-repeat: no-repeat;
	background-size: 12px 8px;
}

select:focus {
	outline: none;
}

textarea {
	height: 150px;
}

input[type="number"] {
	width: 100px;
}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
	color: var(--darkblue);
	font-weight: 400;
	opacity: .5;
}
::-moz-placeholder { /* Firefox 19+ */
	color: var(--darkblue);
	font-weight: 400;
	opacity: .5;
}
:-ms-input-placeholder { /* IE 10+ */
	color: var(--darkblue);
	opacity: .5;
}
:-moz-placeholder { /* Firefox 18- */
	color: var(--darkblue);
	opacity: .5;
}

.btn,
.button,
.inline-btn a {
	background-color: var(--orange);
	background-image: url('./assets/images/arrow-right-white.svg');
	background-size: 18px 12px;
	background-repeat: no-repeat;
	background-position: right 15px center;
	color: var(--white);
	display: inline-block;
	padding: 9px 50px 9px 30px;
	font-size: 16px;
	min-width: 210px;
	position: relative;
	border: 2px solid var(--orange);
	border-radius: 0px;
	cursor: pointer;
	line-height: 120%;
	margin: 0;
	text-align: center;
	font-weight: bold;
	text-decoration: none;
	transition: all .3s ease;
	width: auto;
}

.btn:hover,
.btn:focus,
.button:hover,
.button:focus,
.inline-btn a:hover,
.inline-btn a:focus {
	background-position: right 10px center;
	background-color: var(--orange-hover);
	transition: all .3s;
	color: var(--white);
	border: 2px solid var(--orange-hover);
}

.btn.darkblue {
	background-color: var(--darkblue);
	border-color: var(--darkblue);	
	color: var(--white);
}

.btn.darkblue:hover,
.btn.darkblue:focus {
	background-color: var(--darkblue-hover);
	border-color: var(--darkblue-hover);	
	color: var(--white);	
}

.btn.white {
	background-color: var(--white);
	background-image: url('./assets/images/arrow-right-darkblue.svg');
	border-color: var(--white);	
	color: var(--darkblue);
}

.btn.white:hover,
.btn.white:focus {
	background-color: var(--xlightblue);
	border-color: var(--xlightblue);	
	color: var(--darkblue);	
}

.inline-link {
	color: var(--darkblue);
	background-image: url('./assets/images/arrow-right-orange.svg');
	background-repeat: no-repeat;
	background-size: 22px 15px;
	background-position: right 5px center;
	font-weight: 18px;
	font-weight: 600;
	padding: 3px 35px 3px 0;
	text-decoration: none;
	display: inline-block;
	margin: 0 10px 0 0;
	transition: all 0.3s ease;
}

.inline-link:hover,
.inline-link:focus {
	color: var(--darkblue-hover);
	background-position: right 0px center;
}

.inline-link.white {
	color: var(--white);
	background-image: url('./assets/images/arrow-right-orange.svg');	
}

.inline-link.white:hover {
	color: var(--xlightblue);
}

.container {
	max-width: 1440px;
	margin: 0 auto;
    padding: 0 20px;	
}

.container.mediumlarge {
	max-width: 1320px;
}

.container.medium {
	max-width: 1160px;
}

.container.small {
	max-width: 1040px;
}

.container.xsmall {
	max-width: 720px;
}

@media only screen and (min-width:768px) { 
	
	body {
		font-size: 18px;
	}
	
	.container {
		padding: 0 30px;
	}
	
}

@media only screen and (min-width:1024px) {
	

	.btn,
	.button,
	.inline-btn a {
		font-size: 18px;
	}
	
	.container {
		padding: 0 40px;
	}
	
}

@media only screen and (min-width:1024px) {
	
	body.show-nav {
		overflow: inherit;
	}
	
}

@media only screen and (min-width:1280px) {
	
	.container {
		padding: 0 50px;
	}
	
}

/* stop stacking issues */
.clearfix::after {
  content: " ";
  display: table;
}
.clearfix::after {
  clear: both;
}

/* use box-sizing: border-box */
*, *:before, *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/***************************
		   COLUMNS
***************************/

.row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -15px;
    margin-right: -15px;
}

.row.align-center {
	align-items: center;
}

.small-padding.row {
	margin-left: -5px;
	margin-right: -5px;
}

.no-padding.row {
	margin-left: 0px;
	margin-right: 0px;
}

.column {
	display: block;
	width: 100%;
	float: left;
	padding-left: 15px;
	padding-right: 15px;
}

.small-padding.row .column {
	padding-left: 5px;
	padding-right: 5px;
}

.no-padding.row .column {
	padding-left: 0px;
	padding-right: 0px;
}

.small-1-2 {
	width: 50%;
}

.flex-none {
	flex: none;
}

.row.align-middle {
	align-items: center;
}

.row.align-bottom {
	align-items: flex-end;
}

.row.justify-center {
	justify-content: center;
}

.row.justify-space {
	justify-content: space-between;
}

.row.small-reverse {
	flex-direction: column-reverse;
}

@media only screen and (min-width:768px) { 
	
	.row.small-reverse {
		flex-direction: row-reverse;
	}
	
	.row.medium-reverse {
		flex-direction: row-reverse;
	}
	
	.row.medium-noreverse {
		flex-direction: row;
	}
	
	.row.medium-nowrap {
		flex-wrap: nowrap;
	}
	
	.row.medium-padding {
		margin-left: -20px;
		margin-right: -20px;
	}
		
	.row.medium-padding .column {
		padding-left: 20px;
		padding-right: 20px;
	}
	
	.row.large-padding {
		margin-left: -20px;
		margin-right: -20px;
	}
		
	.row.large-padding .column {
		padding-left: 20px;
		padding-right: 20px;
	}
	
	.row.xlarge-padding {
		margin-left: -30px;
		margin-right: -30px;
	}
		
	.row.xlarge-padding .column {
		padding-left: 30px;
		padding-right: 30px;
	}
	
	.medium-auto {
		width: auto;
	}
	
	.medium-1-5 {
		width: 20%;
	}

	.medium-1-4 {
		width: 25%;
	}
	
	.medium-3-10 {
		width: 30%;
	}
	
	.medium-1-3 {
		width: 33.33334%;
	}
	
	.medium-2-5 {
		width: 40%;
	}
	
	.medium-1-2 {
		width: 50%;
	}
	
	.medium-3-5 {
		width: 60%;
	}
	
	.medium-2-3 {
		width: 66.66666%;
	}
	
	.medium-3-4 {
		width: 75%;
	}
	
	.medium-auto {
		width: auto;
	}

}

@media only screen and (min-width:1024px) {
	
	.row.large-padding {
		margin-left: -30px;
		margin-right: -30px;
	}
		
	.row.large-padding .column {
		padding-left: 30px;
		padding-right: 30px;
	}
	
	.row.l-large-padding {
		margin-left: -30px;
		margin-right: -30px;
	}
		
	.row.l-large-padding .column {
		padding-left: 30px;
		padding-right: 30px;
	}
	
	
	.row.l-xlarge-padding {
		margin-left: -35px;
		margin-right: -35px;
	}
		
	.row.l-xlarge-padding .column {
		padding-left: 35px;
		padding-right: 35px;
	}
	
	.row.large-reverse {
		flex-direction: row-reverse;
	}
	
	.large-1-5 {
		width: 20%;
	}
	
	.large-1-4 {
		width: 25%;
	}
	
	.large-3-10 {
		width: 30%;
	}

	.large-1-3 {
		width: 33.33334%;
	}
	
	.large-35 {
		width: 35%;
	}
	
	.large-2-5 {
		width: 40%;
	}
	
	.large-45 {
		width: 45%;
	}
	
	.large-1-2 {
		width: 50%;
	}
	
	.large-55 {
		width: 55%;
	}
	
	.large-3-5 {
		width: 60%;
	}
	
	.large-2-3 {
		width: 66.66666%;
	}
	
	.large-3-4 {
		width: 75%;
	}
	
}

@media only screen and (min-width:1280px) {
	
	.row.xl-large-padding {
		margin-left: -30px;
		margin-right: -30px;
	}
		
	.row.xl-large-padding .column {
		padding-left: 30px;
		padding-right: 30px;
	}	
	
	.row.xl-xlarge-padding {
		margin-left: -50px;
		margin-right: -50px;
	}
		
	.row.xl-xlarge-padding .column {
		padding-left: 50px;
		padding-right: 50px;
	}	
	
	.xlarge-1-5 {
		width: 20%;
	}
	
	.xlarge-1-4 {
		width: 25%;
	}
	
	.xlarge-35 {
		width: 35%;
	}
	
	.xlarge-2-5 {
		width: 40%;
	}
	
	.xlarge-3-5 {
		width: 60%;
	}
	
}

/***************************
		   HEADINGS
***************************/

h1, h2, h3, h4, h5 {
	margin: 0 0 20px 0;
	padding: 0;
	font-weight: bold;
}

h1 {
	font-size: 36px;
	text-transform: uppercase;
}


h2 {
	font-size: 24px;
	text-transform: uppercase;
}


h2.block-title {
	margin: 0 0 30px;
}

h3 {
	font-size: 19px;
	color: var(--orange);
}


h4 {
	font-size: 19px;
}

@media only screen and (min-width:768px) {
	
	h1 {
		font-size: 46px;
	}
	
	h1.with-dot::after {
		width: 10px;
		height: 10px;
	}
	
	h2 {
		font-size: 28px;
	}
	
	h2.block-title {
		margin: 0 0 40px;
	}

	h3 {
		font-size: 20px;
	}
	
	h4 {
		font-size: 20px;
	}
	
}


@media only screen and (min-width:1024px) {
	
	h1 {
		font-size: 54px;
	}
	 
	h2 {
		font-size: 30px;
	}
	
	h3 {
		font-size: 22px;
	}
	
	h4 {
		font-size: 22px;
	}
	
}

/***************************
    HEADER & NAVIGATION
***************************/

.header {
	position: relative;
	background: var(--white);
	height: 70px;
}

.header-main {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 10;
	transition: all 0.3s linear;
	z-index: 999;
}

.header-main .container {
	padding: 0;
	position: relative;
}

.header-logo {
	position: relative;
	display: block;
	width: 100%;
	text-align: left;
	transition: all 0.3s linear;
	z-index: 999;
	padding: 20px 20px 20px 15px;
	height: 70px;
	background-color: var(--white);
	box-shadow: 0 3px 10px rgba(0,0,0,0.1);
}

.header-logo a {
	display: inline-block;
	width: 230px;
	transition: all 0.3s linear;
}

.header-logo a img {
	display: block;
    width: 100%;
}

.show-nav .header-main {
	height: 100vh;
}

.header-nav {
	padding: 0;
	display: block;
	position: static;
}

.header-nav .toggle-nav {
    background-color: transparent;
    display: block;
    position: absolute;
    border: 0px;
    top: 0;
    right: 0px;
    color: var(--darkblue);
    font-size: 11px;
	text-transform: uppercase;
	font-weight: 600;
    width: 80px;
    height: 70px;
    outline: 0;
    margin: 0;
    padding: 32px 0 0;
    text-align: center;
    z-index: 9999;
    transition: all 0.3s linear;
}

.header-nav .toggle-nav:focus {
	outline: none;
}

.header-nav .toggle-nav span {
	position: absolute;
	width: 32px;
	height: 4px;
	background-color: var(--darkblue);
	top: 19px;
	left: 24px;
	transition: all 0.3s ease;
}

.scroll .header-nav .toggle-nav span {
	background-color: var(--darkblue);
}

.show-nav .header-nav .toggle-nav {
	background-color: var(--orange);
	color: var(--white);
}

.show-nav .header-nav .toggle-nav span {
	background-color: var(--white);
}

.header-nav .toggle-nav span:nth-child(2) {
	top: 27px;
}

.header-nav .toggle-nav span:nth-child(3) {
	top: 35px;
}

.show-nav .header-nav .toggle-nav span:nth-child(1) {
	transform: rotate(-45deg);
	top: 24px;
}

.show-nav .header-nav .toggle-nav span:nth-child(2) {
	transform: scale(0,0);
}

.show-nav .header-nav .toggle-nav span:nth-child(3) {
	transform: rotate(45deg);
	top: 24px;
}

.header-nav .site-menu {
	display: flex;
	align-items: center;
	width: 100%;
	height: 100vh;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	background-color: transparent;
	margin: 0;
    padding: 20px 70px 170px 30px;
	list-style-type: none;
    transition: all 0.3s linear;
    z-index: 999;    
    background: var(--darkblue);
	overflow-y: auto;
	visibility: visible;
	opacity: 1;
	transform: translate(0, -100%);
}

.show-nav .header-nav .site-menu {
    visibility: visible;
    opacity: 1;
    transform: translate(0,0);
}

.header-nav .site-menu .menu {
	margin: 0;
	padding: 0;
    list-style-type: none;
	width: 100%;
}

.header-nav .site-menu .menu li {
	line-height: 100%;
	position: relative;
	text-align: center;
}

.header-nav .site-menu .menu li .menu-toggle {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 38px;
	cursor: pointer;
}

.header-nav .site-menu .menu li .menu-toggle:before {
	content: '';
	width: 16px;
	height: 2px;
	background-color: var(--orange);
	top: calc(50% - 1px);
	right: 12px;
	position: absolute;
	transition: all 0.3s ease;
}

.header-nav .site-menu .menu li .menu-toggle:after {
	content: '';
	width: 2px;
	height: 16px;
	background-color: var(--orange);
	top: 11px;
	right: 19px;
	position: absolute;
	transition: all 0.3s ease;	
}

.header-nav .site-menu .menu li.active .menu-toggle {
	width: 38px;
}

.header-nav .site-menu .menu li.active .menu-toggle:before {
	transform: rotate(-180deg);
}

.header-nav .site-menu .menu li.active .menu-toggle:after {
	transform: scale(0,0);
	opacity: 0;
}

.header-nav .site-menu .menu li a {
	font-weight: 400;
	color: var(--white);
	display: block;
	padding: 9px 0;
	line-height: 110%;
	font-size: 20px;
	text-decoration: none;
	position: relative;
	font-weight: bold;
	margin: 4px 0;
	transition: all 0.3s linear;
}

.header-nav .site-menu .menu .current-menu-item > a,
.header-nav .site-menu .menu .current-page-parent > a,
.header-nav .site-menu .menu li.menu-active > a {
	color: var(--orange);
	text-decoration: none;
}

.header-nav .site-menu .menu li a:hover, 
.header-nav .site-menu .menu li a:focus {
	color: var(--orange);
	text-decoration: none;
}

.header-nav .site-menu .menu li.menu-btn {
	margin: 20px 0 0;
}

.header-nav .site-menu .menu li.menu-btn a {
	background-color: var(--orange);
	color: var(--white) !important;
	font-weight: bold;
	padding: 10px 30px;
	display: inline-block;
	width: auto;
	text-align: center;
	border-radius: 0px;
	margin: 0 auto;
}

.header-nav .site-menu .menu li.menu-btn a:hover,
.header-nav .site-menu .menu li.menu-btn a:focus {
	background-color: var(--orange-hover);
	color: var(--white) !important;
}

.header-nav .site-menu .sub-menu {
	margin: 0;
	padding: 5px 0 10px;
	list-style-type: none;
	display: none;
}

.header-nav .site-menu .menu li a.menu-image {
	display: none;
}

.header-nav .site-menu .sub-menu li.parent-item {
	color: var(--orange);
	font-size: 1.1em;
}

.header-nav .site-menu .sub-menu li a {
	padding: 4px 0;
	font-size: 16px;
	text-transform: none;
}

@media only screen and (min-width:600px) {
	
	.admin-bar .header-main {
		top: 46px;
	}

}

@media only screen and (min-width:768px) {
	
	.header {
		height: 85px;
	}
	
	.header-logo {
		height: 85px;
		padding: 20px 30px;
	}
	
	.header-logo a {
		width: 300px;
	}
	
	.header-nav .toggle-nav {
		top: 0;
		right: 0;
		height: 85px;
	}
	
	.header-nav .toggle-nav span {
		top: 24px;
	}
	
	.header-nav .toggle-nav span:nth-child(2) {
		top: 32px;
	}
	
	.header-nav .toggle-nav span:nth-child(3) {
		top: 40px;
	}
	
	.show-nav .header-nav .toggle-nav span:nth-child(1) {
		top: 29px;
	}
	
	.show-nav .header-nav .toggle-nav span:nth-child(3) {
		top: 29px;
	}
	
	.header-nav .site-menu {
		padding: 150px 30px 170px;
	}
	
	.header-nav .site-menu .menu li a {
		font-size: 24px;
	}
	
	.header-nav .site-menu .menu li.menu-btn a {
		font-size: 20px;
	}
	
	.scroll .header-main {
		height: 80px;
	}
	
	.scroll .header-main .container {
		height: 80px;
	}
	

	.scroll .header-main .container {
		height: 80px;
	}
	
	.scroll .header-main .container:before,
	.scroll .header-main .container:after {
		height: 0px;
	}

}

@media only screen and (min-width:783px) {

	.admin-bar .header-main {
		top: 32px;
	}

}

@media only screen and (min-width:1200px) { 

	.header {
		height: 115px;
	}
	
	.header .container {
		padding: 0 30px;
		display: flex;
		align-items: flex-end;
		position: relative;
	}
	
	.header-main,
	.show-nav .header-main {
		top: 0;
		height: 115px;
		background: var(--white);
		box-shadow: 0 3px 15px 0 rgba(0,0,0,0.10);
	}
	
	.admin-bar.show-nav .header-main,
	.admin-bar .header-main {
		top: 32px;
	}
	
	.scroll .header-main {
		height: 85px;
	}
	
	.header-main:before {
		content: '';
		display: block;
		background-repeat: no-repeat;
		background-image: url('./assets/images/divider-darkblue.svg');
		background-size: 100% 100%;
		width: 132px;
		height: 30px;
		top: -1px;
		position: absolute;
		right: 50%;
		transition: all 0.3s ease;
	}
	
	.header-main:after {
		content: '';
		width: 50%;
		height: 30px;
		top: -1px;
		right: 0;
		background-color: var(--darkblue);
		display: block;
		position: absolute;
		transition: all 0.3s ease;
	}
	
	.scroll .header-main:before,
	.scroll .header-main:after {
		top: -31px;
	}

	.header-main .container {
		height: 115px;
		transition: all 0.3s linear;
	}
	
	.scroll .header-main .container {
		height: 85px;
	}

	.header-logo {
		-webkit-box-shadow: 0 0 0 0 rgba(0,0,0,0.16);
   	 	box-shadow: 0 0 0 0 rgba(0,0,0,0.16);
   	 	text-align: left;
		position: absolute;
		left: 30px;
		top: 0;
		width: 0;
   	 	width: auto;
   	 	padding: 32px 0;
   	 	height: 115px;
   	 	background-color: transparent;
   	 	border: 0px;
	}
	
	.scroll .header-logo,
	.show-nav .scroll .header-logo {
	   	background-color: transparent;
		padding: 19px 0;
		height: 90px;
	}
	
	.show-nav .header-logo {
		background-color: transparent;
	}
	
	.header-logo a,
	.show-nav .header-logo a {
	    width: 350px;
	    margin: 0;
	}
	
	.scroll .header-logo a {
		width: 320px;
	}
	
	.header-nav {
		width: 100%;
		padding: 0;
		transition: ease 0.3s all;
	}
	
	.header-nav .site-menu,
	.show-nav .header-nav .site-menu { 
	    position: relative;
	    width: 100%;
	    height: 85px;
	    max-width: 100%;
	    display: inline-block;
	    top: auto;
	    left: auto;
	    z-index: 99;
	    padding: 15px 0 15px 370px;
	    visibility: visible;
	    opacity: 1;
	    transition: all 0.3s ease;
	    background: transparent;
	    right: 0;
	    -webkit-box-shadow: 0 0 0 0 rgba(0,0,0,0.16);
   	 	box-shadow: 0 0 0 0 rgba(0,0,0,0.16);
	    filter: none;
	    text-align: right;
	    overflow: visible;
	    transform: none;
	}
	
	.scroll .header-nav .site-menu {
		height: 85px;
	}
	
	.header-nav .site-menu .menu {
		list-style: none;
		margin: 0;
		padding: 0;
	    display: inline-block;
		width: auto;
	}
	
	.header-nav .site-menu .menu li {
		display: inline-block;
		position: relative;
		float: left;
		margin: 0;
		padding: 17px 0;
		transition: all 0.3s ease;
	}
	
	.scroll .header-nav .site-menu .menu li {
		padding: 9px 0;
	}
	
	.header-nav .site-menu .menu li.menu-btn {
		margin: 0;
		padding: 15px 0;
	}
	
	.scroll .header-nav .site-menu .menu li.menu-btn {
		margin: 0;
		padding: 5px 0;
	}
	
	.header-nav .site-menu .menu li .menu-toggle {
		display: none;
	}
	
	.header-nav .site-menu .menu li a {
		display: inline-block;
		margin: 0 0 0 16px;
		padding: 9px 0;
		font-size: 18px;
		font-weight: bold;
		position: relative;
		color: var(--darkblue);
	}
	
	.header-nav .site-menu .menu li.menu-btn a {
		margin: 0 0 0 18px;
		background-color: var(--orange);
		padding: 15px 15px;
		font-size: 18px;
		color: var(--white);
	}
	
	.header-nav .site-menu .menu li.menu-btn a:hover,
	.header-nav .site-menu .menu li.menu-btn a:focus {
		background-color: var(--orange-hover);
		color: var(--white);
	}
	
	.header-nav .site-menu ul li.menu-item-has-children > a {
		padding-right: 17px;
		background-image: url('./assets/images/dropdown.svg');
		background-repeat: no-repeat;
		background-size: 12px 12px;
		background-position: right top 14px;
	}
	
	.header-nav .site-menu ul li.menu-item-has-children.current-menu-item > a,
	.header-nav .site-menu ul li.menu-item-has-children.current-menu-parent > a,
	.header-nav .site-menu ul li.menu-item-has-children:hover > a {
		color: var(--orange);	
	}
	
	.header-nav .site-menu .menu li a:hover, 
	.header-nav .site-menu .menu li a:focus {
	    color: var(--orange);
	}
	
	.header-nav .site-menu .menu .current-menu-item > a, 
	.header-nav .site-menu .menu .current-page-parent > a, 
	.header-nav .site-menu .menu > .current-menu-parent > a {
		color: var(--orange);	
	}
	
	.header-nav .site-menu .menu .current-menu-item:hover > a, 
	.header-nav .site-menu .menu .current-page-parent:hover > a, 
	.header-nav .site-menu .menu > .current-menu-parent:hover > a {
		color: var(--orange);	
	}
	
	.header-nav .site-menu .sub-menu {
	    display: none !important;
	    position: absolute;
	    background: var(--darkblue);
	    -webkit-transition: all 0.3s linear;
	    transition: all 0.3s linear;
	    left: 50%;
		top: 100%;
	    z-index: 999;
	    padding: 35px 0px 35px;
	    width: 280px;
		border-radius: 5px;
	    margin: 0;
		transform: translate(-50%, 0%);
	}

	.header-nav .site-menu ul li:hover .sub-menu li {
		display: block;
		padding: 0;
	}
	
	.header-nav .site-menu .sub-menu li.parent-item a {
		font-size: 1.4em;
		display: none;
		margin: 0 0 15px;
	}
	
	.header-nav .site-menu ul li .sub-menu li {
		display: block;
	    margin: 0;
	    width: 100%;
		float: none;
		text-align: left;
		position: relative;
		z-index: 1;
	}
	
	.header-nav .site-menu ul li .sub-menu li a {
		font-size: 18px;
		width: 100%;
		padding: 5px 0px;
		color: var(--white);
		display: block;
		text-decoration: none;
		margin: 0;
		text-align: center;
		background-color: transparent;
		line-height: 125%;
		text-transform: none;
		border-bottom: 0px;
	}
	
	.header-nav .site-menu ul li .sub-menu li a:before,
	.header-nav .site-menu ul li .sub-menu li a:after {
		display: none;
	}
	
	.header-nav .site-menu ul li .sub-menu li:hover > a {
		background-color: transparent;
	    color: var(--lightblue);
	}
	
	.header-nav .site-menu ul li .sub-menu li.menu-item-has-children > a {
		background-image: none;
	}
	
	.header-nav .site-menu .menu .sub-menu .current-menu-item > a, 
	.header-nav .site-menu .menu .sub-menu .current-page-parent > a {
		background-color: transparent;
		color: var(--lightblue);
	}
	
	.header-nav .site-menu ul li .sub-menu li:after {
		display: none;
	}
	
	.header-nav .site-menu ul li.two-columns .sub-menu {
		display: flex !important;
		flex-wrap: wrap;
	}
	
	.header-nav .site-menu ul li.two-columns > .sub-menu-container > .sub-menu-inner > .sub-menu > .menu-item {
		width: 50%;
	}
	
	.header-nav .site-menu .sub-menu .sub-menu {
		position: relative;
		padding: 0;
		margin: 0 0 10px;
	}

	
	.header-nav .site-menu .sub-menu .sub-menu li a {
		font-size: 15px;
	}
	
	
	.header-nav .site-menu ul li:hover .sub-menu {
		display: block !important;
	}
	
	.header-nav .toggle-nav {
		display: none;
	}

}


@media only screen and (min-width:1280px) { 
	
	.header-logo {
		left: 50px;
	}

	.header .container {
		padding: 0 50px;
	}
	
	.header-nav .site-menu .menu li a {
		margin: 0 0 0 18px;
	}
	
	.header-nav .site-menu .menu li.menu-btn a {
		margin: 0 0 0 22px;
		padding: 13px 20px;
	}
	
}

@media only screen and (min-width:1440px) { 
	
	
	.header-nav .site-menu .menu li a {
		margin: 0 0 0 25px;
	}
	
	.header-nav .site-menu .menu li.menu-btn a {
		margin: 0 0 0 30px;
	}
	
}

/***************************
       SECTIONS
***************************/

.main {
	min-height: calc(100vh - 600px);
}

.error404 .main {
	display: flex;
	flex-wrap: wrap;
	align-items: center;	
}

.block-item {
	padding: 0 0 30px;
	width: 100%;
}

.block-item:first-child {
	padding-top: 50px;
}

.block-item.text-center {
	text-align: center;
}

.block-item.text-center {
	text-align: center;
}

.block-item ul {
	list-style: none;
	padding: 0;
}

.block-item ul li {
	padding: 2px 0 2px 28px;
	position: relative;
}

.block-item ul li:before {
	content: '';
	display: block;
	position: absolute;
	width: 18px;
	height: 18px;
	background-image: url('./assets/images/checkmark-orange.svg');
	background-size: 100% 100%;
	background-repeat: no-repeat;
	background-position: center center;	
	left: 0;
	top: 7px;
}

.block-item.bg-orange ul li:before {
	background-image: url('./assets/images/checkmark-darkblue.svg');	
}

.block-item .inline-icon {
	position: relative;
	padding: 0 0 0 25px;
	line-height: 160%;
	margin: 0 0 30px;
}

.block-item .inline-icon + .inline-icon {
	margin-top: -20px;
}

.block-item .inline-icon .icon {
	position: absolute;
	left: 0;
	top: 2px;
}

.block-item .inline-icon .icon svg {
	width: 16px;
	height: 16px;
	fill: var(--darkblue);
}

.block-item .inline-icon a {
	text-decoration: none;
	color: var(--darkblue);
}

.block-item .inline-icon a:hover {
	color: var(--orange);
}

.bg-white {
	background-color: var(--white);
}

.bg-lightblue {
	background-color: var(--lightblue);
}

.bg-darkblue {
	background-color: var(--darkblue);
	color: var(--white);
}

.bg-darkblue h1,
.bg-darkblue h2,
.bg-darkblue h3,
.bg-darkblue h4,
.bg-darkblue h5 {
	color: var(--white);
}

.bg-darkblue a:not(.btn) {
	color: var(--white);
}

.bg-orange {
	background-color: var(--orange);
	color: var(--white);
}

.bg-orange h2,
.bg-orange h3,
.bg-orange h4,
.bg-orange h5 {
	color: var(--white);
}

.bg-orange a:not(.btn) {
	color: var(--white);
}

.block-item.bg-white + .block-item:not(.bg-white),
.block-item.bg-darkblue + .block-item:not(.bg-darkblue),
.block-item.bg-lightblue + .block-item:not(.bg-lightblue),
.block-item.bg-orange + .block-item:not(.bg-orange),
.block-item.bg-image + .block-item:not(.bg-image) {
	padding-top: 50px;
}

.block-image-text {
	overflow: hidden;
}

.block-image-text .image {
	width: 100%;
	margin: 0 0 60px;
	border-radius: 0px;
	position: relative;
	z-index: 1;
}

.block-image-text .image.no-background {
	margin: 0 0 30px;
}

.block-image-text .color-block {
	display: block;
	position: absolute;
	bottom: -30px;
	right: 20px;
	width: 2000px;
	height: 100%;
	z-index: 1;
	overflow: hidden;
}

.block-image-text .color-block.bg-none {
	display: none;
}

.block-image-text.bg-darkblue .color-block {
	width: 100%;
}

.block-image-text.bg-orange .color-block {
	background-color: var(--darkblue);
	width: 100%;
}

.block-image-text .color-block:before {
	content: '';
	display: block;
	background-repeat: no-repeat;
	background-image: url('./assets/images/divider-white.svg');
	background-size: 100% 100%;
	width: 67px;
	height: 15px;
	position: absolute;
	bottom: -1px;
	right: 110px;
}

.block-image-text.bg-darkblue .color-block:before {
	background-image: url('./assets/images/divider-darkblue.svg');	
}

.block-image-text.bg-orange .color-block:before {
	background-image: url('./assets/images/divider-orange.svg');	
}

.block-image-text .color-block:after {
	content: '';
	display: block;
	position: absolute;
	width: 110px;
	height: 15px;
	bottom: -1px;
	right: 0;
	background-color: var(--white);
}

.block-image-text.bg-darkblue .color-block:after {
	background-color: var(--darkblue);
}

.block-image-text.bg-orange .color-block:after {
	background-color: var(--orange);	
}

.block-image-text .image img {
	width: 100%;
	display: block;
	z-index: 9;
	position: relative;
}

.block-image-text .column:nth-child(2) {
	align-self: center;
}

.block-featured .inner {
    margin: 0 0 30px;
    padding: 20px 20px 15px;
}

.block-featured .inner .column:first-child {
	align-self: center;
}

.block-double .column {
	padding-bottom: 30px;
}

.block-double .inner:not(.bg-none) {
    padding: 20px 20px 5px;
	height: 100%;
}

.block-featured-projects {
	overflow: hidden;
}

.block-featured-projects .inner {
	padding: 20px 20px 1px;
	position: relative;
	margin: 0 0 30px;
}

.block-featured-projects .inner:before,
.block-featured-projects .inner:after {
	content: '';
	display: block;
	position: absolute;
	width: 2000px;
	height: 100%;
	top: 0px;
	left: 100%;
	background-color: var(--darkblue);	
}

.block-featured-projects .inner:after {
	background-color: var(--white);
	left: auto;
	right: 100%;
	z-index: 2;		
}

.block-featured-projects .project-swiper {
	overflow: visible;
	margin: 0 0 30px;
	padding: 0 20px 0 0;
}

.block-featured-projects .project-swiper .swiper-arrow-nav {
	text-align: center;
}

.block-featured-projects .project-swiper .swiper-arrows {
	position: relative;
	margin: 0;
	width: 40px;
	height: 40px;
	display: inline-block;
	background-size: 9px 15px;
	background-image: url('./assets/images/chevron-right-white.svg');
	background-repeat: no-repeat;
	background-position: center center;
	background-color: var(--orange);
	border-radius: 50%;
	z-index: 9;
	margin: 0 0 15px;
}

.block-featured-projects .project-swiper .swiper-arrows:hover {
	background-color: var(--orange-hover);
}

.block-featured-projects .project-swiper .swiper-arrows.swiper-button-disabled {
	opacity: 0.5;
}

.block-featured-projects .project-swiper .swiper-arrows.swiper-prev {
	transform: rotate(-180deg);
}

.block-featured-projects.project-loop .item {
	color: var(--white);
}

.block-featured-projects .inner .more {
    position: absolute;
    width: 100%;
    bottom: -20px;
    left: 0;
    margin: 0;
    text-align: center;	
	z-index: 3;
}

.block-featured-projects .inner .line:before {
	content: '';
	display: block;
	background-repeat: no-repeat;
	background-image: url('./assets/images/divider-white.svg');
	background-size: 100% 100%;
	width: 67px;
	height: 15px;
	position: absolute;
	bottom: -1px;
	right: 0px;
	z-index: 2;
}

.block-featured-projects .inner .line:after {
	content: '';
	display: block;
	background-color: var(--white);
	width: 2000px;
	height: 15px;
	bottom: -1px;
	left: 100%;
	position: absolute;
	z-index: 2;
}


.block-jobs .count {
	width: 30px;
	height: 30px;
	display: inline-block;
	padding: 6px 0;
	text-align: center;
	background-color: var(--orange);
	border-radius: 50%;
	color: var(--white);
	font-size: 16px;
	vertical-align: super;
}

.block-jobs .no-jobs {
	background-color: var(--lightblue);
	text-align: center;
	font-style: italic;
	margin: 0 0 30px;
	padding: 20px;
}

.block-jobs.bg-lightblue .no-jobs {
	background-color: var(--white);
}

.block-jobs.bg-lightblue .item {
	background-color: var(--white);
}

.block-logo-slider {
	text-align: center;
}

.block-logo-slider .logo-swiper {
	margin: 0 0 30px;
	padding: 10px 0;
}

.block-logo-slider .logo-swiper .outer {
	width: 100%;
	display: block;
	padding-bottom: 100%;
	border-radius: 0;
	position: relative;
	transition: all 0.3s ease;
	background-color: var(--white);
	border: 2px solid var(--xlightblue);
}

.block-logo-slider .logo-swiper .image {
	display: block;
	width: 80%;
	height: 66%;
	text-align: center;
	position: absolute;
	top: 17%;
	left: 10%;
}

.block-logo-slider .logo-swiper .image img {
	display: inline-block;
	line-height: 100%;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.block-usps .column {
	padding-bottom: 20px;
}

.block-usps .item {
    position: relative;
	display: flex;
	flex-wrap: wrap;
	min-height: 35px;
    padding: 5px 0 5px 75px;
    height: 100%;
	align-items: center;
}


.block-usps .item:before {
	content: '';
	display: block;
	width: 60px;
	height: 35px;
	margin: 0;
	background-color: var(--orange);
	background-image: url('./assets/images/checkmark-white.svg');
	background-size: 18px 15px;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	clip-path: polygon(25% 0%, 100% 0%, 75% 100%, 0% 100%);
}

.block-usps.bg-orange .item:before {
	background-color: var(--darkblue);
}

.block-usps .item p {
	font-size: 18px;
	line-height: 130%;
	font-weight: bold;
	margin: 0;
	width: 100%;
}

.block-stats {
	text-align: center;
}

.block-stats .row .column {
	padding: 0 0 20px;
}

.block-stats .stats {
	align-self: center;
}

.block-stats .item {
	margin: 0;
	text-align: center;
	padding: 0 15px 20px;
	height: 100%;
	border-bottom: 1px solid var(--darkblue);
}

.block-stats.bg-darkblue .item {
	border-color: var(--white);
}

.block-stats .column:last-child .item {
	border-bottom: none;
}

.block-stats .item h3 {
	font-size: 50px;
	color: var(--darkblue);
	margin: 0 0 10px;
}

.block-stats.bg-darkblue h3 {
	color: var(--white);
}

.block-stats .item p {
	margin: 0;
	font-size: 18px;
	line-height: 120%;
	color: var(--orange);
	text-transform: uppercase;
	font-weight: bold;
}

.block-stats.bg-orange .item p {
	color: var(--white);
}

.block-cta {
	text-align: center;
}

.block-cta.height-small {
	padding: 30px 0 10px !important;	
}

.block-cta .container {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	column-gap: 20px;
}

.block-cta .text {
	margin: 0 0 20px;
}

.block-cta h3 {
	margin: 0;
	text-transform: uppercase;
}

.block-cta.bg-white h3 {
	color: var(--darkblue);
}

.block-cta .btn {
	margin-bottom: 20px;
}

@media only screen and (min-width:768px) {
	
	.block-item {
		padding: 20px 0 30px;
	}
	
	.block-item:first-child {
		padding-top: 60px;
	}
	
	.block-item.bg-white + .block-item:not(.bg-white),
	.block-item.bg-darkblue + .block-item:not(.bg-darkblue),
	.block-item.bg-lightblue + .block-item:not(.bg-lightblue),
	.block-item.bg-orange + .block-item:not(.bg-orange),
	.block-item.bg-image + .block-item:not(.bg-image) {
		padding-top: 60px;
	}
	
	.block-image-text.image-right .row {
		flex-direction: row-reverse;
	}
	
	.block-image-text.image-right .color-block {
		left: 20px;
	}

	.block-image-text.image-right .color-block:before {
		left: 80px;
	}
	
	.block-image-text.image-right .color-block:after {
		width: calc(100% - 117px);
		height: 15px;
		left: 147px;
	}
	
	.block-featured .inner {
		margin: 0 0 30px;
		padding: 30px 30px 10px;	
	}
	
	.block-double .inner:not(.bg-none) {
		padding: 30px 30px 20px;
	}
		
	.block-featured-projects .inner {
		padding: 40px 30px 15px;
		margin: 0 0 50px;
	}
	
	.block-featured-projects .inner h2 {
		margin-right: 100px;
	}
	
	.block-featured-projects .project-swiper {
		padding: 0 40px 0 0;
	}
	
	.block-featured-projects .project-swiper .swiper-arrow-nav {
		position: absolute;
		top: -75px;
		right: 0;
	}
	
	.block-featured-projects .inner .line:before {
		right: 100px;
	}
	
	.block-featured-projects .inner .line:after {
		left: calc(100% - 100px);
	}
	
	.block-jobs .no-jobs {
		padding: 30px;
	}

	.block-usps .item p {
		font-size: 20px;
	}
	
	.block-stats .row .column {
		padding: 0 0 30px;
	}
	
	.block-stats .item {
		padding: 0 15px;
		border-bottom: 0px;
		border-right: 1px solid var(--darkblue);
	}
	
	.block-stats .column:last-child .item {
		border-right: 0px;
	}
	
	.block-stats .item p {
		font-size: 20px;
	}
	
	.block-cta.height-small {
		padding: 40px 0 20px !important;
	}
	
	.block-cta .container {
		column-gap: 40px;
		flex-wrap: nowrap;
	}
	
	.block-cta .text {
		width: auto;
	}
	
	.block-cta .btn {
		width: auto;
		max-width: 350px;
		flex: none;
	}
	
}

@media only screen and (min-width: 1024px) {
	
	.block-item {
		padding: 20px 0 50px;
	}
	
	.block-item:first-child {
		padding-top: 80px;
	}
	
	.block-item.bg-white + .block-item:not(.bg-white),
	.block-item.bg-darkblue + .block-item:not(.bg-darkblue),
	.block-item.bg-lightblue + .block-item:not(.bg-lightblue),
	.block-item.bg-orange + .block-item:not(.bg-orange),
	.block-item.bg-image + .block-item:not(.bg-image) {
		padding-top: 80px;
	}
	
	
	.block-image-text .image {
		margin: 0 0 110px;
	}
	
	.block-image-text .image.no-background {
		margin: 0 0 30px;
	}
	
	.block-image-text .color-block {
		bottom: -80px;
		right: 40px;
	}
	
	.block-image-text.image-right .color-block {
		left: 40px;
	}
	
	.block-image-text .color-block:before {
		width: 132px;
		height: 30px;
		right: 160px;
	}
	
	.block-image-text .color-block:after {
		width: 160px;
		height: 30px;
	}
	
	.block-image-text.image-right .color-block:before {
		left: 150px;
	}
	
	.block-image-text.image-right .color-block:after {
		width: calc(100% - 282px);
		height: 30px;
		left: 282px;
	}
	
	.block-featured .inner {
		padding: 40px 40px 20px;	
	}
	
	.block-double .inner:not(.bg-none) {
		padding: 40px 40px 20px;
	}
	
	.block-featured-projects .inner {
		padding: 40px;
	}
	
	.block-featured-projects .inner .line:before {
		width: 132px;
		height: 30px;
		right: 200px;
	}
	
	.block-featured-projects .inner .line:after {
		height: 30px;
		left: calc(100% - 200px);
	}

	.block-stats .item h3 {
		font-size: 90px;
	}
	
}


@media only screen and (min-width: 1280px) {
	
	.block-featured .inner {
		padding: 60px 60px 40px;	
	}
	
	.block-double .inner:not(.bg-none) {
		padding: 60px 60px 40px;
	}
	
	.block-featured-projects .inner {
		padding: 60px;
	}	
}

/***************************
          HOME
***************************/

.home-top {
	position: relative;
	background-color: var(--darkblue);
	color: var(--white);
	display: flex;
	align-items: flex-end;
	overflow: hidden;
}

.home-top:before {
	content: '';
	display: block;
	background-repeat: no-repeat;
	background-image: url('./assets/images/divider-darkblue.svg');
	background-size: 100% 100%;
	width: 67px;
	height: 15px;
	position: absolute;
	bottom: -1px;
	right: 33.33334%;
	z-index: 3;
}

.home-top:after{
	content: '';
	display: block;
	background-color: var(--darkblue);
	width: 33.33334%;
	height: 15px;
	bottom: -1px;
	right: 0;
	position: absolute;
	z-index: 3;
}

.home-top .overlay {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(0deg,rgba(42, 59, 73, 0.8) 0%, rgba(42, 59, 73, 0.6) 100%);
	z-index: 2;
}

.home-top .home-swiper {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.home-top .home-swiper:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.home-top .home-swiper .image {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;	
}

.home-top .home-swiper .image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.home-top .home-swiper .swiper-slide {
	height: auto;
}

.home-top .inner {
	position: relative;
	z-index: 9;
	width: 100%;
}

.home-top .content {
	width: 100%;
	max-width: 750px;
	padding: 0 0 20px;
}

.home-top .content .subtitle {
	font-weight: bold;
	font-size: 20px;
	margin: 0 0 10px;
}

.home-top .content .text {
	font-size: 1.2em;
	line-height: 150%;
}

@media only screen and (min-width: 768px) {
	
	.home-top {
		min-height: 500px;
	}
	
	.home-top .content .subtitle {
		font-size: 24px;
	}
	
}

@media only screen and (min-width: 1024px) {
	
	.home-top {
		min-height: 600px;
	}
	
	.home-top:before {
		width: 132px;
		height: 30px;
	}
	
	.home-top:after {
		height: 30px;
	}
	
}

/***************************
          PAGE
***************************/

.page-top {
	min-height: 250px;
	position: relative;
	background-color: var(--darkblue);
	color: var(--white);
	display: flex;
	align-items: flex-end;
	overflow: hidden;
}

.page-top.compact-top {
	min-height: 150px;
}

.page-top:before {
	content: '';
	display: block;
	background-repeat: no-repeat;
	background-image: url('./assets/images/divider-white.svg');
	background-size: 100% 100%;
	width: 67px;
	height: 15px;
	position: absolute;
	bottom: -1px;
	right: 33.33334%;
	z-index: 3;
}

.page-top.divider-darkblue:before {
	background-image: url('./assets/images/divider-darkblue.svg');	
}

.page-top:after{
	content: '';
	display: block;
	background-color: var(--white);
	width: 33.33334%;
	height: 15px;
	bottom: -1px;
	right: 0;
	position: absolute;
	z-index: 3;
}

.page-top.divider-darkblue:after {
	background-color: var(--darkblue);
}

.page-top .overlay {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(270deg,rgba(42, 59, 73, 0.8) 0%, rgba(42, 59, 73, 0.6) 100%);
	z-index: 2;
}


.page-top .image {
	width: 100%;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	z-index: 1;
	padding: 0;
	margin: 0;
}	

.page-top .image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
    object-position: calc(var(--focal-point-left, 0.5) * 100%) calc(var(--focal-point-top, 0.5) * 100%);
}	

.page-top .inner {
	position: relative;
	z-index: 9;
	width: 100%;
}

.page-top .content {
	width: 100%;
	padding: 0 0 20px;
}

.page-top .content .subtitle {
	font-weight: bold;
	font-size: 20px;
	margin: 0 0 10px;
}

.page-top .content h1 {
	margin: 0 0 10px;
}

.page-top .content p {
	font-size: 1.1em;
}

@media only screen and (min-width: 768px) {
	
	.page-top {
		min-height: 350px;
	}
	
	.page-top .content .subtitle {
		font-size: 24px;
	}
	
}

@media only screen and (min-width: 1024px) {
	
	.page-top {
		min-height: 400px;
	}

	
	.page-top:before {
		width: 132px;
		height: 30px;
	}
	
	.page-top:after {
		height: 30px;
	}
	
}

/***************************
          PROJECT
***************************/

.project-loop .item {
	display: block;
	text-decoration: none;
	color: var(--darkblue);
}

.project-loop .item:hover {
	text-decoration: none;
}

.project-loop .item .image {
	width: 100%;
	display: block;
	background-color: var(--darkblue);
	overflow: hidden;
	margin: 0 0 20px;	
}

.project-loop .item .image img {
	width: 100%;
	display: block;
	transition: all 0.3s ease;
}

.project-loop .item:hover .image img {
	opacity: 0.67;
	transform: scale(1.1);
}

.project-loop .item h3 {
	margin: 0 0 5px;
}

.project-loop .item .arrow  {
    white-space: nowrap;
	transition: all 0.3s ease;
	padding: 0 10px 0 0;
}

.project-loop .item .arrow img {
	width: 22px;
}

.project-loop .item .arrow:before {
    content: ' ';
}

.project-loop .item:hover .arrow  {
	padding: 0 0 0 10px;
}

.project-content .images-swiper {
	margin: 0 0 30px;
}

.project-content .images-swiper .image img {
	width: 100%;
	display: block;
}

.project-content .images-swiper .swiper-button-next, 
.project-content .images-swiper .swiper-button-prev {
	width: 30px;
	height: 30px;
	background-color: var(--orange);
	background-image: url('./assets/images/chevron-right-white.svg');
	background-repeat: no-repeat;
	background-size: 8px 16px;
	background-position: center;
	border-radius: 50%;
	top: calc(50% - 15px);
	right: 10px;
	transition: all 0.3s ease;
}

.project-content .images-swiper .swiper-button-prev {
	transform: rotate(180deg);
	left: 10px;
}

.project-content .images-swiper .swiper-button-next:hover {
	transform: scale(1.05);
}

.project-content .images-swiper .swiper-button-prev:hover {
	transform: rotate(180deg) scale(1.05);
}

.project-content .images-swiper .swiper-button-next:after,
.project-content .images-swiper .swiper-button-prev:after {
	display: none;
}

@media only screen and (min-width:768px) {
	
	.project-content .images-swiper .swiper-button-next, 
	.project-content .images-swiper .swiper-button-prev {
		width: 40px;
		height: 40px;
		top: calc(50% - 20px);
		background-size: 8px 16px;
	}
	
	.project-related  .column:nth-child(4) {
		display: none;
	}
	
}

@media only screen and (min-width:1024px) {

	
	.project-related  .column:nth-child(4) {
		display: block;
	}
	
}

/***************************
         JOBS
***************************/

.job-loop .item {
	background-color: var(--lightblue);
	text-decoration: none;
	display: flex;
	flex-direction: column;
	min-height: 200px;
	text-align: left;
	padding: 20px;
	position: relative;
	margin: 0 0 30px;
}

.job-loop .item .top {
	flex: 2;
	width: 100%;
	position: relative;
	z-index: 2;
}

.job-loop .item .top h3 {
	margin: 0 0 5px;
	color: var(--darkblue);
	transition: all 0.3s ease;
}

.job-loop .item .top .more {
	text-align: right;
}

.job-loop .item:hover {
	background-color: var(--darkblue);
	color: var(--white);
}

.job-loop .item:hover h3 {
	color: var(--white);
}

.job-loop .item:hover .inline-link {
	color: var(--white);
}

@media only screen and (min-width:768px) {
	
	.job-loop .item {
		padding: 30px;
	}
	

}

@media only screen and (min-width:1024px) {
	
	.job-loop .item {
		padding: 40px;
	}
	
}

/***************************
		   FORMS
***************************/

.gform_wrapper {
	margin: 0 0 15px 0;
}

.gform_title {
	margin: 20px 0 0;
	font-size: 22px;
}

.gform_fields {
	list-style-type: none;
	margin: 0 0 10px;
	padding: 0;
}

.gfield {
	margin: 0 0 20px 0;
	display: block;
	width: 100%;
	padding: 0;
}

.gfield--type-radio,
.gfield--type-checkbox {
	border: 0px;
	padding: 0;
	display: block;
	background-color: transparent;	
}

.gfield_label {
	line-height: 130%;
	padding: 0 0 10px;
	display: block;
}

.gfield--type-radio .gfield_label,
.gfield--type-checkbox .gfield_label {
	padding: 0 0 10px;
}

.hide-labels .gfield_label {
	display: none;
}

.gfield_checkbox, 
.gfield_radio {
	margin: 0;
	list-style-type: none;
	padding: 0;
	position: relative;
	padding: 0;
}

.gfield_checkbox .gchoice,
.gfield_radio .gchoice,
.ginput_container_consent{
	line-height: 120%;
	position: relative;
	padding: 0px 0 10px 28px;
}

.ginput_container_consent [type="checkbox"],
.gfield_checkbox [type="checkbox"],
.gfield_radio [type="radio"] {
	position: absolute;
	top: 0;
	left: 0;
}

.gform_body .gfield:before, .gform_body .gfield_checkbox li:before {
	display: none;
}

.gfield_radio .gchoice label {
	display: flex;
}

.gfield_radio .places {
	display: inline-block;
	background-color: #CDA95B;
	color: #fff;
	padding: 1px 10px;
	font-size: 14px;
	border-radius: 20px;
	margin: 0 0 0 10px;
}

.validation_error,
.validation_message {
	font-size: 14px;
	font-weight: 500;
	color: var(--red);
	padding: 0;
	margin: 5px 0 0;
    display: block;
    width: 100%;
}

.gfield.gfield_error {
	border-color: var(--red);
}

.gfield.gfield_error .gfield_label {
	color: var(--red);
}

.gform_validation_errors {
	outline: none !important;
}

h2.gform_submission_error {
	font-size: 18px;
	font-weight: 500;
	color: var(--red);
	outline: none !important;
}

h2.gform_submission_error:focus {
	outline: none;
}

.gform_confirmation_message {
    background: #38da0f;
    color: #fff;
    padding: 10px;
    margin: 0.5em 0 25px;
}

.gform_validation_container, .gform_wrapper .gform_validation_container, body .gform_wrapper .gform_body ul.gform_fields li.gfield.gform_validation_container, body .gform_wrapper li.gform_validation_container, body .gform_wrapper ul.gform_fields li.gfield.gform_validation_container {
    display: none!important;
    position: absolute!important;
    left: -9000px;
}

.gform_footer {
	text-align: right;
}

.gform_footer .gform_button {
	margin: 0;
	width: 100%;
}

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

.gfield .instruction {
	display: none;
}

.gfield .iti--separate-dial-code .iti__selected-flag {
	background-color: var(--xlightblue);
    color: var(--darkblue);
}

.gfield .iti__flag-container {
	padding: 2px;
}

.gfield .iti__dropdown-content {
	border-color: 1px solid var(--darkblue);
}

.gfield .iti__country {
	padding: 5px 10px;
}

.gfield .iti__country.iti__highlight {
	background-color: var(--xlightblue);
}

.gfield .iti__divider:before,
.gfield .iti__country:before {
	display: none;
}

.gfield .iti__selected-country-primary {
	padding: 0 10px 0 10px;
}

.gfield .iti__country-list .iti__flag {
	margin-right: 5px;
}

.gform_required_legend {
	display: none;
}

.gsection_title {
	font-size: 20px;
	margin: 20px 0 0;
}

.gform_wrapper .gfield_visibility_hidden,
.gform_wrapper .gf_invisible {
    visibility: hidden;
    position: absolute;
    left: -9999px;
}

.gform_wrapper .gf_progressbar_title {
    color: var(--darkblue);
    font-weight: 800;
    font-size: 1.4em
}

.gform_wrapper .gf_progressbar_wrapper {
    clear: both;
    width: 100%;
    margin: 0 0 16px 0;
    padding: 0 0 16px 0
}

.gform_wrapper .gf_progressbar_wrapper h3.gf_progressbar_title {
    margin: 0 0 10px;
    font-size: 22px
}

.gform_wrapper .gf_progressbar {
    padding: 2px;
    position: relative;
    background-color: var(--white);
	border: 1px solid var(--darkblue);
    width: 100%
}

.gform_wrapper .gf_progressbar_percentage {
    height: 24px;
    text-align: right;
    font-size: .8em;
    z-index: 999;
    vertical-align: middle;
    background-color: var(--lightblue);
    color: #fff
}

.gform_wrapper .gf_progressbar:after {
    content: "";
    display: block;
    width: 100%;
    z-index: 990;
    height: 24px;
    margin-top: -24px;
}

.gform_wrapper .gf_progressbar_percentage span {
    display: block;
    width: auto;
    float: right;
    margin-right: 5px;
    margin-left: 5px;
    line-height: 1.8
}

.gform_wrapper .gf_progressbar_percentage.percentbar_0 span {
    color: #959595;
    text-shadow: none;
    float: none!important;
    margin-left: 12px;
    word-wrap: normal
}

.two-columns .gform_fields {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
    margin: 0 -10px;
}

.two-columns .gform_fields .gfield {
	padding-left: 10px;
	padding-right: 10px;
	float: left;
	width: 100%;
}

.one-field_wrapper {
	margin: 0;
}

.one-field_wrapper h2.gform_submission_error {
	display: none;
}

.one-field select {
	height: 45px;
	padding: 14px 30px 12px 15px;
}

.one-field .gform_footer .gform_button {
	width: 100%;
}

@media only screen and (min-width:768px) {

	.one-field {
		display: flex;
		flex-wrap;
	}
	
	.one-field .gform_body {
		width: calc(100% - 160px);
		padding: 0 15px 0 0;
	} 
	
	.one-field .gform_fields {
		margin: 0;
	}
	
	.one-field .gform_body .gfield {
		margin: 0;
	}
	
	.one-field .gform_footer {
		width: 160px;
	}
	
}

@media only screen and (min-width:1024px) {
	
	.two-columns .gform_fields .gfield {
		width: 100%;
	}
	
	.two-columns .gform_fields .gfield.gfield--width-half {
		width: 50%;
	}
	
	.one-field .gform_body {
		width: calc(100% - 200px);
	} 	
	
	.one-field select {
		height: 47px;
		padding: 15px 30px 13px 15px;
	}
	
	.one-field .gform_footer {
		width: 200px;
	}

}

/***************************
          FOOTER
***************************/


.footer {
	background-color: var(--darkblue);
	color: var(--white);
	padding: 50px 0 10px;
	position: relative;
}

.footer:before {
	content: '';
	display: block;
	background-repeat: no-repeat;
	background-image: url('./assets/images/divider-darkblue.svg');
	background-size: 100% 100%;
	width: 67px;
	height: 15px;
	position: absolute;
	top: -14px;
	right: 33.33334%;
}

.footer:after {
	content: '';
	display: block;
	background-color: var(--darkblue);
	width: 33.33334%;
	height: 45px;
	top: -14px;
	right: 0;
	position: absolute;
}

.footer a {
	color: var(--white);
	text-decoration: none;
}

.footer a:hover {
	color: var(--orange);
}

.footer-main .column {
	padding-bottom: 10px;
}

.footer-main .logo {
	width: 250px;
	max-width: 100%;
	margin: 0 0 30px;
	display: block;
}

.footer-main h3 {
	text-transform: uppercase;
	color: var(--white);
}

.footer-main ul {
	padding: 0;
	list-style-type: none;
	margin: 0 0 30px;
}


.footer-bottom {
	font-size: 15px;
}

.footer-bottom ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.footer-bottom .copy {
	color: var(--orange);
}

@media only screen and (min-width:768px) {
	
	.footer {
		padding: 50px 0 30px;
	}

	.footer-main .column {
		padding-bottom: 30px;
	}
	
	.footer-main .logo {
		width: 280px;
	}
	
	.footer-bottom {
		font-size: 16px;
	}
	
	.footer-bottom ul {
		text-align: left;
	}
	
	.footer-bottom ul li {
		display: inline-block;
		position: relative;
		padding: 0 0 0 20px;
	}
	
	.footer-bottom ul li:first-child {
		padding: 0;
	}
	
	.footer-bottom ul li:before {
		content: '';
		width: 1px;
		height: 15px;
		position: absolute;
		background-color: var(--white);
		top: 6px;
		left: 8px;
	}
	
	.footer-bottom ul li:first-child:before {
		display: none;
	}

}

@media only screen and (min-width:1024px) { 
	
	.footer {
		padding: 100px 0 50px;
		margin: 50px 0 0;
	}
	
	.footer:before {
		width: 132px;
		height: 30px;
		top: -29px;
	}
	
	.footer:after {
		height: 30px;
		top: -29px;
	}
	
	.footer-main .column {
		padding-bottom: 70px;
	}
	
	.footer-main .logo {
		width: 350px;
	}
	
	.footer-bottom ul {
		text-align: right;
	}

}
