@charset "UTF-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css?family=Montserrat:400,400i,700,700i');
@import url('https://fonts.googleapis.com/css?family=Roboto:400,400i,900,900i');

body {
  font-family: 'Roboto';
  font-weight: 400;
}
img {
  max-width: 100%;
  height: auto;
}
a{
  color:#0038F0;
}
p, h1, h2, h3, h4, h5 {
  margin: 0px;
  padding: 0px;
  margin-bottom: 20px;
  line-height:140%;
}
h1, h2, h3, h4, h5 {
  font-family: 'Montserrat';
  font-weight: 700;
}
p:last-child {
  margin-bottom: 0px;
}

#toparea {
  background-color: #000;
  padding: 12px 0px;
  text-align: right;
  color: #fff;
}
#topnav {
  margin: 0px;
  padding: 0px;
  text-align: right;
  display: block;
  font-family: 'Montserrat';
  padding-top: 7px;
}
#topnav li {
  display: inline-block;
  float: none;
  font-size: 13px;
  color: #fff;
  margin-left: 10px;
  text-transform: uppercase;
  letter-spacing: 1px;
}
#topnav li a {
  color: #fff;
}
#topnav .social-icons img {
  width: 22px;
  height: auto;
  margin: 0px 1px;
}
#topnav .social-icons img:hover {
  opacity:.7;
}
#compinfo {
  text-align: left;
  font-size: 11px;
  margin-bottom:6px;
}
#branding {
  padding: 6px 0px;
  position: relative;
  display: block;
  z-index: 2;
  background-color: #0038f0;
}
img#logo {
  max-width: 175px;
  margin-bottom:8px;
  margin-top:8px;
  height: auto;
  width: 100%;
}
nav#main ul {
  margin: 0px;
  padding: 0px;
  text-align: right;
  margin-top: 26px;
}
nav#main ul li {
  margin: 0px;
  padding: 0px;
  display: inline-block;
  margin-left: 12px;
}
nav#main ul li:first-child {
  margin-left: 0px;
}
nav#main ul li a {
  color: #fff;
  font-size: 14px;
  padding: 13px 0px;
  display: block;
  font-weight: 400;
  font-family: 'Montserrat';
  text-decoration: none;
}
nav#main ul li a:hover {
  text-decoration: underline;
}
#menu-icon {
  display: hidden;
  width: 40px;
  height: 40px;
  background-color: #0038f0;
  background-image: url('menu-toggle.png');
  background-size: cover;
}
a:hover#menu-icon {
  background-color: #000;
}

#sliderow{
  z-index:1;
}
.nivo-nextNav {
  right: 25px;
  background-image: url(right-arrow.png);
  width: 30px;
  height: 58px;
  text-indent: -3000px;
  background-size: cover;
  opacity: 0.7;
  filter: alpha(opacity=70); /* For IE8 and earlier */
}
.nivo-prevNav {
  left: 25px;
  background-image: url(left-arrow.png);
  width: 30px;
  height: 58px;
  text-indent: -3000px;
  background-size: cover;
  opacity: 0.7;
  filter: alpha(opacity=70); /* For IE8 and earlier */
}
.nivo-nextNav:hover, .nivo-prevNav:hover {
  opacity: 1.0;
  filter: alpha(opacity=100); /* For IE8 and earlier */
}
.nivo-caption{
  background:none;
  text-align:center;
  opacity:1;
  position:absolute;
  left:0px;
  top:2px;
  width:98%;
}
.cccaption h1 {
  text-align:center;
  font-size:24px;
  color:#ffffff;
  font-weight:700;
  text-shadow:1px 1px 1px #000;
}

