/* generic css start */

.clear {
  clear: both;
	display: block;
	overflow: hidden;
	visibility: hidden;
	width: 0;
	height: 0;
}
.clearfix:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
  }
.clearfix { display: inline-block; }
/* start commented backslash hack \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }

.center {
  margin-left: auto;
  margin-right: auto;
  display: block;
}

fieldset { border:1px solid #ccc;}

tr {
  vertical-align: top;
}

ul {
  margin-bottom: 20px;
}
ol li {
  padding-bottom: 10px;
}
li {
  margin-left: 25px;
  margin-bottom: 5px;
}
p {
  margin: 0 0 1em 0;
}

/* links */
a {text-decoration: none;color: #215889;}
a:visited {color: #215889;}
a:hover {color: #215889; text-decoration:underline;}
a img {border: none; outline:none;}

a.btn-primary:visited {
    color: #fff;
}

h1 a:hover, h2 a:hover, h3 a:hover {text-decoration:none;}

h1, h2, h3, h4, h5, h6 {
  margin: 1em 0 1em 0;
  line-height: normal;
  font-weight: normal;
  color: #282829;
  text-rendering: optimizelegibility;
}

h1 {
  font-size: 32px;
  margin-bottom: 1em;
  margin-top: 0.5em;
}

h2 {
  font-size: 28px;
  margin-top: 1em;
  font-weight: normal;
}
div#article h2 {
  margin-top: 0;
}

h1.title {
  color: #fff;
  font-size: 50px;
  text-shadow: 0px 0px 8px #000;
  padding: 65px 0 0 0;
  margin: 0 0 20px 10px;
}
h1.titletext {
  color: #fff;
  font-size: 50px;
  line-height: 50px;
  text-shadow: 0px 0px 8px #000;
  padding: 0;
  margin: 65px 0 50px 10px;
}
h1.titletext span {
  color: #DEDEDE;
  font-size: 25px;
  font-weight: bold;
  text-shadow: 0px 0px 8px #000;
  padding: 0;
}
h2.hdr {
  color: #fff;
  font-size: 30px;
  text-shadow: 0px 0px 8px #000;
  padding: 75px 0 0 0;
  margin: 0 0 10px 10px;
}
h3.hdr {
  color: #fff;
  font-size: 24px;
  text-shadow: 0px 0px 8px #000;
  margin-bottom: 20px;
  text-align: center;
}
h4.hdr {
  color: #DBDBDB;
  font-size: 16px;
  text-shadow: 0px 0px 8px #000;
  padding: 0;
  margin: 0 0 10px 10px;
}

h3 {
  font-size: 24px;
  line-height: 24px;
}

h4 {
  font-size: 22px;
  color: #333;
}


h5 {
  font-size: 20px;
}

h6 {
  font-size: 18px;
}

h4, h5, h6 {
  line-height: 18px;
}

hr {
  border-top: 1px solid #E3E3E3;
  border-bottom: 1px solid #EDEDED;
}

legend {
font-weight:bold;
}

:focus {outline: 0}

img {
  border:none;
  outline:0;
}

.image-left {
  float: left;
  margin-right: 20px;
  margin-bottom: 10px;
}

.image-right {
  float: right;
  margin-left: 20px;
  margin-bottom: 10px;
}

.image-inline {
  margin-top: 15px;
  margin-bottom: 15px;
}

.image-border {
  padding: 7px;
  border: 1px #ddd solid;
  box-shadow: 0px 0px 5px rgba(3,3,3,0.2);
}

.video-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px; height: 0; overflow: hidden;
}

.video-container iframe,
.video-container object,
.video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.map-wrapper {
position: relative;
padding-bottom: 100%;
padding-top: 0px;
height: 0px;
overflow: hidden;
margin-bottom: 20px;
}
.map-wrapper iframe, .map-wrapper object, .map-wrapper embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

.culturerollover {
  width: 20%;
  height: 300px;
  display: inline-block;
  float: left;
  margin-bottom: 85px;
}
.culturerollover h5 {
  text-align: center;
  font-size: 1em;
  font-weight: bold;
  margin: 15px 0 0 0;
  padding: 0;
}
.culturerollover p {
  text-align: center;
  font-size: 0.9em;
}
.homerollover {
  width: 33%;
  height: 262px;
  display: inline-block;
  float: left;
}
/* crossfade images */
.cf {
  position:relative;
  width:100%;
  height: 100%;
  margin:0 auto;
}

.cf img {
  position:absolute;
  left:0;
  width:100%;
  height:100%;
  -webkit-transition: opacity 0.5s ease-in-out;
  -moz-transition: opacity 0.5s ease-in-out;
  -o-transition: opacity 0.5s ease-in-out;
  transition: opacity 0.42s ease-in-out;
}

.cf img.top:hover {
  opacity:0;
}

.motto {
  color: #1fbede;
  font-weight: bold;
  font-size: 1.5em;
  font-style: italic;
  text-align: center;
}

/* end generic css */

body {
  margin: 0;
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
  font-size: 16px;
  line-height: normal;
  color: #333;
  background-color: #fff;
}

/* outermost container div */
#outer-wrapper {
  padding-top: 10px;
  padding-bottom: 3px;
  background-color: #000;
}

