/* GENERAL */
.center-it {
	text-align:center;
}
/* mobile - default */
.post-image-size-norm img, .post-image-size-half img, .post-image-size-full img {
	width:100%;
	height:auto;
}
.post-flex-2-col {
	-ms-box-orient: horizontal;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -moz-flex;
	display: -webkit-flex;
	display: flex;
	flex-direction:column;
	flex-wrap:wrap;
	padding-top:40px;}
.post-flex-2-col-A {display:flex;width:100%;flex-wrap:wrap;}
.post-flex-2-col-B {display:flex;width:100%;flex-wrap:wrap;}
.switch-top {order:2;}
.entry .post-nested-list ul {margin-bottom: 30px;}
.entry .post-nested-list ul li {
		color: #576771;
		font-size: 15px;
		font-weight: 400;
		line-height: 1.625;
		margin-bottom: 12px;
		position: relative;
		padding-left: 20px;
	}
.entry .post-nested-list ul li:last-child {margin-bottom: 1em;}
.entry .post-nested-list ul li:before {
		content: '';
		position: absolute;
		top: 9px;
		left: 0;
		border: solid #00aaff;
		border-width: 0 2px 2px 0;
		display: inline-block;
		padding: 2px;
		transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
	}

/* post extra media query for lists */
@media screen and (max-width: 1023px) and (min-width: 640px) {
	.entry .post-nested-list ul li {
		font-size: 16px;
		line-height: 1.625;
		margin-bottom: 16px;
		padding-left: 46px;
	}
	.entry .post-nested-list ul li:last-child {margin-bottom: 1em;}
	.entry .post-nested-list ul li:before {
		top: 10px;
		left: 20px;
	}
	
}