#homethree {
  padding: 40px 0px;
  text-align: center;
  padding-bottom: 50px;
  background-size: 100% auto;
  background-position: center bottom;
  background-repeat: no-repeat;
}
#homethree img {
  margin-bottom: 8px;
}
#homethree h2 {
  font-size: 24px;
  color: #0038f0;
  margin-bottom: 10px;
}
#homethree p a {
  display: inline-block;
  padding: 10px 20px;
  background: #0038f0;
  color: #fff;
  text-align: center;
  font-family: 'Montserrat';
  border: 1px solid #0038f0;
}
#homethree p a:hover {
  background: #000;
  text-decoration: none;
  color: #fff;
  border: 1px solid #000;
}
#home-products {
  padding: 50px 0;
  background-color:#EDEDED;
}
#home-products h2 {
  color: #0038f0;
  font-size: 24px;
  text-align: center;
}
ul#prodcats{
  text-align: center;
  display: block;
  margin:0;
  padding:0;
  list-style-type:none;
}
ul#prodcats li{
  width:49%;
  display: inline-block;
  list-style-type:none;
  margin:0;
  padding:0;
  margin-bottom: 10px;
}
ul#prodcats li a{
  display: block;
  padding:20px 0px;
  margin:0 10px;
  font-size: 20px;
  background:#0038f0;
  color:#fff;
  border:1px solid #fff;
  font-family: 'Montserrat';
  text-align: center;
}
ul#prodcats li a:hover{
  background:#000;
  color:#fff;
  text-decoration:none;
}
.widget {
  background-color: #f2f2f2;
  padding: 30px;
  border-bottom: 2px solid #000000;
}
#footerboxes {
  background:#000;
  padding: 50px 0px;
}
#footerboxes h2 {
  font-size: 24px;
  font-weight: 700;
  color: #fff;
  text-align: center;
}
#footerboxes p {
  color: #fff;
  margin-bottom: 20px;
  text-align: center;
}
#footerboxes p a, #footerboxes a {
  color: #fff;
  font-weight:bold;
}
#footerboxes .social-icons img {
  width: 28px;
  height: auto;
  margin: 0px 1px;
}
#footerboxes .social-icons img:hover {
  opacity:.7;
}
#bottom-bar {
  background-color: #333;
  padding-top: 10px;
  padding-bottom: 10px;
  color: #eeeeee;
  text-align: center;
}
.alignright {
  float: right;
  margin-left: 15px;
  margin-bottom: 15px;
}
.alignleft {
  float: left;
  margin-right: 15px;
  marign-bottom: 15px;
}
#pageinterior {
  padding: 30px 0px 30px;
}
#pagetitle {
  background-color:#f2f2f2;
}
#pagetitle h1 {
  color: #000;
  font-size: 24px;
  margin-bottom: 0px;
  padding: 20px 0px 20px;
  font-weight: 700;
}
#pageinterior {
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center top;
}
.pagecontent {
  font-size: 14px;
  color: #6f777a;
}
.pagecontent p {
  font-size: 14px;
  color: #000;
}
.pagecontent h2, .pagecontent h3, .pagecontent h4, .pagecontent h5, .pagecontent ul, .pagecontent p {
  margin-bottom: 20px;
}
.pagecontent h2 {
  font-size: 24px;
  color: #0038f0;
}
.pagecontent h3 {
  font-size: 21px;
  color: #000;
}
.pagecontent h4 {
  font-weight: 400;
  font-size: 18px;
  font-family: 'Roboto';
  color: #595959;
}
.pagecontent p {
  font-size: 14px;
  color:#6f777a;
}
.pagecontent ul {
  margin-top: 10px;
}
.pagecontent ol {
    margin-top: 10px;
}
.pagecontent ul li {
    list-style: square outside none;
    margin-left: 20px;
    line-height: 125%;
    padding-bottom: 6px;
    font-size: 14px;
    color:#000;
}
.pagecontent ol li {
    list-style: decimal outside none;
    margin-left: 20px;
    line-height: 125%;
    padding-bottom: 6px;
    font-size: 14px;
    color:#000;
}
.ph3 {
  font-size: 23px !important;
  color: #0038f0 !important;
  font-weight:500 !important;
  line-height:100% !important;
}
.ph4 {
  font-size: 18px !important;
  color: #555555 !important;
  font-weight: 600 !important;
  line-height:135% !important;
}

