@media screen and (max-width: 767px) {
  /* ****************************
             global
  **************************** */
  body {
    padding-top: 0;
  }

  * {
    max-width: 100%;
  }

  .container, .row {
    width: 100%;
  }

  .container .row {
    margin:0;
  }

  .container .row .col-sm-2,
  .container .row .col-sm-3,
  .container .row .col-sm-4,
  .container .row .col-sm-5,
  .container .row .col-sm-6,
  .container .row .col-sm-7,
  .container .row .col-sm-8,
  .container .row .col-sm-9,
  .container .row .col-sm-10,
  .container .row .col-sm-11,
  .container .row .col-sm-12
   {
    margin: 10px;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  body, p, .row * {
    font-size: 17px;
  }

  h1 {
    font-size: 24px;
  }

  h2, h3, h4 {
    font-size: 20px;
  }

  .pale-blue-backing {
    background: none;
  }

  /* ****************************
             header / nav
  **************************** */

  .menu-main-menu-container {
    display: block;
    position: fixed;
    top: 0;
    bottom: 0;
    overflow-y: auto;
    left: 100%;
    width: 90%;
    transition: 0.3s ease-in-out;
    z-index: 998;
    background-color: #c70006;
  }

  .menu-main-menu-container.active {
    left: 10%;
  }

  .mobile-menu-btn {
    position:fixed;
    right:10px;
    top:10px;
    cursor: pointer;
    z-index: 999;
  }

  .mobile-menu-btn:after {
    content:"\f0c9";
    font-family:FontAwesome;
    color: #000;
    font-size: 34px;
  }

  .menu-main-menu-container ul#menu-main-menu {
    display: block;
  }

  .menu-main-menu-container ul#menu-main-menu li {
    width: 100%!important;
    display: block;
    border-bottom: 1px solid #fff;
    opacity: 1 !important;
    font-weight: normal !important;
  }

  .menu-main-menu-container ul#menu-main-menu li ul.sub-menu {
    display: none;
    position: static;
    width: 100%;

    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
    -webkit-transform: none;
    transform: none;

    font-size: 0.8em;

    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;
  }

  /* ****************************
             homepage
  **************************** */

  .rev_slider_wrapper.fullwidthbanner-container {
    left: 0 !important;
  }

  .greybox {
    margin-top: 20px;
  }

  .carousel-inner>.item>a>img, .carousel-inner>.item>img, .img-responsive, .thumbnail a>img, .thumbnail>img {
    width: 100%;
  }

  /* ****************************
             contact page
  **************************** */

  div#wpcf7-f7-p49-o1 {
    width: 100%;
  }

  div#wpcf7-f7-p49-o1 input[type="text"], div#wpcf7-f7-p49-o1 input[type="email"], div#wpcf7-f7-p49-o1 textarea {
    width: 100%;
    border: 1px solid #555;
  }

  div#wpcf7-f7-p49-o1 input[type="submit"] {
    background-color: #7d7d7d;
    padding: 10px;
    margin: 15px 0;
    display: block;
    width: 100%;
    color: #fff;
    font-weight: bold;
  }

  /* ****************************
             members area
  **************************** */

  .ma_button {
    float: none;
    width: 100%;
    height: auto;
    transition: 0.3s ease-in-out;
  }
  .ma_button * {
    transition: 0.3s ease-in-out;
  }

  .ma_button > div {
    background: none;
    height: auto;
  }

  /* ****************************
             footer
  **************************** */

  footer .left, footer .right {
    text-align: center;
    float: none;
    width: 100%;
    margin-bottom: 10px;
    line-height: 1.4;
  }

  .footercopy, .footercopy p, .footercopy a {
    line-height: 1.4;
  }

  footer {
    font-size: 0.7em;
  }
}

@media screen and (min-width: 768px) {
  #menu-main-menu {
    display: flex;
  }

  #menu-main-menu > li {
    margin-left: auto;
    margin-right: auto;
  }
}