body {
  background: #2a2730;
  background: #201b1a;
}

* {
  padding: 0;
  margin: 0;
}

html,
body {
  height: 100%;
  min-height: 100%;
}

/* -------------------------------------------- TYPOGRAPHY */

h1 {
  font-size: 3rem;
  font-family: "Ubuntu", sans-serif;
  text-rendering: optimizelegibility;
}

h2,
h3,
h4,
h5,
h6 {
  font-family: "Helvetica Neue", ​Helvetica, ​Arial, ​sans-serif, "Arimo";
  text-rendering: optimizelegibility;
}

.h2,
h2 {
  font-size: 2.5rem;
  margin-bottom: 15px;
}

p {
  font-weight: 300;
  line-height: 1.7em;
}

p.alt {
  color: darkslategrey;
  font-family: verdana;
  font-size: 1em;
  font-weight: lighter;
}

p.lead {
  line-height: 1.5em;
  margin-bottom: 35px;
  font-weight: 300;
}

p.footnote {
  font-size: 0.9em;
  color: darkslategrey;
}

.strong {
  font-weight: bold;
  font-weight: 600;
}

.italic {
  font-style: italic;
}

#page-sub-header h1 {
  text-shadow: 0px 0px 5px #000;
  -moz-text-shadow: 0px 0px 5px #000;
  -webkit-text-shadow: 0px 0px 5px #000;
  background: #000 none repeat scroll 0 0;
  display: inline;
  line-height: 1.8em;
  padding: 0 15px;
}

#page-sub-header h1 .sub-spacer {
  width: 10px;
  display: inline-block;
}

@media (max-width: 992px) {
  #page-sub-header h1 {
    font-size: 2.5rem !important;
  }
}

#page-sub-header p {
  text-shadow: 1px 1px 1px #000;
  -moz-text-shadow: 1px 1px 1px #000;
  -webkit-text-shadow: 1px 1px 1px #000;
  color: #fff;
  background: rgba(25, 25, 25, 0.5);
  display: block;
  max-width: 50rem;
  padding: 0 15px;
}

.bg-primary h1,
.bg-primary .lead {
  text-shadow: 1px 1px 1px #000;
}

/* -------------------------------------------- CONTAINERS */
#page {
  background: #fff;
}

#services,
#contact {
  z-index: 999;
  position: relative;
  background: #fff;
}

.site-content,
#masthead {
  position: relative;
  z-index: 100;
}

.site-content {
  z-index: 1;
}

.site-content {
  background: #fff;
}

#masthead {
  border-bottom: 1px solid #fff;
  background: #c5c5c5;
  background: #21d0c3;
  background: #fff;
}

#page-sub-header {
  background: #23282d url("img/html5-video-img.png") repeat scroll 0 0 !important;
}

.container {
  max-width: 1140px;
  position: relative;
  z-index: 999;
  z-index: 5;
}

.bg-primary {
  background: #363a00 url(img/iStock_000022181010XLarge-dark.jpg) top left
    no-repeat;
  background-size: cover;
  background: transparent;
  z-index: 10;
}

/* -------------------------------------------- FOOTER */
footer {
  position: relative;
  z-index: 999;
}

.site-info {
  font-size: 0.8em;
}

/* -------------------------------------------- HEADER */
#page-sub-header {
  font-size: 1.5rem;
  padding-bottom: 3.75rem;
  padding-top: 13.75rem;
  text-align: left;
}

/* -------------------------------------------- MAIN NAV */
.navbar-brand {
  max-width: 200px;
}

.navbar-brand a img,
nav.navbar .navbar-brand a img {
  max-width: 100%;
}

.navbar-brand > a {
  color: #23282d;
}

.navbar-brand {
  font-family: "Ubuntu", sans-serif;
}

.navbar {
  border-bottom: 0.5px solid gray;
}

.nav-item .nav-link {
  font-family: "Titillium Web", sans-serif;
}

nav .active a.nav-link {
  text-decoration: underline;
}

