
:root {
 --ltgray: #d9d9d9;
  --gray: #757575;
  --green: #00998c;
  --blue1: #2a6aaf;
  --blue: #1282a2;
  /*--fontgray1: #424242;*/
  --fontgray1: #2d2d2d;
  /*--fontgray: #201e1f;*/
  --fontgray: #2d2d2d;
  --red: #dd1827;
  --purple1: #fae6fa;
  --purple2: #d8bfd8;
  --black: #2D2D2D;
}
@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-VariableFont_wght.ttf') format('truetype');
	font-display: swap;
}
@font-face {
    font-family: 'OpenSans';
    src: url('fonts/OpenSans-VariableFont_wdth,wght.ttf') format('truetype');
	font-display: swap;
}
@font-face {
    font-family: 'Tungsten';
    src: url('fonts/Tungsten-Book_0.otf') format('truetype');
	font-display: swap;
}
@font-face {
    font-family: 'Poppins';
    src: url('fonts/poppins-bold-webfont.woff2') format('truetype');
	font-display: swap;
}
#skip a {
    display: block;
    position: absolute;
    left: -999px;
    top: -999px;
    left: 25px;
    top: 25px;
}

#skip a:focus {
    left: 25px;
    top: 25px;
    padding: 3px;
    background: #ffc;
    border:1px solid #990000;
}
.skip-link {
    position: absolute;
    left: -999px;
    top: -999px;
}
.skip-link:focus {
    position: absolute;
    left: 25px;
    top: 25px;
    padding: 3px;
    background: #fff;
    border:1px solid #990000;
	z-index:95;
}
body {
	padding:0;
	margin:0;
	font-family: OpenSans,sans-serif;
	font-size: 1rem;
	color: var(--fontgray);
	line-height:1.75em;
	background-color:#f2f2f2;
}
body.page-id-69 {
    background-color: #FFFFFF;
}
.clearall {
	clear:both;
	height:0;
}
h1 {
	font-family: unitext, sans-serif;
	font-weight:700;
	font-size:45px;
	line-height:50px;
}
h2 {
	font-family: Montserrat,sans-serif;
}
a {
	color: var(--black);
}
a:visited {
	color: var(--black);
}
a:hover {
	color: var(--fontgray1);
}
a.filterlink {
	text-decoration:none;
}
header {
	/*height:115px;*/
	padding-top:40px;
	border-bottom: 5px solid var(--black);
	background-color:#ffffff;
}
.logo {
	width:250px;
	height:105px;
	/*float:left;*/
	padding-left:50px;
	/*margin-top:-45px;*/
	font-family: Poppins,sans-serif;
	font-size: 3rem;
	font-weight:900;
	text-transform: uppercase;
	line-height:2.5rem;
}
.logoimg {
	width:100%;
	height:auto;
}
.site-branding {
	/* width:content;
	float:left; */
}
.nav {
	margin-top: 21px;
	list-style: none;
	display:flex;
	justify-content: space-evenly;
	align-items: baseline;
	/*font-size:20px;*/
	font-family: Montserrat,sans-serif;
	font-weight:700;
}
.nav li {
	white-space: nowrap;
}
.nav a {
	padding:10px 25px;
	text-decoration: none;
	background-color:var(--ltgray);
	border: 0px solid var(--ltgray);
	border-radius: 25px;
	color: var(--fontgray1);
	position: relative;
	transition: 0.5s;
	cursor:pointer;
}
.nav a:hover {
	background-color:var(--black);
	border: 0px solid #ffffff;
	border-radius: 25px;
	color: #ffffff;
}

.main-navigation .current_page_item a {
    background-color:var(--black) !important;
	color: #ffffff;
}
.regionlist {
	background-color:#ffffff;
	padding-right:15px;
	margin-top: 18px;
	margin-left:-115px;
	list-style: none;
	display:none;
}
#languagebox {
	position:relative;
}
#languagebox:hover {
	#regionlist {
		display:block;
	}
}
a.langnav {
	color:var(--black);
	text-decoration:underline;
}
a.langnav:hover {
	color: var(--fontgray);
}