a.bluebtn, a.bluebtn:visited, a.bluebtn:active, a.bluebtn:link {
  color:#0038F0 !important;
  text-transform:uppercase;
  display:inline-block;
  border:1px solid #0038F0;
  padding:10px 20px;
  font-weight:500 !important;
}
a.bluebtn:hover {
  text-decoration:none;
  background:#0038F0;
  color:#fff !important;
}
a.bluebtn2, a.bluebtn2:visited, a.bluebtn2:active, a.bluebtn2:link {
  color:#0038F0 !important;
  text-transform:uppercase;
  display:inline-block;
  border:1px solid #0038F0;
  padding:10px;
  font-weight:500 !important;
}
a.bluebtn2:hover {
  text-decoration:none;
  background:#0038F0;
  color:#fff !important;
}

.__cf_email__ {
  color: #0038F0;
}

.embed-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}
.embed-container iframe, .embed-container object, .embed-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
a.redbtn {
  display: inline-block;
  color: #fff;
  padding: 10px 20px;
  background: #0038f0;
}
a.redbtn:hover {
  background-color: #000;
  text-decoration: none;
  color:#fff;
}

#navform{
  text-align:right;
}
#navform form{
  display: inline-block;
}
#navform form input{
  display: block;
  margin-left: 8px;
  max-width: 190px;
  height: 32px;
  border: 1px solid #D9D9D9;
  border-radius: 5px;
  -moz-border-radius: 5px;
  padding-left: 26px;
  background-image: url(magnify.png);
  background-position: 8px 8px;
  background-repeat: no-repeat;
  text-align: left;
  color: #000;
  text-transform: none;
  font-size: 11px;
}

/**** cymCMS specific ****/
.right {
  float: right;
  margin-left: 15px;
  margin-bottom: 15px;
}
.left {
  float: left;
  margin-right: 15px;
  margin-bottom: 15px;
}

/* gallery */
#gallery-masonry {
    margin: 0 auto;
    width: auto;
}

#gallery-masonry div.item {
    display: block;
    width: 160px;
    float: left;
    background-color: #ffffff;
    padding: 4px 4px;
    border-radius: 5px;
    margin-top: 10px;
    margin-left: 10px;
    opacity: 1;
    -moz-transition: opacity 0.3s ease-in-out;
}
#gallery-masonry div.witem {
    display: block;
    width: 160px;
    float: left;
    background-color: #ffffff;
    padding: 4px 4px;
    border-radius: 5px;
    margin-top: 10px;
    margin-left: 10px;
    opacity: 1;
    -moz-transition: opacity 0.3s ease-in-out;
}

.cymProdCaption {
  padding: 1px;
  font-size: 14px;
  font-weight:500;
  color: #0038f0;
}
.cymProdCaption a {
  color: #0038f0;
  text-decoration:none;
}
.cymProdCaption a:hover {
  color: #0038f0;
  text-decoration:underline;
}

.thumbnail {
  display: block;
  padding: 4px;
  line-height: 20px;
  border: 1px solid #bbb;
  -webkit-border-radius: 4px;
     -moz-border-radius: 4px;
          border-radius: 4px;
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055);
     -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055);
          box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055);
  -webkit-transition: all 0.2s ease-in-out;
     -moz-transition: all 0.2s ease-in-out;
       -o-transition: all 0.2s ease-in-out;
          transition: all 0.2s ease-in-out;
}
a.thumbnail:hover,
a.thumbnail:focus {
  border-color: #0088cc;
  -webkit-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25);
     -moz-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25);
          box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25);
}

.thumbnail > img {
  display: block;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.thumbnail .caption {
  padding: 9px;
  color: #555555;
}
.vthumbnail {
    border: 1px solid #bbb;
    border-radius: 4px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055);
    display: block;
    margin: 8px;
    padding: 4px;
    transition: all 0.2s ease-in-out 0s;
    width: 330px;
}

