/*RESET*/
abbr,address,article,aside,audio,b,blockquote,body,caption,cite,code,dd,del,dfn,div,dl,dt,em,fieldset,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,p,pre,q,samp,section,small,span,strong,sub,sup,table,tbody,td,tfoot,th,thead,time,tr,ul,var,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:0 0}article,aside,figure,footer,header,hgroup,nav,section{display:block}nav ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:0 0}ins{background-color:#ff9;color:#000;text-decoration:none}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:700}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted #000;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}html{-webkit-font-smoothing:antialiased;overflow-y:scroll}pre{padding:15px;white-space:pre;white-space:pre-wrap;white-space:pre-line;word-wrap:break-word}input[type=radio]{vertical-align:text-bottom}input[type=checkbox]{vertical-align:bottom}.ie6 input{vertical-align:text-bottom}button,input[type=button],input[type=submit],label{cursor:pointer}*{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}body{line-height:1.5;font-size:16px;font-family:Raleway,sans-serif}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}img{max-width:100%;height:auto}li,p{margin-bottom:.7em}

/*
 *  General
 ************************************************************/
body{overflow: hidden; }
p{font-size: .9em; }
a:hover, a.active{color: #34CCFF !important; }
a, a:hover{text-decoration: none; -webkit-transition: .5s; -moz-transition: .5s; -o-transition: .5s; transition: .5s; }
.wrap{max-width: 1500px; padding: 0 1em; margin: 0 auto; }
.right{float: right; margin-left: 1em; }
.left{float: left; margin-right: 1em; }
.right,
.left{margin-bottom: 1em; }
.btn{text-align: center; padding: .5em 1em; border: 2px solid #fff; -webkit-border-radius: 15px; -moz-border-radius: 15px; border-radius: 15px; text-shadow: 0 0 1px #000; }
.btn.blue{background: #5472d2; color: #fff; }
.btn.blue:hover{background: #3c5ecc; color: #fff !important; }

blockquote{border-left: 3px solid #34CCFF; padding: 2em 1em; font-style: italic; font-weight: 600; }

.contentSection{padding: 6em 0 8em 0; }
.contentSection h4{font-size: 1.5em; margin-bottom: 1em; }
.sectionHeading{text-align: center; text-transform: uppercase; font-size: 3em; padding: 1em 0 1.5em 0; position: relative; }
.sectionHeading:after{content: ' '; display: block; position: absolute; bottom: 1em; width: 3em; left: 50%; margin-left: -1.5em; border-bottom: 3px solid #34CCFF; }

.cf:before,
.boxWrap:before,
.cf:after,
.boxWrap:after{content: ' '; display: table; }
.cf:after,
.boxWrap:after{clear: both; }
.cf,
.boxWrap{*zoom: 1; }
.boxWrap{ }
.boxWrap .box{float: left; margin-left: 2.5%; }
.boxWrap .box:first-child{margin-left: 0; }
.boxWrap-2{ }
.boxWrap-2.holder-4 .box:nth-child(3){margin-left: 0; }
.boxWrap-2.holder-4 .box{ width: 48%; }
.boxWrap-2 .box{width: 48%; }
.boxWrap-3 .box{width: 31%; }
.boxWrap-4 .box{width: 23%; }

.callout{padding: 7em 3.5em; border-top: 5px solid #5472d2; background: url(../img/p5.png); text-align: center;-moz-box-shadow: inset 0 0 10px #000;
-webkit-box-shadow: inset 0 0 10px #000;
box-shadow: inset 0 0 30px -9px #000; }

.callout h6{font-size: 2.19em; text-shadow: -1px 0px 2px #000, 1px 2px 1px #BDBDBD;letter-spacing: .11em;}

/*
 *  Main Header
 *************************************************************/
.logo{max-width: 210px; -webkit-transition: width .25s; -moz-transition: max-width .25s; -o-transition: max-width .25s; transition: max-width .25s; }
.navToggle{display: none; cursor: pointer; }
.mainNav{padding: 1em 0; overflow: hidden; font-family: 'Open Sans', sans-serif; font-weight: 800; position: fixed;top: 0;left: 0;width: 100%;background: #fff;box-shadow: 0 0 5px #000;z-index: 1; -webkit-transition:  .25s; -moz-transition:  .25s; -o-transition:  .25s; transition:  .25s; }
.mainNav .logo{float: left; }
.mainNav ul{float: right; padding-top: 2em;}
.mainNav li{display: inline-block; }
.mainNav a{color: #000; display: block;padding: 1em;font-size: 1.3em; -webkit-transition: font-size .25s, padding .25s, color .25s, background .25s; -moz-transition: font-size .25s, padding .25s, color .25s, background .25s; -o-transition: font-size .25s, padding .25s, color .25s, background .25s; transition: font-size .25s, padding .25s, color .25s, background .25s; }

.inNav.mainNav{ }
.inNav.mainNav .logo{max-width: 130px; }
.inNav.mainNav a{font-size: 1em; padding: .65em; }

.hero{padding: 15em 0 5em 0; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
.home .hero{padding: 10em 0; background: #000 url(../img/hero.jpg) center center;  margin-top: 10em;}
.contact .hero{background: #000 url(../img/contactHero.jpg) center bottom; }
.about .hero{background: #000 url(../img/aboutHero.jpg) center top; }
.ctpat .hero{background: #000 url(../img/ctpatHero.jpg) center top; }
.services .hero{background: #000 url(../img/servicesHero.jpg) center top; }
.hero h1{color: #FFB440; }
.hero h1,
.hero h2{text-align: center; text-transform: uppercase; font-family: 'Open Sans', sans-serif; }
.hero h1{font-size: 3em;  text-shadow: 0 0 1px #000;letter-spacing: .25em;}
.hero h2{font-size: 1.85em; font-weight: 800; margin-bottom: 2em; color: #FFFFFF;text-shadow: 1px 1px 5px #000;}
.hero .boxWrap{-webkit-transform-style: preserve-3d; }
.hero figure{padding: 1em;  background: rgba(255,255,255,.9); -moz-box-shadow: 0 0 10px #3A3A3A; -webkit-box-shadow: 0 0 10px #3A3A3A; box-shadow: 0 0 10px #3A3A3A; -webkit-transition: .25s; -moz-transition: .25s; -o-transition: .25s; transition: .25s; }
.hero figure:hover{-webkit-transform: translateY(-3.5%); -ms-transform: translateY(-3.5%); transform: translateY(-3.5%); }
.hero figure p,
.hero figure h4{margin-bottom: 1em; }
.hero figure p{font-size: 1.2em; }
.hero figure h4{font-size: 1.5em; }
.hero figure .btn{float: right; margin-top: 1.5em; }/********************************/

/*
 *  Copy
 *******************************************************************************************/
.copy{padding: 2%; width: 70%; float: right; }
.copy h3{font-size: 2em; margin-bottom: 1.25em; }

/*
 *  Sidebar
 *******************************************************************************************/
.sideBar{width: 28%; padding: 2%; float: left; }
.sideBar section{margin-bottom: 4em; }
.sideBar ul{list-style: none; }
.sideBar li{padding: .5em; border-bottom: 1px solid #ccc; }
.sideBar h4{text-transform: uppercase; font-size: 1.4em; }

/*
 *  Home Page
 *******************************************************************************************/
.contentSection .box h4{font-size: 1.25em; }
/* Services Listing */
.servicesListing{color: #fff; background: #714D9E url(../img/world_map.png) center fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; -moz-box-shadow: inset 0 0 10px #000 ; -webkit-box-shadow: inset 0 0 10px #000; box-shadow: inset 0 0 20px #000; }
.servicesListing .box{margin-bottom: 1em; }
.servicesListing .box{padding: 1em 1em 1em 6em; }

/* Popular Resources */
.popularResources{ }
.popularResources .boxWrap{margin-bottom: 4em; }
.popularResources .box{padding: 1em; }
.popularResources .box a{float: right; margin-top: 1.5em; }
.popularResources .btn{margin: 4em auto 0 auto; display: block; width: 250px; font-size: 1.5em; }

/*
 *  About Page
 *******************************************************************************************/
.about .sideBar{margin-right: 2%; }
.about .topImg{margin-bottom: 2.5em; }
.about .copy .right{width: 40%; }

/*
 *  Services Page
 *******************************************************************************************/
.services .copy ul{list-style: none; }
.services .copy h3 + ul{margin-left: 2.5em; margin-bottom: 3em; list-style: inside; }
.services .copy h3 + ul li{margin-bottom: 0; }
.services .serviceListing{margin-top: 4em; }
.services .serviceListing li{margin-bottom: 4em; }
.services .serviceListing img{width: 15%;}

/*
 *  CTPAT Page
 *******************************************************************************************/
.ctpat .dlItems{margin: 4em 0; padding: 2em; text-align: center; }
.ctpat .dlItems .btn{margin: 1em auto; display: block; width: 75%; }

/*
 *  Contact Page
 *******************************************************************************************/
.contact .mainContent h2{font-size: 2em; }
.contact .mainContent .box p,
.contact .mainContent .box a{font-size: 1.35em; }
.contact .mainContent .box a{display: block; }
.contact .mainContent .box ul{list-style: none; }
.contactForm form input,
.contactForm form textarea{display: block; width: 100%; font-size: 1.5em; padding: .5em; border: 0; border-bottom: 3px solid #000; -webkit-transition: border .5s; -moz-transition: border .5s; -o-transition: border .5s; transition: border .5s; }
.contactForm form input:focus,
.contactForm form textarea:focus{ border-bottom: 3px solid #34CCFF;}
.contactMap img{display: inline-block; vertical-align: middle; width: 100%;}
.contactForm .btn{font-size: 1.3em; margin-top: 1.5em; float: right; }
.contact .frmchkr{display: none; }
.contact .mainContent .box a.reloadCaptcha{font-size: .75em; text-align: center; }
#captcha{display: block; margin: 0 auto; }
/*
 *  Main Footer
 *******************************************************************************************/
.mainFooter{background: #222222; padding: 6em 0; border-top: 5px solid #3c5ecc; }
.mainFooter *{color: #fff; }
.mainFooter ul{list-style: none; }
.mainFooter li{margin-bottom: 1em; }
.mainFooter h5{font-size: 1.7em; margin-bottom: 1em; }
.quote{position: absolute; top: 10%; left: 25%; width: 50%; background: #fff; z-index: 2; padding: 5%; display: none; -moz-opacity: 0; -khtml-opacity: 0; opacity: 0; border: 1px solid #ccc; -moz-box-shadow: 0 0 30px #000; -webkit-box-shadow: 0 0 30px #000; box-shadow: 0 0 30px #000; -webkit-transition:  1.5s; -moz-transition:  1.5s; -o-transition:  1.5s; transition:  1.5s; -webkit-transform: scale(4) translate(0, 0) rotate(360deg); -moz-transform: scale(4) translate(0, 0) rotate(360deg); -o-transform: scale(4) translate(0, 0) rotate(360deg); transform: scale(4) translate(0, 0) rotate(360deg) }

.quote.showing{-moz-opacity: 1; -khtml-opacity: 1; opacity: 1; -webkit-transform: scale(1) translate(0, 0) rotate(0deg); -moz-transform: scale(1) translate(0, 0) rotate(0deg); -o-transform: scale(1) translate(0, 0) rotate(0deg); transform: scale(1) translate(0, 0) rotate(0deg); border-radius: 10px;}

.quote .closeBtn{position: absolute; top: 1em; right: 1em; font-size: 2em; color: #f00; }
.quote h5{font-size: 2.5em; }
.quote p{font-size: 1.8em; }
.quote label{margin-bottom: 1em; }
.quote label,
.quote label span{display: block; width: 100%; }
.quote label input,
.quote label textarea{display: block; padding: 1em; width: 100%; }



html.contentLoading{
    box-shadow: inset 0 0 10px 41px #000;
}
html.contentLoading body{
    transform: scale(0.95) translate(0, -200px);
}

@media only screen and (max-width: 71.875em) {  /* 1150px */
    .home .hero{padding: 3% 2%; }
    .boxWrap-4 .box{width: 48.5%; padding: 1%; margin-bottom: 2em; }
    .boxWrap-4 .box:nth-child(3){margin-left: 0; }
}

@media only screen and (max-width: 69.4375em) { /* 1111px */
	body{font-size: 14px; }
  .logo{max-width: 110px; margin-top: .75em; }
.inNav .mainNav .logo{max-width: 95px; }
}


@media only screen and (max-width: 61.875em) {  /* 990px */
	.mainNav a{font-size: 1.1em; }
  .hero h2,
  .sectionHeading{font-size: 2.2em; }
}

@media only screen and (max-width: 58.125em) {  /* 930px */
	.contact .contentSection .boxWrap .box{width: 48%; }
  .contact .contentSection .boxWrap .box:last-child{clear: both; float: none; width: 100%; margin-left: 0; padding-top: 4em; }
}

@media only screen and (max-width: 60.625em) {  /* 970px */
    .quote{width: 600px; margin-left: -300px; left: 50%; }
}

@media only screen and (max-width: 48em) { /* 768px */
    body{font-size: 12px; }
  .js .navToggle{display: block; float: right; width: 45px; margin-top: 2em;}
  .js .navToggle i{display: block; height: 3px; margin-bottom: 6px; background: #000; }
  .home .hero{margin-top: 0; }
  .mainNav{position: static; }
  .js .mainNav ul{display: none; }
	.mainNav ul{float: none; display: block; clear: both; }
  .mainNav ul li{display: block; width: 50%; float: left; text-align: center; }
  .mainNav .btn{width: 200px; margin: 0 auto; }
  
  .popularResources .boxWrap{margin-bottom: 0; }
  .popularResources .box{width: 100%; margin: 0;}
}

@media only screen and (max-width: 42.5em) {    /* 680px */
    .copy,
    .sideBar{float: none; width: 100%; }
    .contact .mainContent h2{font-size: 1.7em; }
}

@media only screen and (max-width: 40.625em) {  /* 650px */
    .quote{width: 90%; left: 5%; margin-left: 0; }
    .quote h5{font-size: 2em; }
    .quote p{font-size: 1.2em; }
    .quote .closeBtn{top: 0; right: .5em; }
}

@media only screen and (max-width: 28.75em) {  /* 460px */
    .quote h5{font-size: 1.6em; }
}

@media only screen and (max-width: 28.75em) {   /* 460px */
	.hero h2,
  .sectionHeading{font-size: 1.7em; }
  .contentSection h4{font-size: 1.25em; }
  .mainNav ul li{width: 100%; }
  
  .ctpat .dlItems .btn{width: 150px; }
  .ctpat .dlItems .box,
  .ctpat blockquote.box,
  .ctpat blockquote.box + .box{float: none; width: 100%; }
  .ctpat blockquote.box{margin: 2em auto; }
  .mainFooter .box{float: none; width: 100%; }
  
  .contact .contactBoxen.boxWrap .box{width: 100%; float: none; margin: 2em auto; padding: 0 2em; }
  .contact .contactBoxen.boxWrap .box:last-child{padding: 0;  }
}
