/* CSS Document */
/********* layout *********/
#mainContent .textBlock {
  margin: 10px 40px; }
  #mainContent .textBlock h3 {
    color: #828282; }
  #mainContent .textBlock figure {
    display: inline-table !important;
    margin: 8px 16px 12px;
    background-color: transparent; }
    #mainContent .textBlock figure img, #mainContent .textBlock figure a {
      display: block; }
    #mainContent .textBlock figure figcaption {
      display: table-caption;
      caption-side: bottom;
      font: 400 14px/20px "Source Sans Pro", "Helvetica", Verdana, sans-serif;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      text-align: center;
      margin-top: 8px; }
    #mainContent .textBlock figure.image[style*="left"] {
      margin-left: 0; }
    #mainContent .textBlock figure.image[style*="right"] {
      margin-right: 0; }

#mainContent main {
  /* &.bottomSpace {
			&:first-child {
				float: right;
				max-width: calc(100% - 350px);
				margin-left: 0;
				.homepageText {
					text-align: left;
				}
				+ .bottomSpace {
					display: inline-block;
				}
			}
		} */ }
  #mainContent main .homepageText {
    text-align: center; }
    #mainContent main .homepageText h1 {
      font-weight: 300; }
    #mainContent main .homepageText h4 {
      font-weight: 400; }
  #mainContent main#products {
    position: relative; }
    #mainContent main#products #prodSlider {
      display: block;
      width: 88%;
      overflow: hidden;
      position: relative; }
      #mainContent main#products #prodSlider .slides {
        margin-bottom: 0; }
        #mainContent main#products #prodSlider .slides > li {
          display: none;
          -webkit-backface-visibility: hidden; }
          #mainContent main#products #prodSlider .slides > li .info {
            width: 100%;
            height: 100%;
            box-sizing: border-box;
            padding: 22px 30px;
            text-align: right;
            position: absolute;
            top: 0;
            left: 0; }
            #mainContent main#products #prodSlider .slides > li .info h3 {
              text-shadow: 0px 0px 16px white, 0px 0px 10px white; }
            #mainContent main#products #prodSlider .slides > li .info p {
              max-width: 360px;
              margin: 0 0 20px auto;
              text-shadow: 0px 0px 10px white, 0px 0px 7px white; }
            #mainContent main#products #prodSlider .slides > li .info h6 {
              margin-bottom: 10px; }
    #mainContent main#products #prodThumbs {
      display: block;
      width: 11.3%;
      height: calc(100% + 2px);
      position: absolute;
      top: 0;
      right: 0;
      overflow: hidden; }
      #mainContent main#products #prodThumbs ul {
        margin-bottom: 0;
        position: relative;
        transform: translateY(0);
        transition: transform 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955); }
        #mainContent main#products #prodThumbs ul > li {
          display: block;
          -webkit-backface-visibility: hidden;
          cursor: pointer; }
          #mainContent main#products #prodThumbs ul > li > img {
            box-sizing: border-box;
            border: solid 1px transparent;
            transition: border 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955); }
          #mainContent main#products #prodThumbs ul > li:first-child {
            position: relative;
            z-index: 10; }
          #mainContent main#products #prodThumbs ul > li.active img {
            border: solid 1px #0093c9; }
          #mainContent main#products #prodThumbs ul > li.hidden {
            position: absolute;
            top: 0;
            left: 0; }
      #mainContent main#products #prodThumbs .direction {
        width: 100%;
        height: 30px;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        align-content: center;
        text-align: center;
        position: absolute;
        left: 0;
        z-index: 100; }
        #mainContent main#products #prodThumbs .direction:after {
          content: "";
          display: inline-block;
          width: 17px;
          height: 7px;
          background-image: url(/_images/arrow.svg);
          background-repeat: no-repeat;
          background-position: center center;
          transition: transform 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955); }
        #mainContent main#products #prodThumbs .direction.prev {
          top: 0; }
          #mainContent main#products #prodThumbs .direction.prev:after {
            transform: rotate(180deg) translateY(30px); }
        #mainContent main#products #prodThumbs .direction.next {
          bottom: 0; }
          #mainContent main#products #prodThumbs .direction.next:after {
            transform: translateY(30px); }
      #mainContent main#products #prodThumbs:hover .direction.prev:not(.disable):after, #mainContent main#products #prodThumbs:active .direction.prev:not(.disable):after {
        transform: rotate(180deg) translateY(0); }
      #mainContent main#products #prodThumbs:hover .direction.next:not(.disable):after, #mainContent main#products #prodThumbs:active .direction.next:not(.disable):after {
        transform: translateY(0); }
  #mainContent main#moreReviews {
    text-align: center; }
  #mainContent main#logos {
    text-align: center; }
    #mainContent main#logos h1 {
      margin-bottom: 40px; }
    #mainContent main#logos #theLogos {
      display: flex;
      flex-direction: row;
      flex-wrap: nowrap;
      justify-content: center;
      align-items: center;
      align-content: center; }
      #mainContent main#logos #theLogos .partLogo {
        display: inline-block;
        vertical-align: middle;
        max-width: 218px;
        margin: 0 2%; }
        #mainContent main#logos #theLogos .partLogo.Square {
          width: 18%; }
        #mainContent main#logos #theLogos .partLogo.Rectangle {
          width: 18.5%; }
        #mainContent main#logos #theLogos .partLogo img {
          width: auto;
          max-width: 100%;
          max-height: 180px; }
  #mainContent main#video video {
    width: 48%;
    max-width: 540px;
    height: auto; }
  #mainContent main#video .text {
    float: right;
    width: 48%;
    max-width: 540px; }
  #mainContent main#thumbnails {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start; }
    #mainContent main#thumbnails > div {
      width: 30%;
      max-width: 320px; }
      #mainContent main#thumbnails > div h6 {
        font-size: 12px;
        font-weight: 400;
        line-height: 12px;
        margin-bottom: 6px; }
        #mainContent main#thumbnails > div h6 a {
          color: #4d4d4d; }
          #mainContent main#thumbnails > div h6 a:hover, #mainContent main#thumbnails > div h6 a:active {
            color: #0093c9 !important; }
      #mainContent main#thumbnails > div .img {
        display: block;
        margin-bottom: 12px; }