/* -------------------------------------------- MASTHEAD NAVBAR */
#masthead .navbar-nav > li > a {
  color: #23282d;
  padding: 0.5rem;
}

/* -------------------------------------------- BUTTONS */
button.btn.btn-default,
.btn {
  cursor: pointer;
}

.btn-primary {
  background: #f39c12;
  border-color: transparent !important;
  border-radius: 2px !important;
}

.wpcf7-form .btn {
  padding-left: 2rem;
  padding-right: 2rem;
  transition: none;
}

.btn-primary:hover {
  background-color: #fff;
  border-color: transparent !important;
  color: #f39c12;
}

.btn-group-lg > .btn,
.btn-lg {
  border-radius: 2px;
  font-size: 1rem;
  line-height: 1.5;
  padding: 0.5rem 1.5rem;
  text-transform: uppercase;
}

/* -------------------------------------------- ORDER BUTTON ON HOME PAGE */
.order-home {
  display: inline-block;
  margin: 15px 0;
  text-shadow: 1px 1px 1px #000;
  -moz-text-shadow: 1px 1px 1px #000;
  -webkit-text-shadow: 1px 1px 1px #000;
}

.order-home .btn {
  padding: 0.75rem 2.5rem;
  border: 1px solid #fff !important;
}

/* -------------------------------------------- DROPDOWN */
.dropdown-menu {
  background-clip: padding-box;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
  color: #212529;
  display: none;
  float: left;
  font-size: 1rem;
  left: 0;
  list-style: outside none none;
  margin: 0.125rem 0 0;
  min-width: 10rem;
  padding: 0.5rem 1rem;
  position: absolute;
  text-align: left;
  top: 100%;
  z-index: 1000;
  line-height: 2rem;
}

.dropdown-menu a {
  color: #343a40;
}

/* -------------------------------------------- SHOPIFY */
.shopify-buy__product {
  border: 1px solid #cccdcf !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  padding: 15px !important;
  width: 100% !important;
}

/* -------------------------------------------- VIDEO */
video#bgvid {
  position: fixed;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  z-index: 1;
  -ms-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  background: url(img/html5-video-img-rev.png) no-repeat;
  background-size: cover;
}

@media only screen and (max-device-width: 992px) {
  video#bgvid {
    position: fixed;
    top: 50%;
    right: 25%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: 100%;
    z-index: 1;
    -ms-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    background: url(img/html5-video-img.png) no-repeat;
    background-size: cover;
  }
}

/*@media screen and (max-device-width: 800px) {
    html {
         background: url(img/html5-video-img.png) #000 no-repeat center center fixed;
    }
    #bgvid {
        display: none;
    }
}*/

/* -------------------------------------------- RULES */
.upper-rule {
  border-top: 1px dashed #a6a6a6;
  padding-top: 2em;
}

/* -------------------------------------------- CARDS */
.material-card__content h3 {
  font-size: 1.2em;
  margin-top: 15px;
}

.material-card p {
  font-size: 0.85em;
  margin-top: 15px;
}

.material-card__header img.material-card__img {
  width: 50%;
  margin: 0 auto 15px;
}

@media (max-width: 992px) {
  .thumbnail.material-card {
    margin-top: 35px;
  }

  .material-card__header img.material-card__img {
    width: 40%;
  }

  .material-card p {
    font-size: 1em;
    margin-top: 15px;
  }
}

/* -------------------------------------------- NAVBAR TOGGLE */
.navbar-toggler {
  z-index: 99999;
  padding: 1.25rem 0.75rem 1.25rem 1.75rem;
}

/* -------------------------------------------- SITE TITLE */

.site-title {
  text-shadow: 1px 1px 5px white;
}

@media (max-width: 992px) {
  #page-sub-header h1 {
    padding: 0;
  }

  #page-sub-header {
    padding-top: 5.75rem;
  }
}

#content section {
  padding-top: 5rem;
  padding-bottom: 5rem;
  /*margin-bottom: -3.75rem;*/
}

#content #primary {
  padding-top: 0;
  padding-bottom: 0;
  margin-bottom: 3.75rem;
}