.cymDisplayTitle { display: none; }
.cymBody { padding: 8px; line-height: 130%; }
.cymBody ul li {
    list-style: disc outside none;
    margin-left: 20px;
    line-height: 125%;
    padding-bottom: 4px;
}
.cymBody ol li {
    list-style: decimal outside none;
    margin-left: 20px;
    line-height: 125%;
    padding-bottom: 4px;
}
.cymBody strong,b { font-weight: bold; }
.cymBody em,i { font-style: italic; }
.cymArticleBody { padding-top:6px; }
.cymBody .cymHeader, .cymSectHeader, .cymArticleHeader, .cymTitle, .cymGalleryHeader, span.cymHeader {
  line-height: 120%;
  font-size:18px;
  font-weight: normal;
}
.cymCalcTable td {
  padding: 3px;
}
.cymBody h4 {
  margin-top: 8px;
  margin-bottom: 10px;
}

.cymGallery { padding: 8px; line-height: 130%; }
.cymGallery ul li {
    list-style: disc outside none;
    margin-left: 20px;
    line-height: 120%;
    padding-bottom: 4px;
}
.cymGallery ol li {
    list-style: decimal outside none;
    margin-left: 20px;
    line-height: 120%;
    padding-bottom: 4px;
}

.cymGallery strong,b { font-weight: bold; }
.cymGallery em,i { font-style: italic; }

ul.cymSiteMap { list-style: disc outside none; margin-left: 10px; }
ul.cymSiteMap ul li { line-height: 100%; }
ul.cymSiteMap ul.cymSiteMap { list-style: disc outside none; margin-left: 20px; }
ul.cymSiteMap ul.cymSiteMap ul li { line-height: 100%; }

#sidebar .widget {
  height: auto;
  margin-bottom: 20px;
  padding: 20px 32px;
  color: #000;
}
.widget ul {
  margin-left:16px;
}
.sidenav_elem, .sidenav_static {
  color: #000000;
  margin-bottom:8px;
  list-style-type:disc;
  padding-left:0;
}
.sidenav_static {
  font-weight: 600;
  list-style-type:none;
  margin-left:-16px;
  margin-top: 8px;
}
.sidenav_elem a {
  color: #666666;
  text-decoration:none;
}
.sidenav_elem a:hover {
  color: #222222;
  text-decoration:underline;
}
#sidebar, #sidebar p {
  color: #000;
  font-size: 14px;
}

div.yitem {
    display: table-cell;
    width: 235px;
    float: left;
    background-color: #ffffff;
    padding: 4px 4px;
    border-radius: 5px;
    margin-top: 10px;
    margin-left: 10px;
    opacity: 1;
    -moz-transition: opacity 0.3s ease-in-out;
}
span.ycaption {
    font-weight: 600;
}
hr.grad { border: 0; height: 0; border-top: 1px solid rgba(0,0,0,0.2); border-bottom: 1px solid rgba(255,255,255,0.3); }

