/* Copyright Progressive Field Services */
@media (min-width: 1200px) {
  .pull-right-lg {
    float: right; }
  .pull-left-lg {
    float: left; } }

@media (min-width: 992px) {
  .pull-right-md {
    float: right; }
  .pull-left-md {
    float: left; } }

@media (min-width: 768px) {
  .pull-right-sm {
    float: right; }
  .pull-left-sm {
    float: left; } }

@media (min-width: 768px) {
  .hidden-sm {
    display: none; } }

@media (min-width: 992px) {
  .hidden-sm {
    display: initial; } }

@media (min-width: 1200px) {
  .hidden-sm {
    display: initial; } }

@media (min-width: 768px) {
  .hidden-md {
    display: initial; } }

@media (min-width: 992px) {
  .hidden-md {
    display: none; } }

@media (min-width: 1200px) {
  .hidden-md {
    display: initial; } }

@media (min-width: 768px) {
  .hidden-lg {
    display: initial; } }

@media (min-width: 992px) {
  .hidden-lg {
    display: initial; } }

@media (min-width: 1200px) {
  .hidden-lg {
    display: none; } }

body {
  color: #0C0C0C; }

.notext, .footer label {
  font-size: 0;
  text-indent: -9999px;
  line-height: 0; }

.navbar {
  margin: 0px;
  background-image: none;
  min-height: 100px; }

.navbar .container {
  padding-right: 0; }

.navbar nav {
  float: none; }

.navbar-inverse {
  background: #fff;
  border: none; }

.navbar-brand {
  height: 100px;
  padding-bottom: 0;
  padding-top: 0;
  padding-left: 0; }

.navbar-brand img {
  width: 100%;
  position: absolute;
  top: 30%;
  padding-right: 80px; }
  @media (min-width: 992px) {
    .navbar-brand img {
      padding-right: 0px; } }
  @media (min-width: 1200px) {
    .navbar-brand img {
      padding-right: 80px; } }

.mobilelogo {
  min-width: 230px;
  max-width: 400px;
  padding-left: 30px; }

.navbar-nav {
  margin: 0 -15px;
  background: #314D9B; }

.navbar-nav li a {
  text-transform: uppercase;
  padding-top: 15px;
  padding-bottom: 15px;
  padding-left: 45px;
  color: #fff; }

.navbar-nav li a:hover, .navbar-nav li a:active, .navbar-nav li a:focus, .navbar-nav li a:visited {
  background: #667FC3; }

.navbar-default {
  border-radius: 0;
  box-shadow: none;
  background: none;
  border: none; }

.navbar-default .navbar-collapse {
  background: #0076B2; }

.navbar-default .navbar-collapse li {
  border-bottom: solid 1px #0482C2; }

.navbar-default .navbar-collapse li:last-child {
  border-bottom: 0; }

.navbar-default .navbar-collapse li a {
  color: #fff; }

.navbar-default .navbar-collapse li a:hover {
  color: #0C0C0C; }

nav li a {
  padding: 15px;
  font-size: 1.3em; }

#navbutton button {
  position: absolute;
  right: 40px;
  top: 30px;
  background-size: 100%;
  border: 0;
  border-radius: 0;
  margin: 0;
  height: 42px;
  width: 42px;
  z-index: 10; }
  #navbutton button:hover, #navbutton button:focus, #navbutton button:active, #navbutton button:visited {
    background: none; }
  #navbutton button:after {
    content: '\f0c9';
    display: block;
    font-size: 3em;
    position: absolute;
    top: 1px;
    left: 1px;
    height: 42px;
    width: 42px;
    color: #314D9B; }
  #navbutton button:hover:after {
    color: #758DCF; }

.banner {
  min-height: 400px;
  border-bottom: 1px solid #E5E5E5; }
  @media (min-width: 768px) {
    .banner {
      background-size: 100%; } }
  @media (min-width: 992px) {
    .banner {
      min-height: 600px; } }

.carousel-fade .carousel-inner .item {
  transition-property: opacity;
  background-position: top;
  background-size: cover;
  background-position: 0; }

.carousel-fade .carousel-inner .item,
.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
  opacity: 0; }

.carousel-fade .carousel-inner .active,
.carousel-fade .carousel-inner .next.left,
.carousel-fade .carousel-inner .prev.right {
  opacity: 1; }

.carousel-fade .carousel-inner .next,
.carousel-fade .carousel-inner .prev,
.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
  left: 0;
  transform: translate3d(0, 0, 0); }

.carousel-fade .carousel-control {
  z-index: 2; }

#Carousel1 .carousel,
#Carousel1 .carousel-inner,
#Carousel1 .carousel-inner .item {
  min-height: 400px; }
  @media (min-width: 992px) {
    #Carousel1 .carousel,
    #Carousel1 .carousel-inner,
    #Carousel1 .carousel-inner .item {
      min-height: 600px; } }

#Carousel1 .item:nth-child(1) {
  background: url(../images/banner1.jpg) no-repeat;
  background-size: 200%;
  background-position: center; }
  @media (min-width: 768px) {
    #Carousel1 .item:nth-child(1) {
      background-size: 100%; } }

#Carousel1 .item:nth-child(2) {
  background: url(../images/banner2.jpg) no-repeat;
  background-size: 200%;
  background-position: center; }
  @media (min-width: 768px) {
    #Carousel1 .item:nth-child(2) {
      background-size: 100%; } }

