@import url(https://fonts.googleapis.com/css?family=Montserrat&display=swap);
* {
  box-sizing: border-box; }

body, ul {
  margin: 0;
  padding: 0; }

li {
  list-style-type: none; }

button {
  cursor: pointer; }

@font-face {
  font-family: Glacial;
  src: url("/static/fonts/GlacialIndifference-Regular.otf"); }

.darken {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: none; }
  .darken.active {
    display: initial; }

@media only screen and (min-device-width: 768px) {
  .mobile {
    display: none; } }

/* Blinds */
/* layout */
html {
  background: #bbc1e3;
  font-family: "Glacial"; }
  html .content,
  html .description,
  html .excerpt {
    line-height: 1.75em; }
  html button {
    font-family: "Glacial"; }
  html a {
    text-decoration: none; }

.spinner {
  display: inline-block;
  position: relative;
  width: 64px;
  height: 64px; }
  .spinner div {
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 51px;
    height: 51px;
    margin: 6px;
    border: 6px solid #fff;
    border-radius: 50%;
    animation: spinner 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    border-color: rgba(0, 0, 0, 0.8) transparent transparent transparent; }
  .spinner div:nth-child(1) {
    animation-delay: -0.45s; }
  .spinner div:nth-child(2) {
    animation-delay: -0.3s; }
  .spinner div:nth-child(3) {
    animation-delay: -0.15s; }

@keyframes spinner {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

.loading {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  text-align: center; }
  .loading .loadSpin {
    display: inline-block;
    position: relative;
    width: 64px;
    height: 64px; }
    .loading .loadSpin div {
      box-sizing: border-box;
      display: block;
      position: absolute;
      width: 51px;
      height: 51px;
      margin: 6px;
      border: 6px solid #fff;
      border-radius: 50%;
      animation: spinner 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
      border-color: rgba(0, 0, 0, 0.8) transparent transparent transparent; }
    .loading .loadSpin div:nth-child(1) {
      animation-delay: -0.45s; }
    .loading .loadSpin div:nth-child(2) {
      animation-delay: -0.3s; }
    .loading .loadSpin div:nth-child(3) {
      animation-delay: -0.15s; }

@keyframes spinner {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

#__next-prerender-indicator {
  display: none; }

@media only screen and (max-device-width: 767px) {
  #blindsWrap {
    width: 100vw;
    min-height: 100vh; } }

#blindsWrap #top {
  position: fixed;
  right: 0;
  z-index: 999;
  display: grid;
  grid-auto-flow: column; }
  @media only screen and (max-device-width: 767px) {
    #blindsWrap #top {
      border-top: 1px solid rgba(0, 0, 0, 0.8);
      border-right: 0px solid rgba(0, 0, 0, 0.8);
      border-bottom: 0px solid rgba(0, 0, 0, 0.8);
      border-left: 0px solid rgba(0, 0, 0, 0.8);
      background: #bbc1e3;
      bottom: 0;
      left: 0;
      right: 0;
      height: 8vh; }
      #blindsWrap #top div {
        height: 100%;
        display: flex; }
        #blindsWrap #top div a {
          display: grid;
          grid-auto-flow: column;
          align-items: center;
          height: 100%; }
          #blindsWrap #top div a svg {
            height: 45%;
            width: auto; } }
  @media only screen and (min-device-width: 768px) {
    #blindsWrap #top {
      grid-gap: 15px;
      top: 0;
      min-width: 5vw;
      min-height: 5vw; } }

@media only screen and (max-device-width: 767px) {
  #blindsWrap #social a {
    margin-left: 5vw; } }

@media only screen and (min-device-width: 768px) {
  #blindsWrap #social {
    display: inline-grid;
    font-size: 1.5em;
    grid-auto-flow: column;
    justify-items: center;
    align-items: center;
    padding: 0 15px;
    grid-gap: 15px; } }

#blindsWrap #social a {
  color: rgba(0, 0, 0, 0.8); }

#blindsWrap #cart a {
  color: rgba(0, 0, 0, 0.8); }

@media only screen and (min-device-width: 768px) {
  #blindsWrap #cart {
    transition: all 0.2s; }
    #blindsWrap #cart.hidden {
      margin-right: -150%; }
      #blindsWrap #cart.hidden a {
        border: none; }
    #blindsWrap #cart a {
      border-top: 1px solid rgba(0, 0, 0, 0.8);
      border-right: 1px solid rgba(0, 0, 0, 0.8);
      border-bottom: 1px solid rgba(0, 0, 0, 0.8);
      border-left: 1px solid rgba(0, 0, 0, 0.8);
      font-size: 2em;
      display: flex;
      align-items: center;
      color: rgba(0, 0, 0, 0.8);
      padding: 10px;
      margin: 10px 10px 10px 0; }
      #blindsWrap #cart a:hover {
        background: #ffc439; }
      #blindsWrap #cart a .count {
        display: flex;
        align-items: center;
        font-size: 0.5em;
        margin-left: 0.5em; } }