/* timeline */
.timeline {
  list-style: none;
  padding: 0px 0 20px;
  position: relative;
  margin-top: 80px;
}

.timeline:before {
  top: 0;
  bottom: 0;
  position: absolute;
  content: " ";
  width: 3px;
  background-color: #eeeeee;
  left: 50%;
  margin-left: -1.5px;
  display: none;
}

.timeline > li {
  margin-bottom: 20px;
  position: relative;
}

.timeline > li:before,
.timeline > li:after {
  content: " ";
  display: table;
}

.timeline > li:after {
  clear: both;
}

.timeline > li:before,
.timeline > li:after {
  content: " ";
  display: table;
}

.timeline > li:after {
  clear: both;
}

.timeline > li > .timeline-panel {
  width: 46%;
  float: left;
  border: 1px solid #d4d4d4;
  border-radius: 2px;
  padding: 20px;
  position: relative;
  -webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.175);
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.175);
  margin-left: -20px;
  margin-right: -20px;
}

.timeline > li > .timeline-panel:before {
  position: absolute;
  top: 26px;
  right: -15px;
  display: inline-block;
  border-top: 15px solid transparent;
  border-left: 15px solid #ccc;
  border-right: 0 solid #ccc;
  border-bottom: 15px solid transparent;
  content: " ";
}

.timeline > li > .timeline-panel:after {
  position: absolute;
  top: 27px;
  right: -14px;
  display: inline-block;
  border-top: 14px solid transparent;
  border-left: 14px solid #fff;
  border-right: 0 solid #fff;
  border-bottom: 14px solid transparent;
  content: " ";
}

.timeline > li > .timeline-badge {
  background-color: #999999;
  background: transparent;
  border-radius: 50%;
  border-top-right-radius: 50%;
  border-top-left-radius: 50%;
  border-bottom-right-radius: 50%;
  border-bottom-left-radius: 50%;
  color: #fff;
  font-size: 1.4em;
  height: 70px;
  left: 50%;
  line-height: 45px;
  margin-left: -35px;
  position: absolute;
  text-align: center;
  top: 0px;
  width: 70px;
  z-index: 100;
}

.timeline > li.timeline-inverted > .timeline-panel {
  float: right;
}

.timeline > li.timeline-inverted > .timeline-panel:before {
  border-left-width: 0;
  border-right-width: 15px;
  left: -15px;
  right: auto;
}

.timeline > li.timeline-inverted > .timeline-panel:after {
  border-left-width: 0;
  border-right-width: 14px;
  left: -14px;
  right: auto;
}

.timeline-badge.primary {
  background-color: #2e6da4;
  background: transparent !important;
}

.timeline-badge.success {
  background-color: #3f903f;
  background: transparent !important;
}

.timeline-badge.warning {
  background-color: #f0ad4e;
  background: transparent !important;
}

.timeline-badge.danger {
  background-color: #d9534f;
  background: transparent !important;
}

.timeline-badge.info {
  background-color: #5bc0de;
  background: transparent !important;
}

.timeline-title {
  margin-top: 0;
  margin-bottom: 12px;
  color: inherit;
}

.timeline-body > p,
.timeline-body > ul {
  margin-bottom: 0;
  font-size: 0.9em;
}

.timeline-body > p + p {
  margin-top: 5px;
}

/* updated timeline styles */

.timeline > li > .timeline-badge {
  left: 0;
  margin-left: 0;
}

.timeline > li.timeline-inverted > .timeline-panel {
  float: left;
  margin-left: 95px;
  width: 80%;
}

.sample-videos {
  width: 100%;
}

