* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

html {
  overflow-x: initial; }

body {
  min-width: 320px; }

.wrapper {
  width: 100%;
  height: auto; }

.p-sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 1; }

.flex-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.flex-box > * {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  width: 50%;
  max-width: 50%; }

.flex-box.row-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse; }

.custom_block a,
.custom_block h1,
.custom_block h2:not(#js__g__email__form-header),
.custom_block h3,
.custom_block h4,
.custom_block h5,
.custom_block h6,
.custom_block p,
.custom_block span {
  color: #000; }

.custom_block .light a,
.custom_block .light h1,
.custom_block .light h2:not(#js__g__email__form-header),
.custom_block .light h3,
.custom_block .light h4,
.custom_block .light h5,
.custom_block .light h6,
.custom_block .light p,
.custom_block .light span {
  color: #fff; }

.custom_block .h2,
.custom_block h2 {
  font-size: 30px;
  margin: 0 0 10px 0; }

.custom_block .h4,
.custom_block h4 {
  font-size: 20px;
  margin: 0; }

.custom_block p {
  margin: 0;
  line-height: 1.6; }

.custom_block img {
  width: 100%;
  vertical-align: bottom; }

.custom_block .container {
  width: 80%;
  max-width: 1170px;
  padding: 50px 0;
  text-align: center;
  margin: 0 auto; }

.custom_block .bg-cover {
  background-size: cover;
  background-position: center; }

.custom_block .line-through {
  text-decoration: line-through;
  display: block;
  font-size: 0.85rem;
  color: #666; }

.custom_block small {
  color: #666; }

.custom_block .icon-plus,
.custom_block .icon-plus-1 {
  color: #50591b;
  font-size: 10px;
  margin-left: 8px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%); }

.custom_block .icon-plus-1:after,
.custom_block .icon-plus:after {
  content: "";
  position: absolute;
  border-radius: 50%;
  padding: 10px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background-color: #fff;
  z-index: -1;
  -webkit-transition: padding 0.3s ease-out 0s;
  -o-transition: padding 0.3s ease-out 0s;
  transition: padding 0.3s ease-out 0s; }

.custom_block .border-top:before {
  content: "";
  position: absolute;
  width: 90%;
  height: 1px;
  background-color: #ccc;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%); }

.custom_block .btn-size-default {
  font-size: 18px; }

.custom_block .btn-size-default.btn-white-empty {
  border-width: 2px; }

#hero .container p {
  font-size: 16px; }

#hero .container p span {
  display: inline-block;
  line-height: inherit; }

#where-to-use {
  text-align: center;
  margin-bottom: 0; }

#where-to-use nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 50px; }

#where-to-use nav > * {
  text-transform: uppercase;
  position: relative;
  padding: 0px 30px;
  margin: 10px 0;
  cursor: pointer; }

#where-to-use nav > .active:after {
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1);
  background-color: #000; }

#where-to-use nav > :after,
#where-to-use nav > :before {
  content: "";
  position: absolute;
  width: 100%;
  height: 4px;
  background-color: #ddd;
  bottom: -10px;
  left: 0;
  border-radius: 5px;
  -webkit-transform-origin: left center;
  -ms-transform-origin: left center;
  transform-origin: left center;
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition: background-color 0.3s ease-out, -webkit-transform 0.3s ease-out;
  transition: background-color 0.3s ease-out, -webkit-transform 0.3s ease-out;
  -o-transition: transform 0.3s ease-out, background-color 0.3s ease-out;
  transition: transform 0.3s ease-out, background-color 0.3s ease-out;
  transition: transform 0.3s ease-out, background-color 0.3s ease-out, -webkit-transform 0.3s ease-out; }

#where-to-use nav > :before {
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1); }

#where-to-use nav > :after {
  background-color: #000; }

#where-to-use .products-category-list {
  width: calc(100% - 40px);
  max-width: 1920px;
  height: 600px;
  margin: 0 auto;
  position: relative; }

#where-to-use .products-category-list [id] {
  color: #000000;
  width: 100%;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease-out 0s;
  -o-transition: opacity 0.3s ease-out 0s;
  transition: opacity 0.3s ease-out 0s;
  position: absolute;
  overflow: hidden; }

#where-to-use .products-category-list [id].active {
  opacity: 1;
  z-index: 1; }

#where-to-use .products-category-list [id] .wrapper .content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 90%;
  margin: 0 auto; }
  #where-to-use .products-category-list [id] .wrapper .content div {
    margin: 0 10px;
    width: 33.33%; }
    #where-to-use .products-category-list [id] .wrapper .content div h2 {
      font-size: 24px; }
    #where-to-use .products-category-list [id] .wrapper .content div p {
      font-size: 14px;
      color: #555555; }
    #where-to-use .products-category-list [id] .wrapper .content div img {
      width: 100%;
      max-width: 400px; }
    #where-to-use .products-category-list [id] .wrapper .content div .text {
      width: 85%;
      margin: 0 auto; }

#where-to-use .products-category-list .nav-container {
  position: relative;
  width: 40%;
  height: 100%;
  margin-left: auto;
  margin-right: 10%;
  text-align: left;
  padding-left: 30px; }

#where-to-use .products-category-list .nav-container [class*=nav] {
  position: absolute;
  z-index: 1; }

#where-to-use .products-category-list .nav-container [class*=nav]:hover {
  cursor: pointer; }

#where-to-use .products-category-list .nav-container .dot {
  position: absolute;
  width: 12px;
  height: 12px;
  background-color: #fff;
  border-radius: 50%;
  top: 10px; }