#mainContent #testimonialsBenefits {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: stretch;
  align-content: flex-start;
  margin-bottom: 40px;
  clear: both; }
  #mainContent #testimonialsBenefits .flexslider {
    width: 50%;
    overflow: hidden;
    position: relative; }
    #mainContent #testimonialsBenefits .flexslider .slides {
      margin-bottom: 0; }
      #mainContent #testimonialsBenefits .flexslider .slides > li {
        -webkit-backface-visibility: hidden; }
        #mainContent #testimonialsBenefits .flexslider .slides > li > div {
          display: flex;
          flex-direction: column;
          flex-wrap: nowrap;
          justify-content: center;
          align-items: center;
          align-content: center;
          min-height: 520px;
          padding: 40px 40px 60px;
          box-sizing: border-box; }
    #mainContent #testimonialsBenefits .flexslider .flex-control-nav {
      width: 100%;
      padding: 10px 0;
      position: absolute;
      bottom: 0;
      left: 0;
      margin-bottom: 0;
      font-size: 0;
      line-height: 0;
      text-align: center;
      z-index: 100;
      opacity: 0.2;
      transition: opacity 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955); }
      #mainContent #testimonialsBenefits .flexslider .flex-control-nav li {
        display: inline-block; }
        #mainContent #testimonialsBenefits .flexslider .flex-control-nav li a {
          display: block;
          padding: 5px; }
          #mainContent #testimonialsBenefits .flexslider .flex-control-nav li a:after {
            content: "";
            display: block;
            width: 5px;
            height: 5px;
            border-style: solid;
            border-width: 1px;
            border-radius: 50%;
            transition: all 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955); }
          #mainContent #testimonialsBenefits .flexslider .flex-control-nav li a:hover:after, #mainContent #testimonialsBenefits .flexslider .flex-control-nav li a:active:after {
            background-color: #9d9d9d !important; }
          #mainContent #testimonialsBenefits .flexslider .flex-control-nav li a.flex-active:after {
            background-color: transparent !important; }
      #mainContent #testimonialsBenefits .flexslider .flex-control-nav:hover, #mainContent #testimonialsBenefits .flexslider .flex-control-nav:active {
        opacity: 1; }
  #mainContent #testimonialsBenefits #testimonials {
    background-color: #dbdbdb; }
    #mainContent #testimonialsBenefits #testimonials .slides li p {
      margin-bottom: 8px;
      color: #717171; }
    #mainContent #testimonialsBenefits #testimonials .slides li h3 {
      font-weight: 300;
      font-size: 1.75em;
      line-height: 1.5em;
      margin-bottom: 0; }
    #mainContent #testimonialsBenefits #testimonials .slides li h4 {
      font-weight: 400;
      font-size: 1.25em;
      line-height: 44px;
      margin-bottom: 0; }
    #mainContent #testimonialsBenefits #testimonials .flex-control-nav li a:after {
      border-color: #4d4d4d;
      background-color: #4d4d4d; }
  #mainContent #testimonialsBenefits #benefits .slides {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0; }
    #mainContent #testimonialsBenefits #benefits .slides li {
      width: 100%;
      height: 100%;
      position: absolute !important;
      top: 0;
      left: 0;
      text-align: center;
      color: white;
      background-position: center center;
      background-repeat: no-repeat;
      background-size: cover; }
      #mainContent #testimonialsBenefits #benefits .slides li h1 {
        font-weight: 600;
        font-size: 3.75em;
        line-height: 1em; }
        #mainContent #testimonialsBenefits #benefits .slides li h1 + h4 {
          font-weight: 400;
          line-height: 1.625em; }
      #mainContent #testimonialsBenefits #benefits .slides li h4 {
        font-size: 1.375em;
        line-height: 20px;
        margin-bottom: 5px;
        letter-spacing: 1px; }
        #mainContent #testimonialsBenefits #benefits .slides li h4 strong, #mainContent #testimonialsBenefits #benefits .slides li h4 b {
          font-weight: 400; }
      #mainContent #testimonialsBenefits #benefits .slides li > div {
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.3);
        position: absolute;
        top: 0;
        left: 0; }
      #mainContent #testimonialsBenefits #benefits .slides li:nth-child(2n+1) h1:after, #mainContent #testimonialsBenefits #benefits .slides li:last-child h1:after {
        content: "*";
        font-size: 20px;
        font-weight: 400;
        vertical-align: top; }
  #mainContent #testimonialsBenefits #benefits .flex-control-nav li a:after {
    border-color: white;
    background-color: white; }