/* desktop reg */
@media screen and (min-width: 1024px) {
	.post-image-size-norm img {
		width:70%;
	}
	.post-image-size-half img {
		width:50%;
	}
	.post-image-size-full img {
		width:100%;	
	}
	.post-flex-2-col {display:flex;flex-direction:row;}
	.post-flex-2-col-A {display:flex;width:50%;}
	.post-flex-2-col-B {display:flex;width:50%;}
	.switch-top {order:-1;}
	.entry .post-nested-list ul li {
		font-size: 16px;
		line-height: 1.625;
		margin-bottom: 16px;
		padding-left: 46px;
	}
	.entry .post-nested-list ul li:last-child {margin-bottom: 1em;}
	.entry .post-nested-list ul li:before {
		top: 10px;
		left: 20px;
	}

}
/* END GENERAL */
/* hacks for LIDAR  What is lidar? page */
/* hero section top */
.page-id-5130 section.hero-fwi-section div.row {
	position:absolute;
	left: 50%;
  transform: translateX(-50%);
	top: calc(10% + 30px);
}
.page-id-5130 section.hero-fwi-section h1 p {
	color:white;
	text-align:center;
	font-size:3.2rem;
}
.page-id-5130 section.hero-fwi-section:after {
	background:none;
    z-index: 2;
}
.page-id-5130 .title-section .row .title-60 h2, .page-id-5130  .three-icon-tiles-section .row .title-60 h2 {
	display: inline-block;
    background: -webkit-linear-gradient(0deg, #2ae9ae, #00aaff 80%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
	text-transform: uppercase;
	font-weight:bold;
	/*font-size: 18px;*/
	font-size:.34em;
  letter-spacing: 3.4px;
  margin-bottom: 0;
}
/* special black band section for point cloud */
.page-id-5130 section.hero-secondary-fi-section {
	background-color:black;
	display:block;
	overflow:hidden;
}
.page-id-5130 section.content-section-block {
	width:100%;
}
@media screen and (min-width: 1024px) {
  .page-id-5130 section.hero-fwi-section h1 p {
		font-size:6rem;
	}
.page-id-5130 section.content-block-section div.row {
	max-width:75rem;
}
.page-id-5130 section.content-block-section div.row-md {
	max-width:1210px;
}
}
/* END hacks for lidar What is lidar? page */

/* visual assets page */
/* visual assets page subnav */
.va-subnav ul.wide {display:none;}
.va-subnav ul {
  list-style-type: none;
  margin: 0;
  padding: 0 0 0 5px;
  overflow: hidden;
}
.va-subnav ul li {
  /*float: left;
  width:200px;*/
  width:100%;
}
.va-subnav ul li a {
  display: block;
  padding:0 3em .1em 0;
  font-size:1.4em;
  color:#0a0a0a;
  border-bottom:5px solid #f1f1f1;
  width:75%;
  text-transform: uppercase;
}
.va-subnav ul li a:hover, .va-subnav ul li a.on {
  border-bottom:5px solid rgba(0,170,255,0.3);
  width:75%;
  transition-duration: .5s;
}
/* visual assets page subnav */
/* visual assets page - gallery tiles */
.contain {
  max-width: 1335px;
  margin: 0 auto;
}
.grid-row {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
}
.grid-item {
  /*height: 550px;*/
  /*flex-basis: 20%;*/
  /*height: 340px;*/
  height:420px;
  flex-basis: 33.333%;
  -ms-flex: auto;
  width: 259px;
  position: relative;
  padding: 10px;
  box-sizing: border-box;
}
.grid-item-imagery {
  height: 460px;
  flex-basis: 33.333%;
  -ms-flex: auto;
  width: 259px;
  position: relative;
  padding: 10px;
  box-sizing: border-box;
}
.grid-item-video {
  height: 560px;
  flex-basis: 33.333%;
  -ms-flex: auto;
  width: 259px;
  position: relative;
  padding: 10px;
  box-sizing: border-box;
}
.vimeo-responsive {
	padding:56.25% 0 0 0;
	/*padding:76.25% 0 0 0;*/
	position:relative;
	top:-15%;/* added */
}
.vimeo-iframe {
	position:absolute;
	top:0;left:0;
	width:100%;
	height:100%;
}
.grid-row a {
  text-decoration: none;
}
.wrapping-link {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 2;
  color: currentColor;
}
.i-frame-wrapping-link {
  position: absolute;
  top: 20px;
  left: 0;
  bottom: 174px;
  right: 0;
  z-index: 2;
  color: currentColor;
}
.grid-item-wrapper {
  -webkit-box-sizing: initial;
  -moz-box-sizing: initial;
  box-sizing: initial;
  background: #fff;
  margin: 0;
  height: 100%;
  width: 100%;
  overflow: hidden;
  -webkit-transition: padding 0.15s cubic-bezier(0.4,0,0.2,1), margin 0.15s cubic-bezier(0.4,0,0.2,1), box-shadow 0.15s cubic-bezier(0.4,0,0.2,1);
  transition: padding 0.15s cubic-bezier(0.4,0,0.2,1), margin 0.15s cubic-bezier(0.4,0,0.2,1), box-shadow 0.15s cubic-bezier(0.4,0,0.2,1);
  position: relative;
  -moz-box-shadow: 0 0 7px #ccc;
-webkit-box-shadow: 0 0 7px #ccc;
box-shadow: 0 0 7px #ccc;
}
.grid-item-container {
  height: 100%;
  width: 100%;
  position: relative;
}
.grid-image-top {
  /*height: 70%;*/
  height:65%;
  width: 120%;
  background-size: cover;
  position: relative;
  background-position: 50% 50%;
  left: -10.5%;
  top: -4.5%;
  background-color:#f7f7f7;
}
.grid-image-top .centered {
  text-align: center;
  transform: translate(-50%, -50%);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 54.5%;
  left: 50%;
  width: 60%;
  height: 60%;
  background-position: center;
}
.grid-item-imagery .grid-image-top {
  height: 60%;
  width: 120%;
  background-size: cover;
  position: relative;
  background-position: 50% 50%;
  left: -10.5%;
  top: -4.5%;
  background-color:#f7f7f7;
}
.grid-item-video .grid-image-top {
  height: 60%;
  width: 120%;
  background-size: cover;
  position: relative;
  background-position: 50% 50%;
  left: -10.5%;
  top: -4.5%;
  background-color:#f7f7f7;
}
.grid-item-content {
  padding: 0 20px 20px 20px;
}
.item-title {
  font-size: 24px;
  line-height: 26px;
  font-weight: 400;
  margin-bottom: 18px;
  display: block;
}
.item-title-imagery {
  /*font-size: 16px; if long titles
  line-height: 140%;*/
  font-size: 24px;
  line-height: 26px;
  font-weight: 400;
  margin-bottom: 18px;
  display: block;
}
span.item-title-caption {
  font-size:1.2em;
  position:relative;
  /*top:-1.6em;*/
  top:-1.4em;
  font-weight: 400;
  margin-bottom: 18px;
  display: block;
}
.item-category {
  text-transform: uppercase;
  display: block;
  margin-bottom: 20px;
  font-size: 14px;
}
.item-excerpt {
  margin-bottom: 20px;
  display: block;
  font-size: 14px;
}
.more-info {
  position: absolute;
  bottom: 0;
  margin-bottom: 25px;
  padding-left: 0;
  transition-duration: .5s;
  /*font-size: 12px;*/
  display: flex;
  text-transform: uppercase;
}
.more-info a {
 color:black;
}
.more-info img {
	height:30px;
	padding-right:.5rem;
}
.grid-item:hover .grid-item-wrapper, .grid-item-imagery:hover .grid-item-wrapper, .grid-item-video:hover .grid-item-wrapper {
  padding: 2% 2%;
  margin: -2% -2%;
}
/* @media(max-width: 1333px) */
@media(max-width: 6000px) {
  .grid-item, .grid-item-imagery {
    flex-basis: 33.33%;
  }
  .grid-item-video {
    flex-basis: 50%;
    height:630px;
  }
  .grid-item-video .grid-image-top {
  	height:50%;
  }
	.va-subnav ul.wide {display:block;}
	.va-subnav ul li {
	  float: left;
	  width:200px;
	}
}

@media(max-width: 1023px) {
   .grid-item, .grid-item-imagery {
    /*flex-basis: 33.33%;*/
    flex-basis: 50%;
  }
   .grid-item-video {
    /*flex-basis: 33.33%;*/
    flex-basis: 50%;
  	height:690px;
  }
  .grid-item-video .grid-image-top {
  	height:50%;
  }
  	.va-subnav ul.wide {display:none;}
	.va-subnav ul li {
	  float: none;
	  width:200px;
	}
}

@media(max-width: 767.98px) {
  .grid-item-video {
    flex-basis: 100%;
  	height:690px;
  }
  .grid-item-video .grid-image-top {
  	height:60%;
  }
}

@media(max-width: 639px) {
  .grid-item, .grid-item-imagery {
    flex-basis: 100%;
  }
  .grid-item-video {
  	height:720px;
  	flex-basis: 100%;
  }
  .grid-item-video .grid-image-top {
  	height:50%;
  }
  	.va-subnav ul.wide {display:none;}
	.va-subnav ul li {
	  float: none;
	  width:200px;
	}
}
@media(max-width: 498px) {
  .grid-item-video {
  	height:720px;
  	flex-basis: 100%;
  }
  .grid-item-video .grid-image-top {
  	height:50%;
}
/* End visual asssets page */



/* PAVE & AEye Mobile Optimized landing page */

div.pave-top p.header img {
div.pave-top-text a:link, div.pave-top-text a:visited {
	color:#000;
	text-decoration:none;
}
div.pave-top-text a:hover, div.pave-top-text a:focus {
	color:#00aaff!important;
	text-decoration:none;
}
div.pave-top p.logos, div.pave-top p.header {
	text-align:center;
	padding-bottom:1em;
}
div.pave-top p.logos img {
	width:70%;
}
div.pave-top p.header img {
	width:100%;
}
div.pave-top div.pave-top-text p.intro {
	font-size:1.1em;
}
div.pave-top div.pave-top-text p.intro-second {
	font-size:1.1em;
}
div.pave-top-text {
	padding-bottom:2em;
	padding-top:1em;
}

@media (min-width: 786px) and (max-width: 1023px) {
div.pave-top p.header img {
	width:90%;
}
	div.pave-top div.pave-top-text p.intro {
	font-size:1.5em;
	}
	div.pave-top div.pave-top-text p.intro-second {
	font-size:1.15em;
	}
}
@media (min-width: 1024px) and (max-width: 6000px) {
div.pave-top p.header img {
	width:90%;
}
	div.pave-top p.logos img {
	width:50%;
	}
	div.pave-top div.pave-top-text p.intro {
	font-size:1.6em;
	}
	div.pave-top div.pave-top-text p.intro-second {
	font-size:1.3em;
	}
}
/* END PAVE & AEye Mobile Optimized landing page */
	
	
/* WP Forms for /js/ Site Forms */
/*.wpforms-required-label {
	color:#515767!important;
}*/
div.jp-form div {
	width:100%;
}
div.jp-form div input, div.jp-form div textarea {
	box-shadow: none !important;
}
div.jp-form div input, div.jp-form div textarea {
	border-top:0;
	border-left:0;
	border-right:0;
}div.jp-form div textarea {
	min-height:10rem;
}
label.wpforms-label-hide {
	display:none !important;
}
.jp-form-button {
	display: inline-block;
	margin-top:20px!important;
  border: 1px solid #000 !important;
  color: #000 !important;
  font-size: 14px !important;
  background: transparent !important;
  font-weight: 700 !important;
  line-height: 18px !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  padding: 1em 2em !important;
  outline: none !important;
  transition: 0.2s !important;
}
.jp-form-button:hover {
	color:#fff !important;
	background-color:#000 !important;
  transition: 0.2s !important;
}
/* End WP Forms */
	
	