#header-wrapper {
  background-color: #000;
}
#header-wrapper p, #mainmenu p, #blocks p, #tagline p {
  padding: 0;
  margin: 0;
}


/* home header banner */
#banner-hdr-outer {
  color: #fff;
  background: #000 url(../img/header-bg.jpg) top left no-repeat;
}

#banner1-outer {
  background-color: #000;
  padding-top: 20px;
  padding-bottom: 20px;
}

/* has the other bg image */
#columns-outer {
  color: #fff;
  background: #000 url(../img/row-bg.jpg) center center  no-repeat;
  padding-top: 10px;
  padding-bottom: 10px;
}
#column1, #column2 {
  padding: 10px;
}

#banner2-outer {
  color: #666;
  padding: 20px 60px 0px 60px;
  border-top: 3px solid #e8b60f;
  border-bottom: 3px solid #e8b60f;
  margin-bottom: 30px;
  font-size: 24px;
}

#content-container {
  background-color: transparent;
  min-height: 500px;
}

/* in container, has white bg */
#content-column1, #content-column2 {
  padding: 30px 10px 20px 10px;
}

#banner3 {

}

#article {
  padding: 15px 0px 25px 0px;
  background: transparent;
}
#left {
  padding-top: 25px;
  padding-right: 15px;
}

#right {
  padding-top: 25px;
  padding-left: 15px;
}


#copyright-outer {
  background-color: #282829;
  min-height: 30px;
  padding: 40px 10px 40px 10px;
  margin-bottom: 0px;
  color: #FCFAE3;
}
#copyright {
  text-align:center;
  font-size: 13px;
}
#footer {
  padding-bottom: 20px;
}

#footer a {
  text-decoration:none;
  color: #E3F0F7;
}
#footer a:link {
  text-decoration:none;
  color: #E3F0F7;
}
#footer a:visited {
  color: #E3F0F7;
}
#footer a:hover {
  color: #fff;
  text-decoration:underline;
}


.checklist {
  margin-bottom: 45px;
}
.checklist h4 {
  font-size: 20px;
  font-weight: bold;
  line-height: 57px;
  margin: 1.25em 0 0.25em 0;
  background: url(../img/check-blue.jpg) top left no-repeat;
  padding-left: 60px;
}
.checklist p {
  padding-left: 60px;
}
.tight h4 {
  font-size: 18px;
  line-height: 48px;
  margin: 0;
}

/* menu */
#outer-wrapper {
  background: linear-gradient(to bottom, rgba(69,69,69,1) 0%,rgba(43,43,43,1) 100%);
}
#mainmenu li a, #mainmenu li a:hover, #mainmenu li.current a, #mainmenu li.active a {
  text-decoration: none;
}