.headervideo {
	width:100%;
	height:auto;
	border: 3px solid #f2f2f2;
}
.videodiv {
	padding:3px 0;
	background: linear-gradient(to right, blue, indigo, violet);
}
.videodiv1 {
	padding:0;
	background-color:var(--black);
}
.bluehead {
	background-color:var(--black);
	color:white;
	/*padding:50px;*/
	border-bottom:solid 10px var(--black);
}
.whiteheader {
	padding:80px 0 20px 0;
	font-family: unitext, sans-serif;
	font-size:40px;
	line-height:50px;
	font-weight:700;
	color:#ffffff;
}
.flexcontent {
	display: flex;
	gap: 25px;
	flex-grow:1;
}
#block-3 {
	min-width:275px;
}
.wp-block-latest-posts__list {
	margin-left:1em;
}
.wp-block-latest-posts__list li {
	margin-bottom:1em;
}
.wp-block-latest-posts.is-grid li {
	background-color:#ffffff;
	padding:30px;
	border-radius: 25px;
}
.container {
	max-width:1700px;
	padding: 0 100px 20px 100px;
	margin:auto;
    animation: fadeInAnimation ease 3s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
}
@keyframes fadeInAnimation {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
.content-inner {
	max-width:900px;
	margin:auto;
}
.content-inner1200 {
	max-width:1200px;
	margin:auto;
}
.content-inner-text-right {
	max-width:900px;
	margin:auto;
	text-align:right;
	padding: 50px 0;
}
.content-inner-text-center {
	max-width:900px;
	margin:auto;
	text-align:center;
	padding: 50px 0;
}
.grid2 {
	display:grid;
	grid-template-columns: 60% 1fr;
	grid-gap: 25px;
}
.grid3 {
	display:grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	grid-gap: 25px;
}
img.responsiveimage {
	width:100%;
	height:auto;
}
.sectionimage {
	/*min-width:350px;*/
	padding-top:25px;
}
.space50 {
	padding-top:50px;
}
footer {
	padding:45px 0 50px 0;
	background-color:#f9f9f9;
	color: var(--fontgray);
}
.footerlogo {
	width:300px;
	padding-bottom:15px;
	/*margin:auto;*/
}
.footcontainer {
	display:grid;
	grid-template-columns: 1fr 1fr 1fr;
	max-width:1700px;
	padding: 0 100px 20px 100px;
	margin:auto;
}
.footabout {
	width:350px;
}
.footlinks {
	width:300px;
	margin:auto;
}
.footnewsletter {
	width:300px;
	justify-self: end;
}
.footbtm {
	text-align:center;
}
.footlist {
	list-style: none;
}
.footlist li {
	margin: 10px;
}
a.footnav {
	padding:5px;
	text-decoration: none;
	color: var(--fontgray);
	font-weight: 700;
	border: 0px solid var(--ltgray);
	border-radius: 25px;
}
a.footnav:hover {
	background-color: var(--black);
	/*background-color: #ffffff;*/
	color: #ffffff;
}

.nav-container {
	position: relative;
	z-index: 5;
}
.nav-container .checkbox {
  position: absolute;
  display: none;
  height: 32px;
  width: 32px;
  top: 20px;
  right: 20px;
  z-index: 5;
  opacity: 0;
  cursor: pointer;
}
.navigation {
	color:var(--black);
	text-align:center;
	padding-top:25px;
}
.nav-container .hamburger-lines {
  display: block;
  height: 26px;
  width: 32px;
  position: absolute;
  top: 17px;
  right: 20px;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.nav-container .hamburger-lines .line {
  display: none;
  height: 4px;
  width: 100%;
  border-radius: 10px;
  background: #0e2431;
}

.nav-container .hamburger-lines .line1 {
  transform-origin: 0% 0%;
  transition: transform 0.4s ease-in-out;
}

.nav-container .hamburger-lines .line2 {
  transition: transform 0.2s ease-in-out;
}

.nav-container .hamburger-lines .line3 {
  transform-origin: 0% 100%;
  transition: transform 0.4s ease-in-out;
}

.nav-container input[type="checkbox"]:checked ~ .nav {
	transform: translateX(-1px);
}
.nav-container input[type="checkbox"]:checked ~ .hamburger-lines .line1 {
  transform: rotate(45deg);
}

.nav-container input[type="checkbox"]:checked ~ .hamburger-lines .line2 {
  transform: scaleY(0);
}

.nav-container input[type="checkbox"]:checked ~ .hamburger-lines .line3 {
  transform: rotate(-45deg);
}
input[type=text], input[type=email], select, textarea, input[type=file] {
	width: 100%;
	padding: 12px 20px;
	/*margin: 8px 0;*/
	display: inline-block;
	border: 1px solid #ccc;
	border-radius: 15px;
	box-sizing: border-box;
}
input[type=submit] {
	width: 100%;
	background-color:var(--black);
	font-size:17px;
	color: white;
	padding: 14px 20px;
	margin: 8px 0;
	border: none;
	border-radius: 15px;
	cursor:pointer;
}
input[type=radio] {
	height: 40px;
}
input[type=submit]:hover {
	background: var(--gray);
}
.logincard {
	max-width:375px;
	margin:auto;
	background-color:white;
	padding:15px;
	border: 1px solid #ccc;
	border-radius: 15px;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 10px 0 rgba(0, 0, 0, 0.19);
}
.cardgrid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
	gap: 1rem;
}
.card {
	background-color:white;
	border: 3px solid white;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 10px 0 rgba(0, 0, 0, 0.19);
	padding:20px;
}
.cardheader {
	font-weight:700;
	height:36px;
	padding-bottom:10px;
	overflow:hidden;
}
.newssignup {
	width:90%;
	max-width:1200px;
	margin:50px auto;
	background-color:white;
	border: 3px solid white;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 10px 0 rgba(0, 0, 0, 0.19);
	padding:1%;
	border-radius: 25px;
}
.homenews {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}
.rainbowline {
  width: 35px;
  height: 3px;
  background-color: var(--black);
}
.videocard {
	min-width:357px;
	max-width:375px;
	background-color:white;
	text-align:center;
	padding-top:5px;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 10px 0 rgba(0, 0, 0, 0.19);
}
.videocardheader {
	padding:10px;
}
.mapimg {
	width:100%;
	height:auto;
}
.mapbox {
  padding:3px 3px 0 3px;
  background: linear-gradient(to right, blue, indigo, violet);
}
.presence {
	width:90%;
	max-width:1275px;
	margin:auto;
	padding:25px;
	background-color: #f0f0ee;
	background-image: url("img/bkgworld.png");
	background-repeat: no-repeat;
	background-position: right bottom;
	background-size: contain;
	border-radius: 25px;
}
.flexrow {
	/*display: grid;
	grid-template-columns: repeat(auto-fit, 280px);
	justify-content: space-evenly;
	grid-row-gap: 10px;*/
}
.col-md-4 {
    padding:10px;
	float:left;
	margin-right:20px;
}
.location {
	background-image: url("img/pointer.png");
	background-repeat: no-repeat;
	background-position: left;
	padding:0 20px;
}
.img100 {
	width:100%;
	height:auto;
}
.img100gray {
	width:100%;
	height:auto;
	filter: grayscale(100%);
}
.tssgrid {
	display:grid;
	grid-template-columns: repeat(auto-fit, 250px);
	justify-content: space-evenly;
	grid-row-gap: 10px;
}
.tssbox {
	display:grid;
	align-content: center;
	width:100%;
	height:250px;
	padding:10px;
	background-color: #ffffff;
	text-align:center;
	position:relative;
	border: solid 3px var(--black);
}
.tsswordbox {
	position:absolute;
	top:-1px;
	left:-1px;
	background-color: #ffffff;
	text-align:left;
	height:245px;
	padding:10px;
	opacity: 0;
	transition: opacity 250ms ease-in-out 250ms;
	color:var(--black);
	font-size: 0.75rem;
	line-height:0.95rem;
	/*border: solid 3px #000000;*/
}
.tssbox:hover {
	/*border: 0;*/
}
.tsswordbox:hover {
	opacity: 1;
}
.tsswordbox a {
	color:var(--black);
	text-decoration:none;
}

.portfoliogrid {
	display:grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-gap: 20px;
}
.titlegrid {
	display:grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-gap: 20px;
	max-height:500px;
	overflow: auto;
}
.contactgrid {
	display:grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 20px;
}
a.morebtn {
	padding:10px;
	text-decoration: none;
	color:#ffffff;
	background-color:var(--black);
	border-radius: 15px;
}
a.morebtn:hover {
	background-color: var(--gray);
	color:#ffffff;
	/*cursor: url('12kliftcursor.cur'), auto;*/
}
.newsimg {
	max-width:389px;
	height:190px;
	overflow:hidden;
}
.newsdate {
	padding: 0 0 25px 10px;
	margin-top: -10px;
}
.h1line {
	position:relative;
}
.h1line::before {
	content: '';
	position:absolute;
	top:50%;
	left:-75px;
	transform: translateY(-50%);
	width: 50px;
	height:5px;
	background: var(--black);
	border-radius: 5px;
}
.offerlist {
	list-style-type: square;
	list-style-position: outside;
	text-transform: uppercase;
	padding: 0 20px;
}
.portfolio-iteml {
	padding: 20px 50px;
	clear:both;
	background-color: rgba(107,129,137,0.25);
	border-radius: 15px;
	margin: 25px 0;
}
.portfolio-itemr {
	padding: 20px 50px;
	clear:both;
	background-color: rgba(107,129,137,0.25);
	border-radius: 15px;
	margin: 25px 0;
}
.portfolio-imagel {
	width:300px;
	float:left;
}
.portfolio-imager {
	width:300px;
	float:right;
}
.portfolio-descl {
	padding:50px 0 0 350px;
}
.portfolio-descr {
	padding:50px 350px 0 0;
}
.img100 {
	border-radius: 15px;
}
.action {
	width:200px;
	float:right;
	text-align:right;
}
.point {
	font-size: 21px;
    font-weight: 600;
    color:var(--black);
    float: left;
}
hr.gradient {
	clear: both;
	/*background: linear-gradient(to right, blue, indigo, violet);*/
	background-color:var(--black);
	height:2px;
	margin:55px 0;
}
.press {
	background-color:#e8ecf2;
	padding:50px 0;
}
.pressgrid {
	display:grid;
	grid-template-columns: 1fr 1fr;
	justify-content: space-evenly;
	grid-row-gap: 30px;
	grid-column-gap: 30px;
}
.pressexcerpt {
	background-color:#ffffff;
	padding:30px;
	border-radius: 25px;
}
.pressdate {
	font-size:1.2rem;
}
.pressmore {
	text-align:right;
	padding-right:20px;
}
.pcheckbox {
	width:17px;
	height:17px;
	margin-top:4px;
	margin-right:4px;
	border:solid 1px var(--fontgray);
	float:left;
}
.pcheckedbox {
	width:17px;
	height:17px;
	margin-top:4px;
	margin-right:4px;
	border:solid 1px var(--fontgray);
	background-color:var(--black);
	float:left;
}
.productgrid1 {
	display:grid;
	grid-template-columns: 250px 1fr;
	grid-row-gap: 30px;
	grid-column-gap: 30px;
}
.productgrid {
	display:grid;
	grid-template-columns: repeat(auto-fit, 250px);
	justify-content: space-evenly;
	grid-row-gap: 10px;
}

.filter {
	display:block;
	text-transform:uppercase;
}
.filterheader {
	display:block;
}
.filterheader1 {
	display:none;
}
	
.product {
	text-align:center;
	text-transform:uppercase;
}
.jobgrid {
	display:grid;
	grid-template-columns: 300px 1fr;
	grid-gap: 20px;
}
.cursor:hover {
	cursor:pointer;
}
.icon-line-chevron-right {
	font-weight:700;
}
.disclaimer {
	font-size:0.75rem;
	line-height:0.85rem;
}
.companylogos {
	max-width:175px;
}
.logogrid {
	display:grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-gap: 20px;
	align-items: center;
}
.phonegrid {
	padding-bottom:15px;
	display:grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-gap: 20px;
}
.tinytext {
	font-size:0.75rem;
}
.cardtable {
	max-width:750px;
	margin:auto;
	background-color:white;
	padding:10px;
	font-size:14px;
	line-height:14px;
	border: 1px solid #ccc;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 10px 0 rgba(0, 0, 0, 0.19);
}
.specialnotice {
	font-size:12px;
	line-height:13px;
}
.cardlogo > img {
	width:99%;
}
.newsgrid {
	display:grid;
	grid-template-columns: 1fr 250px;
	grid-gap: 20px;
}
.application-header {
	display:flex;
	justify-content:space-between;
	flex-flow: row wrap;
}
.headinfo {
	/*flex:0 1 calc(20% - 50px);*/
	padding:25px;
}
/* The Modal (background) */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 10; /* Sit on top */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

/* Modal Content/Box */
.modal-content {
  background-color: #fefefe;
  margin: 100px auto;
  padding: 20px;
  border: 1px solid #888;
  width: 80%;
}

/* The Close Button */
.close {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}
.instructions {
	float:right;
	font-weight:700;
}
.makedrop {
	background-color:#ffffff;
	height:0;
	overflow:hidden;
	position:absolute;
	top:27px;
	left:1px;
	transition: height 2s;
	z-index:1;
	border-radius: 15px;
}
.makediv {
	text-align:left;
	background-color:#ffffff;
	height:200px;
	overflow:scroll;
	transition: height 2s;
	z-index:1;
}
.makelabel {
	font-weight:400;
}
.error-message {
	color:red;
}
.corevalues {
	display:flex;
	flex-wrap:wrap;
	font-weight:700;
	font-size:1.25rem;
}
.corevalues li {
	margin:10px 25px;
}
.footerflex {
	justify-content:space-between;
	max-width:1700px;
	margin:auto;
	padding: 0 100px 20px 100px;
}
.product-page {
	background-color:#ffffff;
}

@media screen and (max-width: 1450px) {
	.nav a {
		padding:7px 15px;
	}
}


@media screen and (max-width: 1300px) {
	.logo {
		margin-top:-37px;
		padding-top:15px;
	}
	.nav {
		font-size:13px;
	}
	.content-inner1200 {
		padding:25px;
	}
}
@media screen and (max-width: 1150px) {
	.logo {
		margin-top:-21px;
	}
	.nav a {
		padding:7px 25px;
	}
	.nav {
		background-color:var(--ltgray);
		transform: translateY(-250%);
		flex-direction: column;
		row-gap:20px;
		transition: transform 0.5s ease-in-out;
		max-width:350px;
		padding:10px 0 50px 50px;
		position:absolute;
		top:100px;
		right:10px;
	}
	.nav-container {
	  display: block;
	}
	.nav-container .hamburger-lines .line {
	  display: block;
	}
	.nav-container .checkbox {
	  display: block;
	}
	.grid2 {
	  display: block;
	}
	.portfoliogrid {
		display:grid;
		grid-template-columns: 1fr 1fr;
		grid-gap: 20px;
	}
	.logogrid {
		grid-template-columns: 1fr 1fr;
	}
	.whiteheader {
		padding:20px 0 20px 0;
		font-size:30px;
	}
	.footlinks {
		width:3px;
	}
	.filter {
		display:none;
	}
	.filterheader {
		display:none;
	}
	.filterheader1 {
		display:block;
	}
}

@media screen and (max-width: 1020px) {
	.col-md-4 {
		max-width: 275px;
		margin:auto;
		float:none;
	}
	.presence {
		background-image: url("img/bkgworld-t.png");
		background-position: center;
		background-size: cover;
		padding:0;
	}
}
@media screen and (max-width: 900px) {
	.flexrow {
		display: block;
	}
	.portfoliogrid {
		display:block;
	}
	.portfolio-descl {
		padding:50px 0 0 0;
	}
	.portfolio-imagel {
		width:300px;
		float:none;
		margin:auto;
	}
	.portfolio-imager {
		width:300px;
		float:none;
		margin:auto;
	}
	.portfolio-descr {
		padding:50px 0 0 0;
	}
	.portfolio-iteml {
		padding: 20px 0;
	}
	.portfolio-itemr {
		padding: 20px 0;
	}
	.grid3 {
		display:block;
	}
	.headvideo {
		padding: 20px 0;
	}
	.footcontainer {
		display:block;
	}
	.footabout {
		width:80%;
		margin:auto;
	}
	.footlinks {
		width:300px;
		margin:auto;
	}
	.footnewsletter {
		width:300px;
		margin:auto;
	}
	.jobgrid {
		display:block;
	}
}
@media screen and (max-width: 800px) {
	.pressgrid {
		display:block;
	}
	.pressexcerpt {
		margin-bottom:20px;
	}
}
@media screen and (max-width: 700px) {
	.point {
		width:250px;
	}
	h1 {
		font-size:30px;
	}
	.productgrid1 {
		display:block;
	}
	.filterlink {
		display:none;
	}
	.logogrid {
		display:block;
	}
	.newsgrid {
		display:block;
	}
}
@media screen and (max-width: 600px) {
	.container {
		padding: 0 10px 20px 10px;
		margin:auto;
	}
	.footcontainer {
		padding: 0 10px 20px 10px;
		margin:auto;
	}
	.logo {
		padding:0;
	}
	.application-header {
		flex-flow: column;
	}
	.headinfo {
		padding:10px;
	}
	.h1line::before {
	content: none; /* Hide the pseudo-element */
	}
}
@media screen and (max-width: 500px) {
	.contactgrid {
		display:block;
	}
	.whiteheader {
		padding:20px 0 20px 0;
		font-size:25px;
		line-height:34px;
	}
	.phonegrid {
		display:block;
	}
}