#where-to-use .products-category-list .nav-container .dot:after {
  content: "";
  position: absolute;
  width: 30px;
  height: 30px;
  border: 1px solid #fff;
  border-radius: 50%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-animation: dot-animation 1.2s ease-out 0s infinite;
  animation: dot-animation 1.2s ease-out 0s infinite; }

#where-to-use .products-category-list .nav-container .text {
  text-transform: uppercase;
  margin-bottom: 0;
  color: #fff; }

#where-to-use .products-category-list .nav-container .text:after,
#where-to-use .products-category-list .nav-container .text:before {
  content: "";
  position: absolute;
  width: 80px;
  height: 2px;
  background-color: #fff;
  left: -95px;
  top: 15px;
  border-radius: 5px; }

#where-to-use .products-category-list .nav-container .text:before {
  content: none; }

#where-to-use .products-category-list .nav-container .text:hover .icon-plus-1:after,
#where-to-use .products-category-list .nav-container .text:hover .icon-plus:after {
  padding: 11px; }

#products-category .wrapper > div {
  display: none;
  width: 80%;
  height: 80%;
  border-radius: 30px; }

#products-category .wrapper > div.active {
  display: block; }

#related {
  margin-bottom: 50px; }

#related .container {
  padding-bottom: 0; }

#related .flex-box {
  text-align: center;
  margin: 10px; }

#related .flex-box > * {
  position: relative;
  height: 50vh;
  max-height: 400px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: #000;
  margin: 10px; }

#related .flex-box .bg-cover {
  position: absolute;
  width: 100%;
  height: 100%; }

#related .flex-box .text {
  width: 80%;
  text-transform: uppercase;
  position: relative;
  -ms-flex-item-align: end;
  -ms-grid-row-align: end;
  align-self: end;
  margin-bottom: 20px;
  z-index: 1; }

#related .flex-box .text h2 {
  display: inline-block;
  margin-bottom: 5px;
  font-size: 24px;
  color: #ffffff; }

#related .flex-box .text p {
  font-size: 16px;
  line-height: 1.4;
  color: #ffffff; }

#related .flex-box [class*=icon] {
  margin-bottom: 0 !important; }

#related .flex-box [class*=icon]:before {
  vertical-align: middle; }

#outdoor {
  position: relative;
  width: 100%;
  overflow: hidden;
  z-index: 10; }
  #outdoor .container {
    text-align: center;
    width: 100% !important;
    max-width: 100%; }
    #outdoor .container h2 {
      color: #ffffff;
      font-weight: 500 !important; }
  #outdoor .content {
    position: relative;
    text-align: left;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    margin: 30px 0 50px 0; }
    #outdoor .content div {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      width: 500px;
      height: 450px;
      margin: 0 5px;
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center; }
    #outdoor .content .f01 {
      background-image: url(../images/four-feature-01.jpg); }
    #outdoor .content .f02 {
      background-image: url(../images/four-feature-02.jpg); }
    #outdoor .content .f03 {
      background-image: url(../images/four-feature-03.jpg); }
    #outdoor .content .f04 {
      background-image: url(../images/four-feature-04.jpg); }
    #outdoor .content .text {
      width: 90%;
      -webkit-box-pack: end;
      -ms-flex-pack: end;
      justify-content: end;
      margin-bottom: 15px; }
      #outdoor .content .text h2 {
        font-size: 24px; }
      #outdoor .content .text p {
        font-size: 14px;
        margin-bottom: 10px;
        text-align: center;
        color: #DDDDDD; }

@media (max-width: 1024px) {
  #where-to-use .products-category-list {
    height: 500px; }
  #outdoor .content div {
    height: 280px; }
  #outdoor .content .text p {
    font-size: 12px; }
  #related .flex-box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: initial;
    flex-flow: initial;
    overflow-x: scroll;
    overflow-y: hidden;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    margin-right: 0; }
  #related .flex-box > * {
    min-width: calc(40% - 20px); }
  #related .flex-box > :last-child {
    margin-right: 20px; }
  #related .flex-box .text > * {
    white-space: break-spaces; } }

@media (max-width: 768px) {
  #related .flex-box > * {
    min-width: calc(80% - 20px); }
  #related .flex-box > :last-child {
    margin-right: 20px; }
  #related .flex-box .text > * {
    white-space: break-spaces; } }

@media (max-width: 500px) {
  #where-to-use nav > * {
    padding: 0px 15px; }
  #where-to-use nav a h4 {
    font-size: 16px; }
  #where-to-use .products-category-list [id] .wrapper {
    overflow-x: auto; }
  #where-to-use .products-category-list [id] .wrapper .content {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    width: 210%; }
  #where-to-use .products-category-list [id] .wrapper .content div {
    width: 100%;
    margin: 0 10px 30px 10px;
    /* margin-bottom: 30px; */ }
  #where-to-use .products-category-list [id] .wrapper .content div img {
    width: 100%;
    max-width: 350px; }
  #where-to-use .products-category-list [id] .wrapper .content div h2 {
    margin-bottom: 10px;
    font-size: 21px; }
  #where-to-use .products-category-list {
    height: 500px; }
  #outdoor {
    overflow: auto;
    width: 90%;
    margin-left: 5%; }
  #outdoor .container {
    text-align: center;
    width: 250% !important;
    max-width: 250%;
    overflow-x: auto; }
  #related .flex-box > * {
    max-height: 250px;
    min-width: calc(90% - 20px); }
  #related .flex-box .text {
    width: 90%; } }