#mainmenu li {
  margin-left: 0px;
}
#mainmenu .fa {
  font-size: 24px;
}
.dj-megamenu-accordion-dark.dj-align-left .dj-mobile-open-btn {
  margin: 15px auto 0 0 !important;
}

/* newsroom page */
.newsroom {
  border-bottom: 1px solid #ccc;
  clear: both;
}
.newsimg {
  float: left;
  width: 35%;
  float: left;
  padding: 20px;
}
.newsimg img {
  max-width: 100%;
}
.newsitem {
  float: left;
  width: 60%;
}
.newsitem h3 {
  font-size: 18px;
  font-weight: bold;
}


/* joomla */

.page-header {
  margin: 0;
  border-bottom: none;
}

/* search results page */
fieldset.phrases {
  display: none;
}

fieldset.only {
  display: none;
}

.checklist50 {
  float: left;
  width: 44%;
  margin: 20px;
}

.services-list {
  padding-top: 20px;
  padding-bottom: 20px;
}
.services-list h5 {
  padding-top: 25px;
  font-weight: bold;
}
.services-list hr {
  clear: both;
  padding-top: 10px;
  padding-bottom: 10px;
}

.mission {
  clear: both;
  width: 50%;
  margin: 0 auto;
  background: linear-gradient(#fff, #b8e3f5);
  border-radius: 20px;
  border: 2px solid #23bbe0;
  box-shadow:5px 5px 5px rgba(0,0,0,0.3);
  padding: 15px;
  font-size: 1.1em;
}

.bluebg {
  width: 40%;
  padding: 15px;
  margin: 5px 0px 20px 35px;
  float: right;
  color: #fff;
  background-color: #0C364F;
  border-radius: 12px;
  border: 2px solid #0D447D;
  box-shadow:5px 5px 5px rgba(0,0,0,0.3);
  font-size: 0.9em;
}
.graybg {
  width: 25%;
  padding: 15px;
  margin: 5px 0px 5px 35px;
  float: left;
  background-color: #E2E2E2;
  border-radius: 12px;
  border: 2px solid #01C3F6A;
  box-shadow:5px 5px 5px rgba(0,0,0,0.3);
  font-size: 0.9em;
  min-height: 500px;
}
.graybg h3 {
  font-size: 1.4em;
  font-weight: bold;
  text-align: left;
  text-decoration: underline;
}

.col25 {
  width: 23%;
  padding: 5px;
  float: left;
}

/* page backgrounds */
.col50 {
  width: 40%;
  padding: 15px;
  margin: 20px;
  float: left;
  background-color: rgba(255,250,216,0.90);
  border-radius: 20px;
  border: 2px solid #efeac6;
  box-shadow:5px 5px 5px rgba(0,0,0,0.3);
}
.col50 h2 {
  border-bottom: 2px solid #64D6F2;
  font-weight: bold;
  text-align: center;
  font-size: 30px;
  line-height: 36px;
  padding-bottom: 15px;
}
.col50-white {
  width: 43%;
  padding: 0 15px 15px 15px;
  margin: 0 20px 20px 20px;
  float: left;
}
.col50-white h3 {
  font-size: 30px;
  font-weight: bold;
  text-align: center;
  line-height: 1.4em;
  border-bottom: 5px solid #FFD373;
  padding-bottom: 10px;
  margin-top: 0.25em;
}
.col50-white h6 {
  color: #0B4A7E;
  font-weight: bold;
  margin-bottom: 0.5em;
  line-height: 1.4em;
}
.col33 {
  width: 25%;
  padding: 0 15px 15px 15px;
  margin: 20px;
  float: left;
}

.whitebg {
  background-color: #fff;
  padding: 20px;
  margin-top: 40px;
  min-height: 400px;
}
/* maintains list padding with floated images */
.whitebg ul, .whitebg ol {
  width: auto;
  overflow: hidden;
}
/* page bg's */

/* industries */
div.automotive-manufacturing {
  background: transparent url(../img/page-bgs/automotive-manufacturing.jpg) top center no-repeat;
}
div.chemical-production {
  background: transparent url(../img/page-bgs/chemical-production.jpg) top center no-repeat;
}
div.food-beverage {
  background: transparent url(../img/page-bgs/food-beverage.jpg) top center no-repeat;
}
div.glass-plastic-manufacturing {
  background: transparent url(../img/page-bgs/glass-plastic-manufacturing.jpg) top center no-repeat;
}
div.oem-manufacturing {
  background: transparent url(../img/page-bgs/oem-manufacturing.jpg) top center no-repeat;
}
div.packaging {
  background: transparent url(../img/page-bgs/packaging.jpg) top center no-repeat;
}
div.pet-care {
  background: transparent url(../img/page-bgs/pet-care.jpg) top center no-repeat;
}
div.pharmaceuticals {
  background: transparent url(../img/page-bgs/pharmaceuticals.jpg) top center no-repeat;
}
div.utilities {
  background: transparent url(../img/page-bgs/utilities.jpg) top center no-repeat;
}

/* services */
div.data-collection,
div.electrical-engineering,
div.hmi-development,
div.motion,
div.plc-programming,
div.project-methodology,
div.safety,
div.training,
div.vision {
  background: transparent url(../img/page-bgs/services.jpg) top center no-repeat;
}

/* end page bg's */


/* category blog layout */
div.leading-0, div.leading-1, div.leading-2, div.leading-3, div.leading-4,
div.leading-5, div.leading-6, div.leading-7, div.leading-8, div.leading-9,
div.leading-10, div.leading-11, div.leading-12, div.leading-13, div.leading-14,
div.leading-15, div.leading-16, div.leading-17, div.leading-18, div.leading-19 {
  padding-bottom: 20px;
  border-bottom: #ccc 1px solid;
  margin-bottom: 20px;
  clear: both;
}

/* tablet width and lower */
@media only screen and (max-width: 979px) {
h1.title {
  font-size: 36px;
}
h2.hdr {
  padding: 15px 0 0 0;
}
.homerollover {
  width: 49%;
}
.culturerollover {
  width: 45%;
  height: 425px;
}
.col50 {
  width: 80%;
}
.col50-white {
  width: 88%;
}
.col33 {
  width: 88%;
  padding: 0 15px 15px 15px;
  margin: 20px;
  float: left;
}
.mission {
  width: 95%;
  margin: 0 auto;
}
#banner2-outer {
  padding: 20px;
}
.checklist50 {
  width: 95%;
}
.checklist {
  margin-bottom: 15px;
}
.graybg {
  width: 85%;
  margin-bottom: 30px;
  min-height: 350px;
}
.newsitem {
  float: left;
  width: 90%;
}
}

/* Desktops and laptops */
@media only screen and (min-width : 1200px) {
}

/* tablet width */
@media only screen and (min-width: 980px) and (max-width: 1199px) {
.homerollover {
  width: 49%;
}
.culturerollover {
  width: 33%;
  height: 400px;
}
.col50-white {
  width: 40%;
}
}

/* small tablet */
@media only screen and (max-width: 767px) {
.col50-white {
  width: 88%;
}
}

/* phone */
@media only screen and (max-width: 480px)  {
.culturerollover {
  width: 95%;
  height: 400px;
}
.homerollover {
  width: 95%;
  height: 200px;
}
.col50-white {
  width: 88%;
}
}

/* testimonial slider */
.twoj_slider_block.twoj_newsslider_theme5 {
  font-size: 0.9em !important;
}
.twoj_slider_block.twoj_newsslider_theme5 {
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
}

#content-column2 h3 {
  margin-top: 0;
}