@media only screen and (max-device-width: 767px) {
  #blindsWrap #cart {
    justify-content: flex-end;
    padding-right: 15px; }
    #blindsWrap #cart .count {
      margin-left: 7.5px;
      display: flex;
      align-items: center; }
    #blindsWrap #cart.hidden .count {
      display: none; } }

@media only screen and (min-device-width: 768px) {
  #blindsWrap #blinds #menu {
    position: fixed;
    top: 0;
    height: 100vh;
    display: grid;
    grid-template-rows: 25vh 75vh;
    width: calc(0.75 * 346px); } }

@media only screen and (min-device-width: 768px) {
  #blindsWrap #blinds #menu #menuTop {
    width: 100%;
    height: 25vh; } }

@media only screen and (min-device-width: 768px) {
  #blindsWrap #blinds #menu #menuBottom {
    display: grid;
    grid-template-rows: auto 1fr; } }

@media only screen and (max-device-width: 767px) {
  #blindsWrap #blinds #content {
    margin-top: 10vh;
    margin-bottom: 8vh; } }

@media only screen and (min-device-width: 768px) {
  #blindsWrap #blinds #content {
    margin-left: calc(0.75 * 346px); } }

@media only screen and (min-device-width: 768px) {
  #menu #menuTop {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%; }
    #menu #menuTop .logoWrap {
      width: 50%; }
      #menu #menuTop .logoWrap .logo {
        width: 100%; }
        #menu #menuTop .logoWrap .logo img {
          width: 100%; }
  #menu #menuBottom {
    border-top: 1px solid rgba(0, 0, 0, 0.8);
    border-right: 1px solid rgba(0, 0, 0, 0.8);
    border-bottom: 0px solid rgba(0, 0, 0, 0.8);
    border-left: 0px solid rgba(0, 0, 0, 0.8);
    background: #bbc1e3; }
    #menu #menuBottom .blindsWrap {
      position: relative;
      background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.8) 1.22%, transparent 1.22%, transparent 50%, rgba(0, 0, 0, 0.8) 50%, rgba(0, 0, 0, 0.8) 51.22%, transparent 51.22%, transparent 100%);
      background-size: 82px 82px; }
    #menu #menuBottom .blinds {
      position: absolute;
      bottom: 0; }
    #menu #menuBottom .cart {
      border-bottom: none; }
    #menu #menuBottom .fingerWrap {
      border-right: 1px solid rgba(0, 0, 0, 0.8);
      height: calc(0.75 * 118);
      width: calc(0.75 * 346px); }
    #menu #menuBottom .finger {
      border-right: 1px solid rgba(0, 0, 0, 0.8);
      width: calc(0.75 * 346px);
      transform: scale(1, 1);
      transform-origin: top;
      transition: transform 0.25s; } }
    @media only screen and (min-device-width: 768px) and (min-device-width: 768px) {
      #menu #menuBottom .finger.hidden {
        transform: scale(1, 0); } }

@media only screen and (min-device-width: 768px) {
  #menu .mobileBlinds {
    width: calc(0.75 * 346px);
    background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.8) 1.22%, transparent 1.22%, transparent 50%, rgba(0, 0, 0, 0.8) 50%, rgba(0, 0, 0, 0.8) 51.22%, transparent 51.22%, transparent 100%);
    background-size: 82px 82px; }
    #menu .mobileBlinds.top {
      height: 63px; }
    #menu .mobileBlinds.bottom {
      height: 21px;
      transform: scale(1, -1); } }
  @media only screen and (min-device-width: 768px) and (min-device-width: 768px) {
    #menu .mobileBlinds {
      display: none; } }

