html, body { height: 100%; width: 100%; }

body { font-family: 'Merriweather', 'Helvetica Neue', Arial, sans-serif; }

hr { border-color: #295FA6; border-width: 3px; max-width: 50px; }

hr.light { border-color: white; }

a { -webkit-transition: all 0.35s; -moz-transition: all 0.35s; transition: all 0.35s; color: #5C8C2B; }
a:hover, a:focus { color: #1f487d; }

a.icon-link { color: #295FA6; }

h1, h2, h3, h4, h5, h6 { font-family: 'Open Sans', 'Helvetica Neue', Arial, sans-serif; }

p { font-size: 16px; line-height: 1.5; margin-bottom: 20px; }

.bg-primary { background-color: #5C8C2B; }

.bg-dark { background-color: #222; color: white; }

.text-faded { color: rgba(255, 255, 255, 0.7); }

section { padding: 100px 0; }

aside { padding: 50px 0; }

.no-padding { padding: 0; }

.navbar-default { background-color: white; border-color: rgba(34, 34, 34, 0.5); font-family: 'Open Sans', 'Helvetica Neue', Arial, sans-serif; -webkit-transition: all 0.35s; -moz-transition: all 0.35s; transition: all 0.35s; }
.navbar-default .navbar-header .navbar-brand { color: #5C8C2B; font-family: 'Open Sans', 'Helvetica Neue', Arial, sans-serif; font-weight: 700; text-transform: uppercase; }
.navbar-default .navbar-header .navbar-brand:hover, .navbar-default .navbar-header .navbar-brand:focus { color: #42651f; }
.navbar-default .nav > li > a, .navbar-default .nav > li > a:focus { text-transform: uppercase; font-weight: 700; font-size: 13px; color: #222; }
.navbar-default .nav > li > a:hover, .navbar-default .nav > li > a:focus:hover { color: #5C8C2B; }
.navbar-default .nav > li.active > a, .navbar-default .nav > li.active > a:focus { color: #295FA6 !important; background-color: transparent; }
.navbar-default .nav > li.active > a:hover, .navbar-default .nav > li.active > a:focus:hover { background-color: transparent; }
@media (min-width: 768px) { .navbar-default { background-color: transparent; border-color: rgba(255, 255, 255, 0.3); }
  .navbar-default .navbar-header .navbar-brand { color: rgba(255, 255, 255, 0.7); }
  .navbar-default .navbar-header .navbar-brand:hover, .navbar-default .navbar-header .navbar-brand:focus { color: white; }
  .navbar-default .nav > li > a, .navbar-default .nav > li > a:focus { color: rgba(255, 255, 255, 0.7); }
  .navbar-default .nav > li > a:hover, .navbar-default .nav > li > a:focus:hover { color: white; }
  .navbar-default.affix { background-color: white; border-color: rgba(34, 34, 34, 0.5); }
  .navbar-default.affix .navbar-header .navbar-brand { color: #5C8C2B; font-size: 14px; }
  .navbar-default.affix .navbar-header .navbar-brand:hover, .navbar-default.affix .navbar-header .navbar-brand:focus { color: #42651f; }
  .navbar-default.affix .nav > li > a, .navbar-default.affix .nav > li > a:focus { color: #222; }
  .navbar-default.affix .nav > li > a:hover, .navbar-default.affix .nav > li > a:focus:hover { color: #5C8C2B; } }

header { position: relative; width: 100%; min-height: auto; -webkit-background-size: cover; -moz-background-size: cover; background-size: cover; -o-background-size: cover; background-position: center; background-image: url("../img/header.jpg"); text-align: center; color: white; }
header .header-content { position: relative; text-align: center; padding: 100px 15px 100px; width: 100%; }
header .header-content .header-content-inner h1 { font-weight: 700; text-transform: uppercase; margin-top: 0; margin-bottom: 0; }
header .header-content .header-content-inner hr { margin: 30px auto; }
header .header-content .header-content-inner p { font-weight: 300; color: rgba(255, 255, 255, 0.7); font-size: 16px; margin-bottom: 50px; }
@media (min-width: 768px) { header { min-height: 100%; }
  header .header-content { position: absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); padding: 0 50px; }
  header .header-content .header-content-inner { max-width: 1000px; margin-left: auto; margin-right: auto; }
  header .header-content .header-content-inner p { font-size: 18px; max-width: 80%; margin-left: auto; margin-right: auto; } }

.section-heading { margin-top: 0; }

.service-box { max-width: 400px; margin: 50px auto 0; }
@media (min-width: 992px) { .service-box { margin: 20px auto 0; } }
.service-box p { margin-bottom: 0; }

.portfolio-box { position: relative; display: block; max-width: 650px; margin: 0 auto; }
.portfolio-box .portfolio-box-caption { color: white; opacity: 0; display: block; background: rgba(92, 140, 43, 0.9); position: absolute; bottom: 0; text-align: center; width: 100%; height: 100%; -webkit-transition: all 0.35s; -moz-transition: all 0.35s; transition: all 0.35s; }
.portfolio-box .portfolio-box-caption .portfolio-box-caption-content { width: 100%; text-align: center; position: absolute; top: 50%; transform: translateY(-50%); }
.portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-category, .portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-name { font-family: 'Open Sans', 'Helvetica Neue', Arial, sans-serif; padding: 0 15px; }
.portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-category { text-transform: uppercase; font-weight: 600; font-size: 14px; }
.portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-name { font-size: 18px; }
.portfolio-box:hover .portfolio-box-caption { opacity: 1; }
@media (min-width: 768px) { .portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-category { font-size: 16px; }
  .portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-name { font-size: 22px; } }

.call-to-action h2 { margin: 0 auto 20px; }

.text-primary { color: #295FA6; }

.no-gutter > [class*='col-'] { padding-right: 0; padding-left: 0; }

.btn-default { color: #222; background-color: white; border-color: white; -webkit-transition: all 0.35s; -moz-transition: all 0.35s; transition: all 0.35s; }
.btn-default:hover, .btn-default:focus, .btn-default.focus, .btn-default:active, .btn-default.active, .open > .dropdown-toggle .btn-default { color: #222; background-color: #f2f2f2; border-color: #ededed; }
.btn-default:active, .btn-default.active, .open > .dropdown-toggle .btn-default { background-image: none; }
.btn-default.disabled, .btn-default.disabled:hover, .btn-default.disabled:focus, .btn-default.disabled.focus, .btn-default.disabled:active, .btn-default.disabled.active, .btn-default[disabled], .btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled].focus, .btn-default[disabled]:active, .btn-default[disabled].active, fieldset[disabled] .btn-default, fieldset[disabled] .btn-default:hover, fieldset[disabled] .btn-default:focus, fieldset[disabled] .btn-default.focus, fieldset[disabled] .btn-default:active, fieldset[disabled] .btn-default.active { background-color: white; border-color: white; }
.btn-default .badge { color: white; background-color: #222; }

.btn-primary { color: white; background-color: #5C8C2B; border-color: #5C8C2B; -webkit-transition: all 0.35s; -moz-transition: all 0.35s; transition: all 0.35s; }
.btn-primary:hover, .btn-primary:focus, .btn-primary.focus, .btn-primary:active, .btn-primary.active, .open > .dropdown-toggle .btn-primary { color: white; background-color: #4f7825; border-color: #4a7123; }
.btn-primary:active, .btn-primary.active, .open > .dropdown-toggle .btn-primary { background-image: none; }
.btn-primary.disabled, .btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary.disabled:active, .btn-primary.disabled.active, .btn-primary[disabled], .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled].focus, .btn-primary[disabled]:active, .btn-primary[disabled].active, fieldset[disabled] .btn-primary, fieldset[disabled] .btn-primary:hover, fieldset[disabled] .btn-primary:focus, fieldset[disabled] .btn-primary.focus, fieldset[disabled] .btn-primary:active, fieldset[disabled] .btn-primary.active { background-color: #5C8C2B; border-color: #5C8C2B; }
.btn-primary .badge { color: #5C8C2B; background-color: white; }

.btn { font-family: 'Open Sans', 'Helvetica Neue', Arial, sans-serif; border: none; border-radius: 300px; font-weight: 700; text-transform: uppercase; }

.btn-xl { padding: 15px 30px; }

#contact .fa { color: #222; font-size: 4em; }

::-moz-selection { color: white; text-shadow: none; background: #222; }

::selection { color: white; text-shadow: none; background: #222; }

img::selection { color: white; background: transparent; }

img::-moz-selection { color: white; background: transparent; }

body { -webkit-tap-highlight-color: #222; }

.portfolio-modal .modal-content { padding: 100px 0; min-height: 100%; }

.portfolio-modal .modal-content h2 { margin: 0; font-size: 3em; }

.portfolio-modal .modal-content img { margin-bottom: 30px; }

.portfolio-modal .modal-content .item-details { margin: 30px 0; }

.portfolio-modal .close-modal { position: absolute; top: 25px; right: 25px; width: 75px; height: 75px; background-color: transparent; cursor: pointer; }

.portfolio-modal .close-modal:hover { opacity: .3; }

.portfolio-modal .close-modal .lr { z-index: 1051; width: 3px; height: 75px; margin-left: 35px; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); background-color: #222; }

.portfolio-modal .close-modal .lr .rl { z-index: 1052; width: 3px; height: 75px; -webkit-transform: rotate(90deg); -ms-transform: rotate(90deg); transform: rotate(90deg); background-color: #222; }

/* Fix modal mouse wheel issues */
/* https://github.com/twbs/bootstrap/issues/16297 */
.modal.fade.in { transform: translateZ(0); -webkit-transform: translateZ(0); }

.link-contrast { color: #295FA6; }