@media (max-width: 767px) {
  ul.timeline:before {
    left: 40px;
  }

  ul.timeline > li > .timeline-panel {
    width: calc(100% - 90px);
    width: -moz-calc(100% - 90px);
    width: -webkit-calc(100% - 90px);
  }

  ul.timeline > li > .timeline-badge {
    left: 15px;
    margin-left: 0;
    top: 0px;
  }

  ul.timeline > li > .timeline-panel {
    float: right;
  }

  ul.timeline > li > .timeline-panel:before {
    border-left-width: 0;
    border-right-width: 15px;
    left: -15px;
    right: auto;
  }

  ul.timeline > li > .timeline-panel:after {
    border-left-width: 0;
    border-right-width: 14px;
    left: -14px;
    right: auto;
  }

  .timeline > li.timeline-inverted > .timeline-panel {
    margin-left: 65px;
  }

  ul.timeline > li > .timeline-badge {
    left: 0px;
  }

  .timeline > li > .timeline-badge {
    line-height: 0;
    text-align: left;
  }

  .timeline-badge img {
    width: 75%;
  }
}

.timeline-panel {
  background: #fff none repeat scroll 0 0;
}

/* wp video */

.wp-video {
  width: 100% !important;
}

.mejs-video {
  width: auto !important;
}

/* Additional CSS */

.disclaimer {
  font-size: 9px;
  font-style: italic;
  display: block;
  margin-top: 7em;
  padding-bottom: 10px;
}

blockquote {
  margin-left: 2em;
  font-size: 14px;

  margin-left: 2em;
  font-size: 14px;
  border-left: 5px solid lightgray;
  padding-left: 15px;
}

blockquote .cite {
  font-size: 12px;
  font-style: italic;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 0;
}

/* footer svg */

.footersvg {
  position: absolute;
  width: 100%;
  height: 100%;
  background: url(img/footer-bg.svg) repeat-x;
  bottom: 95%;
}

/* Shipofy */
#main.site-main
  .card
  div.card-footer
  div.shopify-buy-frame.shopify-buy-frame--product.shopify-buy__layout-vertical {
  max-width: 100% !important;
  padding-bottom: 20px !important;
}

.asterisk {
  color: red;
  font-weight: bold;
}

/* show/hide form for free kit */

#wpcf7-f132-p34-o1 {
  display: none;
}

/* gallery */

.wp-playlist-caption,
.wp-playlist-item-meta {
  display: block;
  font-size: 14px;
  line-height: 3.5 !important;
}

.entry-title {
  margin-bottom: 25px;
}

/* services */

.align-items-center .rounded-circle {
  border-radius: 0;
}

.align-items-center .p-5 {
  padding: 0 0 3rem 0 !important;
}

.services-item-container:nth-of-type(odd) .p-5 img {
  padding-left: 15%;
}

.services-item-container:nth-of-type(even) .p-5 img {
  padding-right: 15%;
}

.subtitle {
  font-family: "Ubuntu", sans-serif;
  font-size: 1em;
  font-weight: lighter;
}

/* order */

.card-img-top {
  height: 100%;
  max-width: none !important;
  margin: 0 auto;
}

/* blog excerpts */

.rpwwt-widget h3.widget-title {
  margin-bottom: 25px;
}

.widget-area {
  width: 100% !important;
  max-width: 100% !important;
}

.rpwwt-widget {
  width: 100%;
}

.rpwwt-widget li {
  display: inline-block;
  float: left;
  padding-right: 25px;
}

.excerpts-container .row > div {
  width: 100% !important;
  flex: 100% !important;
  max-width: 100%;
}

.rpwwt-widget li {
  width: 50%;
}

.excerpts-container section {
  padding-top: 1rem !important;
}

.rpwwt-widget ul li a img.wp-post-image {
  margin: 0 15px 5px 0;
}

.rpwwt-post-title {
  font-size: 1.2rem;
}

.rpwwt-post-date {
  font-size: 12px;
  font-weight: lighter;
}

.rpwwt-post-excerpt {
  font-size: 14px;
  margin-top: 15px;
}

/* posts page */

#primary.content-area #main.site-main p .wp-post-image {
  float: left;
  margin: 0 25px 45px 0;
}

.post-date-container p {
  font-size: 12px;
  font-weight: lighter;
  margin-top: 25px;
}

.prev-next-container {
  margin-bottom: 55px;
}