#Carousel1 .item:nth-child(3) {
  background: url(../images/banner3.jpg) no-repeat;
  background-size: 200%;
  background-position: center; }
  @media (min-width: 768px) {
    #Carousel1 .item:nth-child(3) {
      background-size: 100%; } }

#Carousel1 .item:nth-child(4) {
  background: url(../images/banner4.jpg) no-repeat;
  background-size: 200%;
  background-position: center; }
  @media (min-width: 768px) {
    #Carousel1 .item:nth-child(4) {
      background-size: 100%; } }

.boverlay {
  background: rgba(255, 255, 255, 0.81);
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 10; }
  .boverlay .container {
    margin: 0 auto;
    text-align: center;
    padding: 15px; }
  .boverlay p {
    color: #314D9B;
    line-height: 1.2em;
    font-size: 2em; }
    .boverlay p.topline {
      font-weight: 200;
      margin-bottom: 0;
      margin-top: 70px; }
      .boverlay p.topline span {
        font-weight: 700;
        margin-bottom: 0; }
  .boverlay .bottomline a {
    color: #90CCFF; }
    .boverlay .bottomline a:hover {
      text-decoration: none;
      color: #37A3FF; }

.overview {
  padding-top: 90px;
  padding-bottom: 30px;
  background: url(../images/background-cogs15.png) no-repeat;
  background-position: bottom; }
  .overview a {
    margin-bottom: 30px; }
    .overview a:hover {
      text-decoration: none; }
  .overview p {
    font-size: 1.5em;
    line-height: 1.3em;
    margin-bottom: 30px;
    font-weight: 200; }
    @media (min-width: 1200px) {
      .overview p {
        font-size: 1.4em; } }
    .overview p.finish {
      text-align: center;
      font-size: 2em;
      clear: both; }
    .overview p.emph {
      color: #314D9B;
      font-size: 2em; }
      .overview p.emph span {
        font-weight: 700;
        font-style: oblique; }
        .overview p.emph span::before {
          content: '';
          background: url(../images/smallcog.png) no-repeat;
          display: block;
          position: absolute;
          height: 30px;
          width: 30px;
          background-size: 100%;
          top: -32px;
          left: 15px; }
  @media (min-width: 768px) {
    .overview .about {
      width: 49%; } }

.services .container {
  padding-top: 90px;
  padding-bottom: 90px;
  background: url(../images/sbcog.png) no-repeat;
  background-position: bottom left;
  background-size: 15%; }
  .services .container p {
    font-size: 1.4em;
    font-weight: 200; }
  .services .container h1 {
    color: #314D9B;
    font-size: 3em;
    font-weight: 700;
    font-style: oblique;
    position: relative;
    margin-top: 0; }
  .services .container h2 {
    font-weight: 200; }
  .services .container h3 {
    font-weight: 200;
    color: #314D9B; }
  .services .container img {
    width: 15%;
    margin: 50px auto 0;
    display: block; }

.team .container {
  padding-top: 90px;
  padding-bottom: 90px; }
  .team .container p {
    font-size: 1.4em;
    font-weight: 200; }
  .team .container h1 {
    color: #314D9B;
    font-size: 3em;
    font-weight: 700;
    font-style: oblique;
    position: relative;
    margin-top: 0; }
  .team .container h2 {
    font-weight: 200; }
    .team .container h2 span {
      font-weight: 600; }
  .team .container .top {
    margin-bottom: 30px;
    margin-top: 30px; }
    @media (min-width: 768px) {
      .team .container .top {
        margin-bottom: 0px;
        margin-top: 0px; } }

.gallery {
  background: #F3F7FF; }
  .gallery .container {
    padding-top: 90px;
    padding-bottom: 90px; }
    .gallery .container h1 {
      margin-bottom: 20px;
      color: #314D9B;
      font-size: 3em;
      font-weight: 700;
      font-style: oblique;
      position: relative;
      margin-top: 0; }
    .gallery .container .nav-tabs {
      border-bottom: none;
      padding: 0 10px; }
      .gallery .container .nav-tabs li {
        padding: 5px; }
        .gallery .container .nav-tabs li a {
          padding: 0px;
          margin: 0px; }
      .gallery .container .nav-tabs img {
        border: 6px solid transparent;
        margin-bottom: 0px;
        transition: .5s; }
        .gallery .container .nav-tabs img:hover {
          border-color: #000; }
      .gallery .container .nav-tabs .active {
        position: relative; }
        .gallery .container .nav-tabs .active img {
          border-color: #000; }
    .gallery .container .tab-pane img {
      margin-bottom: 10px; }

.speechbubble {
  background: #fff;
  border-radius: 10px;
  margin-top: 75px;
  margin-bottom: 20px;
  padding: 25px 20px 20px 40px;
  color: #314D9B; }

.speechbubble::after {
  content: '';
  background: url(../images/sbpoint.png) no-repeat;
  display: block;
  position: absolute;
  height: 30px;
  width: 30px;
  background-size: 100%;
  bottom: -30px;
  left: 40px; }

.speechbubble p {
  font-size: 1.2em;
  font-weight: 200; }

.sbtext {
  padding-left: 0;
  margin-top: 20px;
  padding-bottom: 60px; }

.sbtext p.name {
  font-weight: 300;
  font-size: 1.5em;
  margin-bottom: 0; }

.sbtext p.place {
  font-weight: 600;
  font-style: oblique;
  color: #314D9B;
  font-size: 1.5em;
  line-height: 1em; }

#affiliates {
  margin: 50px 0; }

.vcenter {
  display: inline-block;
  vertical-align: middle;
  width: 49%;
  float: none;
  opacity: 0.5; }

.vcenter:hover {
  opacity: 1; }

.sectionblue {
  background: #D9E5FF;
  width: 100%; }

.sectiondark {
  width: 100%;
  background: #000000; }

.sectiongrey {
  width: 100%;
  background: #CDCDCD; }

a.btn {
  background: #0076B2;
  color: #FFF;
  font-size: 1.7em;
  border-radius: 0;
  padding: 10px 30px; }

a.btn:hover {
  color: #E7E7E7; }

.footer {
  padding: 80px 0;
  text-align: center;
  overflow: hidden; }

.footer p {
  color: #fff;
  margin-bottom: 0px;
  font-size: 1.8em;
  line-height: 1.2em;
  font-weight: 300; }

.footer a {
  color: #578BFF;
  margin-bottom: 0px;
  font-size: 1.4em;
  line-height: 1.2em;
  font-weight: 300; }

.footer a:hover {
  color: #0076B2;
  text-decoration: none; }

.footer p.name {
  font-weight: 600; }

.topcontact {
  margin-bottom: 20px; }

.contacttitle p {
  text-align: center;
  color: #F2F2F2;
  font-size: 2em;
  margin-bottom: 50px; }

.contacttitle p span {
  font-weight: 700;
  color: #D9E5FF; }

.form-control {
  border-radius: 0;
  min-height: 50px;
  max-width: 100%;
  font-size: 1.6em;
  font-weight: 300;
  padding: 0px 30px; }

.submit {
  font-family: 'FontAwesome';
  margin-top: 20px;
  margin-bottom: 15px;
  background: #314D9B;
  border: 0;
  color: #FFF;
  font-style: oblique;
  font-size: 1.7em;
  border-radius: 0;
  padding: 10px 30px;
  width: 100%; }

#social {
  padding-top: 30px;
  padding-bottom: 30px; }
  #social .container .facebook {
    width: 360px;
    display: block;
    margin: 0 auto; }

#copyright {
  background: #282828; }

#copyright p {
  color: #fff;
  text-align: center;
  margin: 20px 0; }

#copyright a {
  color: #578BFF; }

/* Small + */
@media screen and (min-width: 768px) {
  .navbar .container {
    padding-right: 15px; }
  .navbar-brand {
    padding-top: 15px; }
  .navbar-brand img {
    position: inherit; }
  .navbar-nav {
    float: left;
    margin-left: 70px;
    margin-top: 20px;
    background: none; }
  .navbar-nav li {
    float: none; }
  .navbar-nav li a {
    padding-top: 5px;
    padding-bottom: 5px; }
  .navbar-collapse.collapse.mobile {
    display: none !important; }
  .nav li a {
    padding: 0px 9px;
    font-size: 1.4em; }
  .boverlay .container {
    padding: 5px 15px; }
  .boverlay p {
    font-size: 2.5em; }
  .boverlay p.topline {
    font-weight: 200;
    margin-top: 100px; }
  .boverlay p.topline span {
    font-weight: 700; }
  .overview {
    padding-top: 80px;
    padding-bottom: 35px; }
  .overview p.emph {
    font-size: 2em; }
  .speechbubble {
    margin-top: 80px;
    margin-bottom: 20px;
    padding: 25px 20px 20px 40px; }
  .speechbubble p {
    font-size: 1.2em; }
  .sbtext {
    padding-bottom: 70px;
    margin-top: 20px; }
  .sbtext p.name {
    font-size: 2em; }
  .sbtext p.place {
    font-size: 2em; }
  .vcenter {
    width: 24%; }
  .navbar-default .navbar-collapse {
    background: none; }
  .navbar-default .navbar-collapse ul {
    text-align: left; }
  .navbar-default .navbar-collapse li {
    border-bottom: none; }
  .navbar-default .navbar-collapse li a {
    color: #314D9B; }
  .navbar-default .navbar-collapse li a:hover {
    color: #314D9B; }
  .navbar-default .navbar-collapse li a:hover::after {
    content: '';
    display: block;
    position: absolute;
    bottom: 6px;
    margin: 0 auto;
    height: 10px;
    width: 10px;
    background: rgba(49, 77, 155, 0.3);
    left: -15px; }
  .footer {
    padding: 65px 0; }
  .footer a {
    font-size: 1.8em; }
  .contacttitle p {
    font-size: 2.2em; } }

/* Medium + */
@media screen and (min-width: 992px) {
  .navbar-nav {
    float: left;
    margin: 70px 0 0 0; }
  .navbar-nav li {
    float: left; }
  .navbar-nav li a {
    font-size: 1.4em; }
  .nav li a {
    padding: 5px 0;
    margin: 0 12px; }
  .navbar-default .navbar-collapse li a:hover::after {
    content: '';
    display: block;
    position: absolute;
    bottom: -10px;
    left: 0;
    margin: 0 auto;
    height: 3px;
    width: 100%;
    background: #314D9B; }
  .boverlay p {
    font-size: 3.5em; }
  .boverlay p.topline {
    margin-top: 180px; }
  .overview {
    padding-top: 60px;
    padding-bottom: 40px; }
  .speechbubble {
    margin-bottom: 20px;
    padding: 25px 20px 20px 40px; }
  .speechbubble p {
    font-size: 1.2em; }
  .footer {
    padding: 80px 0;
    text-align: left; }
  .contacttitle p {
    font-size: 3em; }
  .submit {
    float: right; } }

/* Large */
@media screen and (min-width: 1200px) {
  .navbar-nav {
    margin: 85px 0 0 0; }
  .navbar-nav li a {
    font-size: 1.7em; }
  .overview {
    padding-top: 90px;
    padding-bottom: 70px; }
  .overview p {
    line-height: 1.3em;
    margin-bottom: 30px; }
  .overview p.emph {
    color: #314D9B;
    font-size: 2.2em; }
  .overview p.emph span {
    font-weight: 700;
    font-style: oblique; }
  .overview p.emph span::before {
    content: '';
    background: url(../images/smallcog.png) no-repeat;
    display: block;
    position: absolute;
    height: 30px;
    width: 30px;
    background-size: 100%;
    top: -32px;
    left: 15px; }
  .speechbubble {
    margin-top: 100px;
    margin-bottom: 20px;
    padding: 25px 20px 20px 40px; }
  .speechbubble p {
    font-size: 1.6em; }
  .sbtext {
    padding-bottom: 90px;
    margin-top: 12px; }
  .emailform {
    margin-top: 0px; } }

/* Font Inclusion */
body {
  font-family: 'Open Sans', sans-serif; }

.navbar-nav li a {
  font-family: 'Hammersmith One', sans-serif; }

.mobilelogo, #navbutton button {
  font-family: 'FontAwesome'; }