.cymFormTable { width: 99%; }
.cymFormTable .fText { width: 85%; }
.cymFormTable .fTextArea { width: 85%; }
.cymFormTable .fSelect { width: 88%; }
.cymFormBody { padding: 10px 0px 0px 2px }
.cymLabel { color: #555555; }
.cymLabelRequired { color: #555555; }
.cymHelp { color: #777777; font-style: italic; }
.cymRequiredSup { color: red; font-weight: bold; }

.cymSuccess {
    color: #468847;
    background-color: #dff0d8;
    border-color: #d6e9c6;
    padding: 8px;
}
.cymWarning {
    color: #b94a48;
    background-color: #f2dede;
    border-color: #eed3d7;
    padding: 8px;
}
ul.cymWarning { list-style: disc outside none; margin-left: 10px; }
ul.cymWarning li { line-height: 100%; }

.form_gallery {
    margin: 0 auto;
    width: auto;
}
.form_gallery .item {
    display: block;
    width: 160px;
    float: left;
    background-color: #ffffff;
    padding: 4px 4px;
    border-radius: 5px;
    margin-top: 10px;
    margin-left: 10px;
    opacity: 1;
    -moz-transition: opacity 0.3s ease-in-out;
}

/* events calendar */
.fc-header-title h2 { font-size: 15px; color: #000000; line-height:18px; }
.fc-event { border: 1px solid #333333; background-color: #0038f0; }
a.fc-event { text-decoration: none; color: #eeeeee !important; font-size:11px; font-weight:bold; }
a.fc-event:hover { text-decoration: underline; }
a.fc-event:visited { color: #eeeeee !important; }
.fc-event-title { color: #eeeeee !important; font-size:14px !important; font-weight:bold !important; }
.events-table { margin-top:16px; font-size:12px;color:#333333;width:99%;border-width: 1px;border-color: #000000;border-collapse: collapse;}
.events-table th { color:#ffffff; font-size:12px;background-color:#0038f0; border-width: 1px;padding: 8px;border-style: solid;border-color: #000000;text-align:left;}
.events-table tr { background-color:#e6e6e6;}
.events-table td { font-size:12px; border-width: 1px; padding:8px; border-style:solid; border-color: #000000;}
.events-table .tdh { font-weight: 500; }
.events-table tr:hover {background-color:#ffffff;}
a.events-btn{
  background : -moz-linear-gradient(50% 100% 90deg,rgba(10, 49, 180, 1) 0%,rgba(0, 56, 240, 1) 100%);
  background : -webkit-linear-gradient(90deg, rgba(10, 49, 180, 1) 0%, rgba(0, 56, 240, 1) 100%);
  background : -webkit-gradient(linear,50% 100% ,50% 0% ,color-stop(0,rgba(10, 49, 180, 1) ),color-stop(1,rgba(0, 56, 240, 1) ));
  background : -o-linear-gradient(90deg, rgba(10, 49, 180, 1) 0%, rgba(0, 56, 240, 1) 100%);
  background : -ms-linear-gradient(90deg, rgba(10, 49, 180, 1) 0%, rgba(0, 56, 240, 1) 100%);
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#0A31B4', endColorstr='#0038F0' ,GradientType=0)";
  background : linear-gradient(0deg, rgba(10, 49, 180, 1) 0%, rgba(0, 56, 240, 1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0038F0',endColorstr='#0A31B4' , GradientType=0);
  border-left:1px solid #fff;
  border-radius : 6px;
  -moz-border-radius : 6px;
  -webkit-border-radius : 6px;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0A31B4',endColorstr='#0038F0' , GradientType=0);
  text-align: center;
  color: #fff;
  text-decoration: none;
  font-size: 14px;
  font-weight: 700px;
  padding: 8px 16px;
  display: inline-block;
  border-radius: 5px;
  -moz-border-radius: 5px;
  text-transform: uppercase;
  margin-top: 8px;
  margin-bottom: 8px;
}
a.events-btn:hover{
  background:#666;
  text-decoration:none;
  text-shadow:1px 1px 3px #333;
}

.mtop { margin-top:16px; }

.cymLargeCaption {
  font-size: 16px;
  color: #0038f0;
}

.coverage-map-container {
  text-align:left;
}
img.coverage-map {
  max-width: 99%;
  height: auto;
  text-align:left;
}

/* Flip boxes */
.card-grid {
  width:175px;
  height:220px;
  margin: 6px;
  display: inline-block;
}
.card-grid .front, .card-grid .back {
  text-align: center;
  padding: 6px;
}
.card-txt {
  margin-top: -6px;
  padding-top: -6px;
  color: #333;
  font-weight: 500;
  font-size: 13px;
}
.card-back-text {
  font-size: 9px;
  color: #000;
  font-weight:500;
}
.card-img {
  display: block;
  padding: 6px;
  line-height: 8px;
  border: 1px solid #bbb;
  -webkit-border-radius: 4px;
     -moz-border-radius: 4px;
          border-radius: 4px;
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055);
     -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055);
          box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055);
}

.video-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
    margin-bottom:15px;
}
.video-container iframe,
.video-container object,
.video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.topmar4  { margin-top:4px;  }
.topmar8  { margin-top:8px;  }
.topmar10 { margin-top:10px; }
.topmar12 { margin-top:12px; }
.topmar16 { margin-top:16px; }
.topmar24 { margin-top:24px; }
.topmar32 { margin-top:32px; }
.topmar50 { margin-top:50px; }

/************************/
/* Mobile */
/************************/
@media (min-width: 1200px) {
.container {
    width: 85%;
}
}
@media (max-width: 992px) {
.container {
  width: 85%;
}
ul.socialicons {
  text-align: center;
}
img#logo {
  padding: 20px 0px;
  display: block;
  margin: 0 auto;
}
#homethree {
  padding: 40px 0px;
}
#home-about .col-md-6 {
  margin-bottom: 30px;
}
#homethree img {
  margin-top: 0px;
  width: 100%;
  max-width: 400px;
  display: block;
  margin: 0 auto;
  margin-bottom: 20px;
}
#copyright p {
  text-align: center;
}
#copyright {
  margin-bottom: 20px;
}
#footerboxes {
  height: auto;
}
#footerboxes .col-md-4 {
  border: none;
}
.pagecontent {
  margin-bottom: 24px;
}
#hometwo .col-md-4 {
  margin-bottom: 30px;
}
#homegrey h2 {
  margin-bottom: 20px;
  text-align: center;
}
nav#main ul {
  text-align: center;
}
nav#main ul li {
  margin-left: 6px;
  margin-right: 6px;
}
nav#main ul li a {
  font-size: 13px;
}
#complogos img{
  display:inline-block;
  width:20%;
  height:auto;
  margin:10px 4%;
}
#homethree .col-md-4{
  margin-bottom:30px;
}
.toprightnav, #topnav{
  text-align:center;
  display:block;
  padding:4px 0px;
}
#complogos{
  display:none;
}
#navform{
  text-align:center;
  padding:10px 0px;
}
.nivo-nextNav {
  display:none;
}
.nivo-prevNav {
  display:none;
}
ul#head-buttons {
  text-align: center;
}
ul#head-buttons li {
  text-align: left;
}
#home-about .col-md-9 {
  padding-top: 0px;
  padding-bottom: 30px;
}
}

