html, body {
  height: 100%;
  background-color: #f2f2f2;
}

/***********************************
*  ORIGINAL TYPOGRAPHY
***********************************/
.massive {
  line-height: 85px;
  font-size: 80px;
}
@media (max-width: 700px) {
  .massive {
    line-height: 55px;
    font-size: 50px;
  }
}
@media (max-width: 330px) {
  .massive {
    line-height: 55px;
    font-size: 45px;
  }
}

.huge {
  line-height: 55px;
  font-size: 50px;
}
@media (max-width: 700px) {
  .huge {
    font-size: 30px;
    line-height: 35px;
  }
}

.big {
  font-size: 30px;
  line-height: 35px;
}
@media (max-width: 700px) {
  .big {
    font-size: 21px;
    line-height: 30px;
  }
}

.normal {
  font-size: 21px;
  line-height: 30px;
}
@media (max-width: 700px) {
  .normal {
    font-size: 17px;
    line-height: 21px;
  }
}

.small {
  font-size: 17px;
  line-height: 21px;
}

.tiny {
  font-size: 14px;
  line-height: 20px;
}

.sign {
  padding-top: 30px;
  text-align: right;
}

.thick {
  font-weight: bold;
}

.emblue {
  color: #16499a;
}

.text-white {
  color: #f1f1f1 !important;
}

.text-black {
  color: #555555 !important;
}

.align-right {
  text-align: right;
}

.align-left {
  text-align: left;
}

.align-center {
  text-align: center;
}

.align-justify {
  text-align: justify;
}

.bg-dark-gray {
  background-color: #555555;
}

a:hover {
  text-decoration: none;
}

@media (max-width: 700px) {
  .container {
    padding: 0 5px;
  }
}

.navbar-nav {
  font-size: 14px;
  font-weight: bolder;
}

@media (max-width: 700px) {
  .navbar .navbar-collapse {
    border-top: 1px solid #e2e2e2;
    padding: 0 30px;
  }
}

.navbar {
  margin: 0;
}
.navbar .navbar-header {
  margin: 0 10px;
}
.navbar .navbar-header a {
  color: #555555 !important;
}
.navbar .navbar-header .crest {
  line-height: 64px;
}
.navbar .navbar-header .crest img {
  height: 40px;
  margin-right: 10px;
  margin-top: -3px;
}
@media (max-width: 700px) {
  .navbar .navbar-header .crest img {
    margin-top: 0;
  }
}
.navbar .navbar-header .crest .company-name {
  font-size: 20px;
}
@media (max-width: 700px) {
  .navbar .navbar-header .crest .company-name {
    font-size: 14px;
  }
}
.navbar .toggle-icon {
  margin: 0;
  padding: 0;
}
.navbar .toggle-icon .icon {
  font-size: 20px;
  line-height: 64px;
}
.navbar .contact-us-container {
  background-color: #555555;
  color: white;
  margin-top: 10px;
  padding: 10px 20px;
}

.body {
  line-height: 18px;
}

.footer {
  width: 100%;
  background-color: #555555;
  padding: 20px 10px;
  color: white;
  margin-top: 20px;
}
.footer .footer-content .title {
  margin-top: 10px;
  margin-bottom: 20px;
}
.footer .footer-content .icon {
  margin-right: 10px;
  font-size: 20px;
  line-height: 25px;
}
.footer .footer-content li {
  line-height: 25px;
}
.footer .copyright {
  color: white;
  font-size: 10px;
  text-align: right;
  padding-right: 10px;
}

.login-form {
  width: 50%;
  margin: auto;
}
@media (max-width: 700px) {
  .login-form {
    width: 100%;
  }
}
.login-form input {
  background-color: #f9f9f9;
}

.hero-banner {
  background-color: #0064cd;
  height: 300px;
  width: 100%;
}
.hero-banner .hero-text-1 {
  text-align: center;
  position: relative;
  top: 20%;
  padding: 0 5px;
}
@media (min-width: 330px) {
  .hero-banner .hero-text-1 {
    top: 30%;
  }
}
@media (min-width: 700px) {
  .hero-banner .hero-text-1 {
    top: 20%;
  }
}
.hero-banner .hero-text-2 {
  text-align: center;
  position: relative;
  top: 30%;
}
@media (min-width: 700px) {
  .hero-banner .hero-text-2 {
    top: 20%;
  }
}

.hero-image {
  height: 500px;
}
@media (max-width: 700px) {
  .hero-image {
    height: 300px;
  }
}
@media (min-width: 1200px) {
  .hero-image {
    height: 700px;
  }
}

.slab {
  min-height: 300px;
  text-align: center;
  padding: 20px;
  margin-top: 20px;
}
.slab.slab-padless {
  padding: 0;
  min-height: 0;
}
.slab.slab-full {
  margin-bottom: 20px;
}
.slab .icon-decorator {
  font-size: 100px;
  color: #aaaaaa;
  margin-bottom: 10px;
}
.slab .slab-header {
  margin-bottom: 20px;
}
.slab .slab-content {
  margin: 20px 0;
}
.slab .slab-content .content-block {
  margin-bottom: 20px;
}
.slab .slab-content .content-block .title {
  margin-bottom: 5px;
}
@media (max-width: 700px) {
  .slab .slab-content .content-block .title {
    line-height: 24px;
  }
}
@media (max-width: 700px) {
  .slab .slab-content .content-block .sub-title {
    font-size: 14px;
  }
}
.slab .client-logo {
  font-size: 50px;
}
.slab .client-logo span {
  margin: 30px;
}
.slab .client-logo img {
  width: 400px;
}
@media (max-width: 700px) {
  .slab .client-logo img {
    width: 200px;
  }
  .slab .client-logo span {
    margin: 10px;
  }
}
.slab .image-full img {
  width: 100%;
}
.slab .image-thumbnail img {
  width: 100%;
}
@media (max-width: 1200px) {
  .slab .image-thumbnail {
    margin-bottom: 10px;
  }
}
@media (max-width: 700px) {
  .slab .image-thumbnail {
    margin-bottom: 10px;
  }
}
.slab .image-caption {
  text-align: center;
  width: 100%;
  color: #666666;
  margin: auto;
}

.project-type-icon {
  color: #aaaaaa;
}
.project-type-icon span {
  margin-left: 5px;
  font-size: 12px;
}
@media (min-width: 700px) {
  .project-type-icon span {
    font-size: 14px;
  }
}

.horizontal-line {
  border-bottom: 1px #dddddd solid;
  margin: 20px;
}