@media only screen and (max-device-width: 767px) {
  #menu {
    position: fixed;
    top: 0;
    z-index: 999;
    overflow: hidden;
    width: 100vw;
    height: 10vh;
    background: #bbc1e3;
    transition: all 0.25s; }
    #menu:not(.active) {
      border-top: 0px solid rgba(0, 0, 0, 0.8);
      border-right: 0px solid rgba(0, 0, 0, 0.8);
      border-bottom: 1px solid rgba(0, 0, 0, 0.8);
      border-left: 0px solid rgba(0, 0, 0, 0.8); }
    #menu .hamburgerIcon {
      position: absolute;
      right: 0;
      display: flex;
      justify-content: center;
      align-items: center;
      height: 100%;
      padding: 15px; }
    #menu.active {
      height: 100%;
      transition: all 0.25s; }
      #menu.active .menuBottom .finger {
        max-height: 999px;
        transition: max-height 1s; }
      #menu.active #menuTop .menuTitle .pageTitle {
        transform: translate(0, 100%); }
      #menu.active #menuTop .menuTitle .menuHeader {
        transform: translate(0, 0); }
    #menu #menuTop {
      position: relative;
      width: 100%;
      display: grid;
      grid-template-columns: auto 1fr;
      align-items: center;
      border-top: 0px solid rgba(0, 0, 0, 0.8);
      border-right: 0px solid rgba(0, 0, 0, 0.8);
      border-bottom: 1px solid rgba(0, 0, 0, 0.8);
      border-left: 0px solid rgba(0, 0, 0, 0.8); }
      #menu #menuTop .menuTitle {
        position: absolute;
        overflow: hidden;
        top: 0;
        width: 100%;
        height: 100%; }
        #menu #menuTop .menuTitle .pageTitle {
          position: absolute;
          width: 100%;
          height: 100%;
          display: flex;
          justify-content: center;
          align-items: center;
          transform: translate(0, 0);
          transition: transform 0.25s; }
        #menu #menuTop .menuTitle .menuHeader {
          position: absolute;
          width: 100%;
          height: 100%;
          display: flex;
          justify-content: center;
          align-items: center;
          transform: translate(0, 100%);
          transition: transform 0.25s; }
      #menu #menuTop .logoWrap {
        position: relative;
        z-index: 2;
        width: 10vh;
        height: 10vh;
        display: flex;
        justify-content: center;
        align-items: center; }
        #menu #menuTop .logoWrap .logo {
          padding: 10px;
          text-align: center; }
          #menu #menuTop .logoWrap .logo img {
            width: 100%; }
      #menu #menuTop .menuToggle {
        position: relative;
        z-index: 2;
        width: 100%;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        overflow: hidden; }
    #menu #menuBottom {
      display: grid;
      grid-template-rows: calc(40px + 2px) auto 1fr;
      height: 100%; }
      #menu #menuBottom .blindsWrap,
      #menu #menuBottom .mobileFiller {
        background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.8) 1.22%, transparent 1.22%, transparent 50%, rgba(0, 0, 0, 0.8) 50%, rgba(0, 0, 0, 0.8) 51.22%, transparent 51.22%, transparent 100%);
        background-size: 82px 82px; }
      #menu #menuBottom .fingerWrap {
        position: absolute;
        bottom: 1px;
        background: #bbc1e3; }
      #menu #menuBottom .finger {
        width: 100vw;
        transform: scale(1);
        transition: transform 0.2s;
        transition-delay: 0.1s;
        transform-origin: top; }
        #menu #menuBottom .finger.mobileHidden {
          transform: scale(1, 0);
          transition-duration: 0.05s;
          transition-delay: 0; } }