.attachment-post-thumbnail {
  margin: 0 15px 15px 0;
  float: left;
}

.perfect-pullquote {
  width: 45% !important;
}

@media only screen and (max-width: 1024px) {
  .perfect-pullquote {
    width: 45% !important;
  }
}

@media only screen and (max-width: 960px) {
  .perfect-pullquote {
    width: 45% !important;
  }
}

@media only screen and (max-width: 768px) {
  .perfect-pullquote {
    width: 90% !important;
  }
}

@media only screen and (max-width: 480px) {
  .perfect-pullquote {
    width: 90% !important;
  }

  .attachment-post-thumbnail {
    width: 100%;
    margin-bottom: 25px;
  }
}

.pullquote-align-right {
  text-align: left;
  margin: 1em 0 1em 1em;
  float: right;
}

/* excerpts home page */
@media only screen and (max-width: 768px) {
  #secondary.widget-area.col-sm-12.col-md-12.col-lg-4
    section#recent-posts-widget-with-thumbnails-2.widget.recent-posts-widget-with-thumbnails
    div#rpwwt-recent-posts-widget-with-thumbnails-2.rpwwt-widget
    ul
    li {
    width: 100%;
  }
}

.entry-content {
  width: 100%;
  margin: 0 auto;
}

.entry-meta {
  display: none !important;
  visibility: hidden !important;
}

/* video modals */

.modal-dialog {
  max-width: 60% !important;
}

@media only screen and (max-width: 768px) {
  .modal-dialog {
    max-width: 100% !important;
  }
}

.modal-body video {
  width: 100%;
  max-width: 100%;
}

.img-thumbnail {
  object-fit: cover;
  overflow: hidden;
}

/* */

header#masthead-header {
  position: relative;
  background: #fff;
  z-index: 100;
}

#masthead {
  position: static;
}

.dropdown-menu {
  min-width: 15rem;
}

.dropdown-item {
  line-height: 2.2;
  font-family: "Titillium Web", sans-serif;
}

.navbar-light .navbar-nav .nav-link,
.navbar-light .navbar-nav .nav-link:focus,
.navbar-light .navbar-nav .nav-link:hover {
  color: #000;
}

.container-special {
  position: relative !important;
}

.container {
  position: static;
}

/* how */

.how-item-container .display-4 {
  font-size: 3.1rem;
}

.youtube {
  display: inline-block;
  text-align: center;
  margin: 0 auto;
}

/* Blog */

.blog-bg-thumb {
  background-repeat: no-repeat;
  background-size: cover;
  height: 275px;
  position: relative;
}

.blog-bg-thumb h2 {
  margin-bottom: 65px;
  position: absolute;
  bottom: 0;
}

.pb-5,
.py-5 {
  padding-bottom: 3rem !important;
}
.pt-5,
.py-5 {
  padding-top: 3rem !important;
}

.bg-image-full {
  background: no-repeat center center scroll;
  background-image: none;
  background-size: auto auto;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  background-size: cover;
  -o-background-size: cover;
}

/* Google Maps Contact Page */

.mapouter {
  overflow: hidden;
  height: 250px;
  width: 100%;
}

/* footer */

.footer {
  background: #201b1a;
}

.footer p,
.footer a,
.footer h1,
.footer h2,
.footer h3,
.footer h4,
.footer h5 {
  color: #fff;
}

.footer ul {
  list-style: none;
}

.footer .card {
  border: none;
  background: none;
}

/* share buttons */

.a2a_svg {
  background-repeat: no-repeat;
  display: block;
  overflow: hidden;
  height: 22px !important;
  line-height: 22px !important;
  width: 22px !important;
}

/* survey monkey */

.smcx-embed {
  width: 100%;
  max-width: 700px;
  height: 600px;
  margin: 0 auto !important;
}

.sub-bg-1 {
  background: url(img/bg-blue-orange2.png) 0px 65% repeat;
  background: url(img/bg-blue-orange.jpg) 0px 20% repeat;
}

