.touch a, .touch button, .touch .btn, .touch .button, .touch select {
  cursor: default;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  user-select: none;
}
.touch label {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  user-select: none;
}
.touch label span {
  cursor: default;
}
.no-touch a, .no-touch button, .no-touch .btn, .no-touch .button, .no-touch select {
  cursor: pointer;
  user-select: none;
}
.no-touch label {
  user-select: none;
}
.no-touch label span {
  cursor: pointer;
}
* {
  box-sizing: border-box;
}
*:focus {
  outline: none;
}
html {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
}
html, body {
  font-family: 'Nunito Sans', sans-serif;
  min-height: 600px;
}
html.full-body-content {
  height: 100%;
}
html.full-body-content body {
  min-height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}
html.full-body-content body > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

html.full-body-content body > div > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

html.full-body-content .main-content {
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

body {
  -webkit-overflow-scrolling: touch;
  /* Lets it scroll lazy */
}

@media (min-width: 992px) {
  body.collection-page {
    overflow: hidden;
  }
}

@media (max-width: 991px) {
  body.homepage {
    overflow: hidden;
  }
}