@media only screen and (min-device-width: 768px) {
  .nav {
    text-transform: uppercase; }
    .nav li {
      position: relative;
      overflow: hidden;
      min-height: 40px;
      border-top: 0px solid #000;
      border-right: 0px solid #000;
      border-bottom: 1px solid #000;
      border-left: 0px solid #000; }
    .nav .menuItem {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      height: 40px;
      cursor: pointer; }
      .nav .menuItem .dropContainer {
        position: relative;
        width: 100%;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        transform: translate(0, 100%); }
        .nav .menuItem .dropContainer.ready {
          transform: translate(0, 0);
          transition: transform 0.5s; }
      .nav .menuItem a {
        text-decoration: none;
        color: inherit; }
      .nav .menuItem:hover {
        background: rgba(0, 0, 0, 0.8);
        color: #bbc1e3; } }

@media only screen and (max-device-width: 767px) {
  .nav {
    text-transform: uppercase; }
    .nav li {
      min-height: calc(0.75 * 118);
      border-top: 0px solid #000;
      border-right: 0px solid #000;
      border-bottom: 1px solid #000;
      border-left: 0px solid #000; } }
    @media only screen and (max-device-width: 767px) and (max-device-width: 767px) {
      .nav li:first-child {
        margin-top: -1px; } }

@media only screen and (max-device-width: 767px) {
    .nav .menuItem {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      height: 40px;
      cursor: pointer; }
      .nav .menuItem a {
        text-decoration: none;
        color: inherit; }
      .nav .menuItem:hover, .nav .menuItem.active {
        background: rgba(0, 0, 0, 0.8);
        color: #bbc1e3; } }

@media only screen and (max-device-width: 767px) {
  .page {
    padding: 20px;
    padding-bottom: 40px; }
    .page #pageTitle:not(.home) {
      display: none; }
    .page h1:first-child {
      margin-top: 0; }
  .pageProducts {
    margin-top: 40px; } }

@media only screen and (min-device-width: 768px) {
  .page {
    display: grid;
    grid-template-rows: 25vh 1fr;
    padding: 60px;
    padding-top: 0; }
    .page #pageTitle {
      display: flex;
      align-items: center; }
      .page #pageTitle h1 {
        margin-block-start: 0;
        margin-block-end: 0; }
    .page #pageContent {
      max-width: 960px; }
      .page #pageContent > div:first-child > p:first-child,
      .page #pageContent > div:first-child > h1:first-child {
        margin-top: -1em; }
      .page #pageContent .content {
        width: 60%;
        margin-bottom: 30px; } }

.store {
  display: grid; }
  @media only screen and (min-device-width: 768px) {
    .store {
      max-width: 800px;
      grid-template-columns: repeat(3, 1fr);
      grid-gap: 30px; } }
  @media only screen and (max-device-width: 767px) {
    .store {
      grid-auto-flow: row;
      grid-gap: 40px;
      padding: 40px;
      padding-top: 10px;
      padding-bottom: 0; } }

.cart {
  margin-bottom: 60px; }
  .cart .success {
    position: relative;
    overflow: hidden;
    border-top: 1px solid rgba(0, 0, 0, 0.8);
    border-right: 1px solid rgba(0, 0, 0, 0.8);
    border-bottom: 1px solid rgba(0, 0, 0, 0.8);
    border-left: 1px solid rgba(0, 0, 0, 0.8);
    padding: 10px 20px;
    margin-bottom: 30px; }
    .cart .success span {
      padding-bottom: 3px;
      border-top: 0px solid rgba(0, 0, 0, 0.8);
      border-right: 0px solid rgba(0, 0, 0, 0.8);
      border-bottom: 1px solid rgba(0, 0, 0, 0.8);
      border-left: 0px solid rgba(0, 0, 0, 0.8); }
    .cart .success .close {
      position: absolute;
      top: 0;
      right: 0;
      background: #bbc1e3;
      transform: translate(100%, 0);
      transition: all 0.2s;
      font-size: 1.5em;
      margin: -3px;
      cursor: pointer; }
    .cart .success:hover .close {
      transform: translate(0, 0); }
  .cart .cartItems {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-flow: row;
    margin-bottom: 30px; }
  .cart .cartHead,
  .cart .cartItem {
    padding: 10px;
    border-top: 1px solid rgba(0, 0, 0, 0.8);
    border-right: 0px solid rgba(0, 0, 0, 0.8);
    border-bottom: 1px solid rgba(0, 0, 0, 0.8);
    border-left: 1px solid rgba(0, 0, 0, 0.8); }
    .cart .cartHead.quantity,
    .cart .cartItem.quantity {
      border-top: 1px solid rgba(0, 0, 0, 0.8);
      border-right: 1px solid rgba(0, 0, 0, 0.8);
      border-bottom: 0px solid rgba(0, 0, 0, 0.8);
      border-left: 1px solid rgba(0, 0, 0, 0.8); }
  .cart .cartHead {
    text-transform: capitalize;
    font-weight: bold;
    border-bottom: none; }
  .cart .cartItem:not(.quantity) {
    display: flex;
    justify-content: center;
    align-items: center; }
  .cart .cartItem.isRemoving {
    background: rgba(0, 0, 0, 0.1); }
  .cart .cartItem.price::before {
    content: "$"; }
  .cart .cartItem.quantity {
    grid-template-columns: 1fr auto;
    display: grid;
    padding: 0;
    border-top: 1px solid rgba(0, 0, 0, 0.8);
    border-right: 1px solid rgba(0, 0, 0, 0.8);
    border-bottom: 1px solid rgba(0, 0, 0, 0.8);
    border-left: 1px solid rgba(0, 0, 0, 0.8); }
    .cart .cartItem.quantity .amount {
      display: flex;
      justify-content: center;
      align-items: center;
      border-bottom: 0 !important; }
    .cart .cartItem.quantity .buttons {
      border-top: 0px solid rgba(0, 0, 0, 0.8);
      border-right: 0px solid rgba(0, 0, 0, 0.8);
      border-bottom: 0px solid rgba(0, 0, 0, 0.8);
      border-left: 1px solid rgba(0, 0, 0, 0.8);
      display: grid;
      grid-template-rows: repeat(3, auto); }
      .cart .cartItem.quantity .buttons div {
        display: flex;
        justify-content: center;
        align-items: center;
        border-top: 0px solid rgba(0, 0, 0, 0.8);
        border-right: 0px solid rgba(0, 0, 0, 0.8);
        border-bottom: 1px solid rgba(0, 0, 0, 0.8);
        border-left: 0px solid rgba(0, 0, 0, 0.8);
        padding: 3px; }
      .cart .cartItem.quantity .buttons .remove {
        border-bottom: 0; }
      .cart .cartItem.quantity .buttons div:not(.disabled) {
        cursor: pointer; }
        .cart .cartItem.quantity .buttons div:not(.disabled):hover {
          background: rgba(0, 0, 0, 0.1); }
      .cart .cartItem.quantity .buttons .disabled svg {
        opacity: 0.25; }
  .cart .remove {
    display: flex;
    padding: 10px;
    align-items: center;
    cursor: pointer;
    border-top: 1px solid rgba(0, 0, 0, 0.8);
    border-right: 1px solid rgba(0, 0, 0, 0.8);
    border-bottom: 0px solid rgba(0, 0, 0, 0.8);
    border-left: 0px solid rgba(0, 0, 0, 0.8); }
    @media only screen and (max-device-width: 767px) {
      .cart .remove {
        display: none; } }
    .cart .remove:hover {
      background: rgba(0, 0, 0, 0.1); }
  .cart .cartFooter {
    float: right;
    display: grid;
    grid-template-columns: auto auto;
    border-top: 1px solid rgba(0, 0, 0, 0.8);
    border-right: 1px solid rgba(0, 0, 0, 0.8);
    border-bottom: 1px solid rgba(0, 0, 0, 0.8);
    border-left: 1px solid rgba(0, 0, 0, 0.8); }
    .cart .cartFooter > div {
      padding: 10px; }
    .cart .cartFooter .label {
      font-weight: bold;
      text-align: center; }
    .cart .cartFooter .value {
      border-top: 0px solid rgba(0, 0, 0, 0.8);
      border-right: 0px solid rgba(0, 0, 0, 0.8);
      border-bottom: 0px solid rgba(0, 0, 0, 0.8);
      border-left: 1px solid rgba(0, 0, 0, 0.8); }
      .cart .cartFooter .value::before {
        content: "$"; }
    .cart .cartFooter .paypal {
      border-top: 1px solid rgba(0, 0, 0, 0.8);
      border-right: 0px solid rgba(0, 0, 0, 0.8);
      border-bottom: 0px solid rgba(0, 0, 0, 0.8);
      border-left: 0px solid rgba(0, 0, 0, 0.8);
      grid-column: 1 / -1; }

.productPreviewWrap {
  position: relative;
  overflow: hidden;
  width: 100%; }
  @media only screen and (max-device-width: 767px) {
    .productPreviewWrap {
      display: flex;
      justify-content: center; } }
  .productPreviewWrap .productPreview .cover {
    border-top: 1px solid rgba(0, 0, 0, 0.8);
    border-right: 1px solid rgba(0, 0, 0, 0.8);
    border-bottom: 1px solid rgba(0, 0, 0, 0.8);
    border-left: 1px solid rgba(0, 0, 0, 0.8);
    position: relative;
    overflow: hidden;
    margin-bottom: 15px; }
    .productPreviewWrap .productPreview .cover a {
      display: grid; }
  .productPreviewWrap .productPreview .button {
    width: 100%;
    border-top: 1px solid rgba(0, 0, 0, 0.8);
    border-right: 1px solid rgba(0, 0, 0, 0.8);
    border-bottom: 1px solid rgba(0, 0, 0, 0.8);
    border-left: 1px solid rgba(0, 0, 0, 0.8);
    cursor: pointer;
    text-align: center; }
    .productPreviewWrap .productPreview .button .price::before {
      content: "$"; }
    .productPreviewWrap .productPreview .button.soldOut {
      cursor: not-allowed; }
      .productPreviewWrap .productPreview .button.soldOut .addToCart {
        display: none; }
      @media only screen and (min-device-width: 768px) {
        .productPreviewWrap .productPreview .button.soldOut .price {
          display: none; } }
    .productPreviewWrap .productPreview .button:not(.soldOut) .sold {
      display: none; }
    .productPreviewWrap .productPreview .button.isCart .addToCart {
      display: none !important; }
    @media only screen and (max-device-width: 767px) {
      .productPreviewWrap .productPreview .button.isCart {
        background: #ffc439; } }
    @media only screen and (min-device-width: 768px) {
      .productPreviewWrap .productPreview .button.isCart .price {
        display: none; }
      .productPreviewWrap .productPreview .button.isCart:hover {
        background: #ffc439; } }
    .productPreviewWrap .productPreview .button:not(.isCart) .checkOut {
      display: none; }
    @media only screen and (max-device-width: 767px) {
      .productPreviewWrap .productPreview .button {
        display: grid;
        grid-template-columns: 1fr 1fr;
        justify-content: center; }
        .productPreviewWrap .productPreview .button div {
          background: #fff;
          color: rgba(0, 0, 0, 0.8);
          display: flex;
          justify-content: center;
          align-items: center;
          font-size: 1.25em;
          padding: 10px 15px; }
        .productPreviewWrap .productPreview .button .price {
          border-top: 0px solid rgba(0, 0, 0, 0.8);
          border-right: 1px solid rgba(0, 0, 0, 0.8);
          border-bottom: 0px solid rgba(0, 0, 0, 0.8);
          border-left: 0px solid rgba(0, 0, 0, 0.8); }
        .productPreviewWrap .productPreview .button .checkOut {
          background: #ffc439; } }
    @media only screen and (min-device-width: 768px) {
      .productPreviewWrap .productPreview .button {
        background: #fff;
        color: rgba(0, 0, 0, 0.8);
        font-size: 1.25em;
        padding: 10px 15px; }
        .productPreviewWrap .productPreview .button .addToCart {
          display: none; }
        .productPreviewWrap .productPreview .button:hover:not(.soldOut):not(.isCart) {
          background: rgba(0, 0, 0, 0.8);
          color: #fff; }
          .productPreviewWrap .productPreview .button:hover:not(.soldOut):not(.isCart) a {
            color: #bbc1e3; }
          .productPreviewWrap .productPreview .button:hover:not(.soldOut):not(.isCart) .price {
            display: none; }
          .productPreviewWrap .productPreview .button:hover:not(.soldOut):not(.isCart) .addToCart {
            display: initial; } }
  .productPreviewWrap .productPreview img {
    width: 100%; }

.productFeatured {
  display: grid;
  grid-template-columns: auto auto;
  grid-template-rows: auto 1fr;
  grid-column-gap: 30px;
  grid-row-gap: 15px;
  min-height: 500px; }
  @media only screen and (min-device-width: 768px) {
    .productFeatured {
      margin-bottom: 30px; } }
  @media only screen and (max-device-width: 767px) {
    .productFeatured {
      grid-template-columns: 1fr;
      grid-template-rows: repeat(4, auto);
      grid-column-gap: 0;
      grid-row-gap: 5vh;
      margin-top: 5vh; } }
  .productFeatured .headline {
    text-align: center;
    font-size: 1.25em; }
    @media only screen and (min-device-width: 768px) {
      .productFeatured .headline {
        grid-column: 2; } }
    @media only screen and (max-device-width: 767px) {
      .productFeatured .headline {
        grid-row: 1; } }
    .productFeatured .headline p {
      display: inline-block;
      margin: 0 10px 10px;
      padding: 0 10px 10px;
      border-top: 0px solid rgba(0, 0, 0, 0.8);
      border-right: 0px solid rgba(0, 0, 0, 0.8);
      border-bottom: 1px solid rgba(0, 0, 0, 0.8);
      border-left: 0px solid rgba(0, 0, 0, 0.8); }
      @media only screen and (max-device-width: 767px) {
        .productFeatured .headline p {
          margin: 0; } }
  .productFeatured .cover {
    position: relative;
    overflow: hidden;
    grid-row: 2 / 3; }
    @media only screen and (max-device-width: 767px) {
      .productFeatured .cover {
        padding: 10px 20px 0; } }
    .productFeatured .cover a {
      display: grid;
      color: rgba(0, 0, 0, 0.8); }
    .productFeatured .cover img {
      width: 100%;
      border-top: 1px solid rgba(0, 0, 0, 0.8);
      border-right: 1px solid rgba(0, 0, 0, 0.8);
      border-bottom: 1px solid rgba(0, 0, 0, 0.8);
      border-left: 1px solid rgba(0, 0, 0, 0.8); }
      @media only screen and (min-device-width: 768px) {
        .productFeatured .cover img {
          max-width: 300px; } }
    .productFeatured .cover .shareWrap {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      transform: translate(-100%, 0);
      transition: all 0.2s; }
      @media only screen and (max-device-width: 767px) {
        .productFeatured .cover .shareWrap {
          display: none; } }
      .productFeatured .cover .shareWrap .shareContainer {
        display: inline-block;
        background: #bbc1e3;
        border-top: 0px solid rgba(0, 0, 0, 0.8);
        border-right: 1px solid rgba(0, 0, 0, 0.8);
        border-bottom: 1px solid rgba(0, 0, 0, 0.8);
        border-left: 0px solid rgba(0, 0, 0, 0.8);
        padding: 20px;
        font-size: 2em; }
        .productFeatured .cover .shareWrap .shareContainer svg {
          transition: all 0.2s; }
          .productFeatured .cover .shareWrap .shareContainer svg:hover {
            transform: scale(1.25); }
    .productFeatured .cover:hover .shareWrap {
      transform: translate(0, 0);
      transition: all 0.2s; }
  @media only screen and (min-device-width: 768px) {
    .productFeatured .details {
      display: flex;
      flex-direction: column;
      justify-content: space-between; } }
  @media only screen and (max-device-width: 767px) {
    .productFeatured .details {
      display: grid;
      grid-row-gap: 2.5vh; } }
  .productFeatured .details h1:first-child {
    margin: 0;
    text-align: center; }
  .productFeatured .details .descriptionWrap::before, .productFeatured .details .descriptionWrap::after {
    width: 75%;
    border-top: 1px solid rgba(0, 0, 0, 0.8);
    border-right: 0px solid rgba(0, 0, 0, 0.8);
    border-bottom: 0px solid rgba(0, 0, 0, 0.8);
    border-left: 0px solid rgba(0, 0, 0, 0.8);
    display: block;
    content: ""; }
    @media only screen and (max-device-width: 767px) {
      .productFeatured .details .descriptionWrap::before, .productFeatured .details .descriptionWrap::after {
        margin: 2.5vh auto; } }
    @media only screen and (min-device-width: 768px) {
      .productFeatured .details .descriptionWrap::before, .productFeatured .details .descriptionWrap::after {
        margin: 30px auto; } }
  .productFeatured .details .description {
    align-self: center;
    padding: 15px 30px;
    text-align: center; }
    @media only screen and (max-device-width: 767px) {
      .productFeatured .details .description {
        margin: 0 2.5vw; } }
  .productFeatured .details .bylines table th {
    text-align: left; }
  .productFeatured .details .bylines table th,
  .productFeatured .details .bylines table td {
    padding: 5px; }
  .productFeatured .details .bylines table tr:last-child th,
  .productFeatured .details .bylines table tr:last-child td {
    padding-bottom: 0; }

@media only screen and (max-device-width: 767px) {
  .stockists .region {
    border-top: 0px solid rgba(0, 0, 0, 0.8);
    border-right: 0px solid rgba(0, 0, 0, 0.8);
    border-bottom: 1px solid rgba(0, 0, 0, 0.8);
    border-left: 0px solid rgba(0, 0, 0, 0.8);
    padding-bottom: 45px;
    margin-bottom: 45px;
    text-align: center; }
    .stockists .region:last-child {
      border-bottom: 0;
      margin-bottom: 0; } }

@media only screen and (min-device-width: 768px) {
  .stockists .region:not(:last-child) {
    margin-bottom: 75px; } }

@media only screen and (min-device-width: 768px) {
  .stockists .region h1:first-child {
    margin-top: -1em; } }

.stockists .region .regionGrid {
  display: inline-grid;
  grid-gap: 45px; }
  @media only screen and (max-device-width: 767px) {
    .stockists .region .regionGrid {
      width: 100%; } }
  @media only screen and (min-device-width: 768px) {
    .stockists .region .regionGrid {
      grid-template-columns: repeat(3, 1fr); } }

.stockists .region .stockistWrap {
  display: grid;
  grid-template-rows: auto auto; }
  @media only screen and (max-device-width: 767px) {
    .stockists .region .stockistWrap .stockist {
      text-align: center; } }
  .stockists .region .stockistWrap .stockist p,
  .stockists .region .stockistWrap .stockist a {
    line-height: 0.75; }
  .stockists .region .stockistWrap .stockist p:first-child {
    margin-top: 0; }

@media only screen and (max-device-width: 767px) {
  .stockists .region .stockistFoot {
    display: none; } }

.stockists .region .mobile {
  display: grid;
  grid-template-columns: repeat(3, auto);
  justify-content: center; }
  @media only screen and (min-device-width: 768px) {
    .stockists .region .mobile {
      display: none; } }
  .stockists .region .mobile a {
    text-align: center;
    padding: 10px;
    border-top: 1px solid rgba(0, 0, 0, 0.8);
    border-right: 0px solid rgba(0, 0, 0, 0.8);
    border-bottom: 1px solid rgba(0, 0, 0, 0.8);
    border-left: 1px solid rgba(0, 0, 0, 0.8); }
    .stockists .region .mobile a:last-child {
      border-top: 1px solid rgba(0, 0, 0, 0.8);
      border-right: 1px solid rgba(0, 0, 0, 0.8);
      border-bottom: 1px solid rgba(0, 0, 0, 0.8);
      border-left: 1px solid rgba(0, 0, 0, 0.8); }

form.newsletter {
  display: inline-block; }
  form.newsletter input,
  form.newsletter button {
    font-size: 1.25em; }
  form.newsletter input {
    border-top: 1px solid rgba(0, 0, 0, 0.8);
    border-right: 1px solid rgba(0, 0, 0, 0.8);
    border-bottom: 1px solid rgba(0, 0, 0, 0.8);
    border-left: 1px solid rgba(0, 0, 0, 0.8);
    background: rgba(255, 255, 255, 0.25);
    padding: 10px;
    margin-right: 20px;
    margin-bottom: 10px; }
  form.newsletter button {
    padding: 10px;
    border-top-left-radius: calc(5px * 1);
    border-top-right-radius: calc(5px * 1);
    border-bottom-right-radius: calc(5px * 1);
    border-bottom-left-radius: calc(5px * 1);
    background: rgba(0, 0, 0, 0.8);
    color: #fff;
    border-top: 1px solid rgba(0, 0, 0, 0.8);
    border-right: 1px solid rgba(0, 0, 0, 0.8);
    border-bottom: 1px solid rgba(0, 0, 0, 0.8);
    border-left: 1px solid rgba(0, 0, 0, 0.8); }
    form.newsletter button a {
      color: #bbc1e3; }
    form.newsletter button:hover:not(:disabled) {
      background: #ffc439;
      color: rgba(0, 0, 0, 0.8); }
    form.newsletter button:disabled {
      opacity: 0.5; }

.product {
  position: relative;
  display: grid;
  grid-template-columns: 40% auto;
  grid-gap: 30px;
  width: 100%; }
  @media only screen and (max-device-width: 767px) {
    .product {
      grid-template-columns: 100%;
      grid-template-rows: auto auto;
      grid-row-gap: 5vh; } }
  .product img {
    width: 100%;
    border-top: 1px solid rgba(0, 0, 0, 0.8);
    border-right: 1px solid rgba(0, 0, 0, 0.8);
    border-bottom: 1px solid rgba(0, 0, 0, 0.8);
    border-left: 1px solid rgba(0, 0, 0, 0.8); }
  .product .details {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between; }
  .product .excerpt {
    width: 100%;
    border-top: 1px solid rgba(0, 0, 0, 0.8);
    border-right: 1px solid rgba(0, 0, 0, 0.8);
    border-bottom: 1px solid rgba(0, 0, 0, 0.8);
    border-left: 1px solid rgba(0, 0, 0, 0.8);
    padding: 15px;
    background: #fff;
    color: rgba(0, 0, 0, 0.8); }
  @media only screen and (min-device-width: 768px) {
    .product .description {
      padding-left: 30px;
      border-top: 0px solid rgba(0, 0, 0, 0.8);
      border-right: 0px solid rgba(0, 0, 0, 0.8);
      border-bottom: 0px solid rgba(0, 0, 0, 0.8);
      border-left: 1px solid rgba(0, 0, 0, 0.8); } }
  @media only screen and (max-device-width: 767px) {
    .product .description {
      text-align: center;
      margin: 5vh 0; } }
  .product table th,
  .product table td {
    padding: 5px; }
  .product table th {
    text-align: left;
    padding-left: 0;
    text-transform: capitalize; }
    .product table th.sku {
      text-transform: uppercase; }
  @media only screen and (min-device-width: 768px) {
    .product .productDetails {
      display: flex;
      justify-content: space-between; } }
  @media only screen and (max-device-width: 767px) {
    .product .productDetails {
      margin-top: 5vh;
      padding-top: 5vh;
      border-top: 1px solid rgba(0, 0, 0, 0.8);
      border-right: 0px solid rgba(0, 0, 0, 0.8);
      border-bottom: 0px solid rgba(0, 0, 0, 0.8);
      border-left: 0px solid rgba(0, 0, 0, 0.8);
      display: grid;
      grid-auto-flow: row;
      grid-row-gap: 5vh; } }
  .product .productDetails table {
    border-collapse: collapse; }
    .product .productDetails table td,
    .product .productDetails table th {
      border-top: 1px solid rgba(0, 0, 0, 0.8);
      border-right: 1px solid rgba(0, 0, 0, 0.8);
      border-bottom: 1px solid rgba(0, 0, 0, 0.8);
      border-left: 1px solid rgba(0, 0, 0, 0.8);
      padding: 5px 10px; }
  .product .productDetails .cartButtons {
    display: flex; }
    @media only screen and (max-device-width: 767px) {
      .product .productDetails .cartButtons {
        display: grid;
        grid-template-columns: 1fr 1fr;
        justify-items: center;
        align-items: center; } }
  .product .productDetails .price {
    display: flex;
    align-items: center;
    margin: 0 20px; }
    @media only screen and (min-device-width: 768px) {
      .product .productDetails .price {
        font-size: calc(18px + 1vw); } }
    @media only screen and (max-device-width: 767px) {
      .product .productDetails .price {
        font-size: calc(20px + 1vw); } }
  .product .productDetails .addToCart {
    display: flex;
    align-items: center;
    text-align: center;
    border-top: 1px solid rgba(0, 0, 0, 0.8);
    border-right: 1px solid rgba(0, 0, 0, 0.8);
    border-bottom: 1px solid rgba(0, 0, 0, 0.8);
    border-left: 1px solid rgba(0, 0, 0, 0.8);
    padding: 10px;
    cursor: pointer;
    background: #fff;
    color: rgba(0, 0, 0, 0.8);
    font-size: calc(14px + 1vw); }
    .product .productDetails .addToCart .sold,
    .product .productDetails .addToCart .checkOut {
      display: none; }
    .product .productDetails .addToCart.soldOut {
      border: none;
      padding: 0;
      background: none;
      cursor: initial; }
      .product .productDetails .addToCart.soldOut .sold {
        display: initial; }
      .product .productDetails .addToCart.soldOut .add {
        display: none; }
    .product .productDetails .addToCart.checkOutNow .add {
      display: none; }
    .product .productDetails .addToCart.checkOutNow .checkOut {
      display: initial; }
    .product .productDetails .addToCart:hover:not(.soldOut) {
      background: rgba(0, 0, 0, 0.8);
      color: #fff; }
      .product .productDetails .addToCart:hover:not(.soldOut) a {
        color: #bbc1e3; }
      .product .productDetails .addToCart:hover:not(.soldOut).checkOutNow {
        background: #ffc439;
        color: rgba(0, 0, 0, 0.8); }