.sub-bg-2 {
  background: url(img/bg-blue-orange2.png) 0px 65% repeat;
  background: url(img/bg-blue-orange.jpg) 0px 20% repeat;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.sub-bg-2 h3 {
  margin-top: 35px;
}

.sub-bg-2 img {
  object-fit: contain;
  height: 100%;
  width: 100%;
}

.report-inset {
  position: absolute;
  bottom: -165px;
  right: 35px;
  max-width: 75%;
}

@media screen and (max-width: 960px) {
  .report-inset {
    position: absolute;
    bottom: -195px;
    right: 0;
    max-width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .inset-container {
    text-align: center;
  }

  .sub-bg-1 .sub-bg-1-container {
    margin-bottom: -130px;
  }

  .report-inset {
    position: relative;
    bottom: -50px;
    right: 0;
    max-width: 90%;
  }
}

@media screen and (max-width: 480px) {
  .sub-bg-1 .sub-bg-1-container {
    margin-bottom: -115px;
  }

  .report-inset {
    position: relative;
    bottom: -25px;
    right: 0;
    max-width: 100%;
  }
}

.hi-quote {
  font-style: italic;
  font-size: 1.5em;
}

span.citation {
  font-size: 12px;
  color: #454545;
}

.wpcf7-form-control.wpcf7-radio span {
  margin-right: 15px;
}

/* v2 homepage */

h3 {
  line-height: 2;
}

.video1-container {
  overflow: hidden;
}

.video1 {
  max-width: 150%;
  max-height: 100%;
  width: auto;
  height: auto;
}

.video2 {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
}

@media screen and (max-width: 768px) {
  .video1,
  .video2 {
    margin: 0 0 15px 0;
  }
}

.italics {
  font-style: italic;
}

.showcase-snippet {
  padding-top: 15px;
  padding-bottom: 45px;
}

.focus-quote-container {
  text-align: center;
  max-width: 95%;
}

.focus-quote-container .divider {
  width: 50%;
  height: 1px;
  margin: 15px auto 85px;
  background: lightgray;
}

.showcase-video-wrapper {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  margin-right: 25px;
}

.showcase-video-wrapper video {
  max-width: 215%;
  max-height: 100%;
  width: auto;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.data-showcase-row {
  margin-bottom: 35px;
  min-height: 250px;
}

.data-showcase-row p {
  font-size: 0.9rem;
}

.data-showcase-row div:nth-of-type(2n) {
  padding-left: 45px;
}

.data-showcase-row ul {
  /*list-style-type: none;*/
  padding-left: 35px;
  font-weight: 400;
  line-height: 1.5rem;
}

.section-control {
  padding-bottom: 0 !important;
}

.no-borders .table td,
.no-borders .table th {
  border: none;
}

/* bullets */

ul.pretty-list {
  list-style-type: none;
}

ul.pretty-list li {
  line-height: 2.2;
}

.bullet {
  height: 25px;
  margin-right: 8px;
  display: inline-block;
}

/* woo */

.woocommerce-breadcrumb {
  display: none !important;
}

.related.products {
  display: none !important;
}

.product_meta {
  display: none !important;
}

.woocommerce-tabs,
a.woocommerce-product-gallery__trigger {
  display: none;
}

.woocommerce-Price-amount.amount {
  margin-right: 15px;
}

.woocommerce .col2-set .col-1,
.woocommerce-page .col2-set .col-1 {
  max-width: 75% !important;
}

.woocommerce .col2-set .col-2,
.woocommerce-page .col2-set .col-2 {
  max-width: 25% !important;
}

.woocommerce-input-wrapper {
  width: 100% !important;
}



#main.site-main .attachment-woocommerce_thumbnail.size-woocommerce_thumbnail.wp-post-image {
	max-width: 200px !important;
	width: 200px !important;
	display: none;
	visibility: hidden;
}


.woocommerce #main form.woocommerce-ordering select.orderby.form-control,
.woocommerce #main form.woocommerce-ordering {
	display: none;
	visibility: hidden;
}