/********* end layout *********/
/********* responsive *********/
@media (max-width: 1024px) {
  #mainContent main#products #prodSlider {
    width: auto; }
    #mainContent main#products #prodSlider .slides > li img {
      width: 150%; }
    #mainContent main#products #prodSlider .slides > li .info {
      width: auto;
      height: auto;
      padding: 20px 0;
      text-align: left;
      position: static; }
      #mainContent main#products #prodSlider .slides > li .info p {
        max-width: none; }
        #mainContent main#products #prodSlider .slides > li .info p:before, #mainContent main#products #prodSlider .slides > li .info p:after {
          left: 0; }
  #mainContent main#products #prodThumbs {
    width: 100%;
    height: auto;
    position: relative; }
    #mainContent main#products #prodThumbs ul {
      display: inline-flex;
      flex-direction: row;
      flex-wrap: nowrap;
      justify-content: flex-start;
      align-items: flex-start;
      align-content: flex-start;
      width: 100%;
      transform: translateY(0) !important; }
      #mainContent main#products #prodThumbs ul > li {
        display: inline-block;
        vertical-align: top;
        width: 20%; }
        #mainContent main#products #prodThumbs ul > li.hidden {
          width: 16.7%; }
    #mainContent main#products #prodThumbs .direction {
      display: none; } }

@media (max-width: 768px) {
  #mainContent .textBlock {
    margin: 10px 20px;
    max-width: none; }
    #mainContent .textBlock figure, #mainContent .textBlock img {
      max-width: 100% !important;
      float: none !important;
      width: 100% !important;
      margin-left: 0 !important;
      margin-right: 0 !important; }
  #mainContent main h1 {
    font-size: 2.109em; }
  #mainContent main#logos h1 {
    margin-bottom: 20px; }
  #mainContent main#logos #theLogos {
    flex-wrap: wrap; }
    #mainContent main#logos #theLogos .partLogo {
      max-width: none; }
      #mainContent main#logos #theLogos .partLogo.Square {
        width: 22%; }
      #mainContent main#logos #theLogos .partLogo.Rectangle {
        width: 34.2%; }
      #mainContent main#logos #theLogos .partLogo img {
        max-height: none; }
      #mainContent main#logos #theLogos .partLogo:nth-child(1) {
        margin-bottom: 16px; }
      #mainContent main#logos #theLogos .partLogo:nth-child(2) {
        margin-bottom: 16px; }
      #mainContent main#logos #theLogos .partLogo:nth-child(3) {
        margin-bottom: 16px; }
  #mainContent main#thumbnails {
    display: block; }
    #mainContent main#thumbnails > div {
      width: auto;
      max-width: none;
      margin-bottom: 30px; }
      #mainContent main#thumbnails > div .img {
        margin: 0 auto 6px; }
  #mainContent main#video video {
    width: 100%; }
  #mainContent main#video .text {
    float: none;
    width: 100%;
    max-width: 768px;
    margin-bottom: 20px; }
  #mainContent #testimonialsBenefits {
    display: block;
    margin-bottom: 20px; }
    #mainContent #testimonialsBenefits .flexslider {
      width: 100%; }
      #mainContent #testimonialsBenefits .flexslider .slides {
        position: static !important; }
        #mainContent #testimonialsBenefits .flexslider .slides > li {
          font-size: 80%; }
          #mainContent #testimonialsBenefits .flexslider .slides > li > div {
            min-height: 340px;
            padding: 40px 20px 60px;
            position: static !important; }
    #mainContent #testimonialsBenefits #testimonials .slides > li > div {
      min-height: 0; }
    #mainContent #testimonialsBenefits #benefits .slides > li {
      position: relative !important; } }

/********* end responsive *********/