@media (max-width: 768px) {
.container {
  width: 95%;
}
#toparea {
  text-align: center;
}
#sliderow {
  background-image: none;
  text-align: center !important;
}
#sliderow .col-sm-6:last-child {
  display: none;
}
.cccaption h1 {
  font-size:18px;
}
ul#prodcats li a{
  font-size: 14px;
}
#bottom-bar {
  text-align: center;
}
}

@media (max-width: 568px) {
.container {
  width: 99% !important;
}
.cccaption h1 {
  font-size:16px;
}
nav#main {
  margin: 0 auto;
  float: none;
  margin-top: 0px;
}
#menu-icon {
  display: block;
  margin: 0 auto;
  margin-bottom: 10px;
  margin-top: 10px;
}
nav#main ul, nav#main:active ul {
  display: none;
  position: relative;
  padding: 20px;
  border: none;
  margin: 0 auto;
  width: 100%;
  border-radius: 4px 0 4px 4px;
  margin-bottom: 10px;
}
nav#main ul li {
  text-align: center;
  width: 100%;
  padding: 10px 0;
  margin: 0;
  margin-left: 0px;
  display: block;
}
nav#main ul li a {
  padding: 0px;
  width: 100%;
  font-size: 16px;
}
nav#main ul li a:hover {
  opacity:.7;
}
nav#main:hover ul {
  display: block;
}
#topnav {
  margin: 0px;
  padding: 0px;
  text-align: center;
  display: block;
}
#topnav li {
  display: block;
  margin-bottom: 10px;
  margin-left: 0px;
  background-image: none;
}
#footnav ul li{
  display:block;
  margin-bottom:10px;
}
}