.container, #subnav .main-navigation {
  width: 90% !important;
  max-width: 936px; }

#banner_home, .banner_footer {
  width: 100%;
  height: 635px;
  background-repeat: no-repeat;
  display: table; }

.banner_footer .text {
  display: table-cell;
  vertical-align: middle; }

#banner_secondary {
  width: 100%;
  height: 250px;
  background-repeat: no-repeat;
  display: table;
  margin-bottom: 0; }

#banner_secondary h2 {
  margin: 2.9em 1.2em 0; }

#subnav {
  position: relative;
  bottom: 0; }

.group {
  background: #fffff8; }

.block.string {
  height: auto; }

.block.string, .block.image, .expander .text {
  width: 50%; }

.block.image.full {
  width: 100%; }

.banner_footer h2 {
  margin: 0 30px 0; }

.banner_footer a.summon {
  height: auto;
  padding: 14px 22px 12px; }

.expander .top {
  height: auto; }

#optional_features .item h3, #optional_features .item p {
  margin-left: 80px; }

@media screen and (max-width: 960px) {
  header a#logo {
    display: block; } }

@media screen and (max-width: 900px) {
  .expander .text, .expander .top img, .expander .feature-img-container {
    width: 100%; }
  .expander h3, .expander p {
    margin-left: 4.35%;
    margin-right: 4.35%; }
  .expander .text {
    padding-bottom: 50px; }
  .expander .top {
    border-left: none; } }

@media screen and (max-width: 1024px) {
  .block.string, .block.image, .block.image img {
    width: 100%; }
  .block.string {
    padding-bottom: 40px; }
  #banner_home, .banner_footer {
    height: 400px; } }

@media screen and (max-width: 768px) {
  header a#logo {
    margin: 63px auto 0;
    float: none; }
  #nav {
    margin: 30px auto 0;
    float: none;
    text-align: center; } }

@media screen and (max-width: 916px) {
  article.two, article.three, article.four {
    max-width: 100% !important; } }

@media screen and (max-width: 650px) {
  div#features .marker-pulse {
    background-size: 70%; } }

@media screen and (max-width: 540px) {
  #nav, .contact {
    margin-top: 20px !important;
    width: 100% !important; }
  .contact {
    width: 106px !important;
    margin: 20px  auto !important;
    float: none !important; }
  .banner_footer a.summon {
    width: 70%; } }

@media screen and (max-width: 450px) {
  #nav {
    width: 90%; }
    #nav ul {
      font-size: 1em; } }

@media screen and (max-width: 420px) {
  #nav {
    width: 100%;
    text-align: center; }
    #nav ul {
      font-size: 0.9em; } }
