@charset "UTF-8";

/**
 * CONTENTS
 *
 * SETTINGS.............Global variables, site-wide settings, config switches, etc.
 *
 * TOOLS................Site-wide mixins and functions.
 *
 * GENERIC..............Low-specificity, far-reaching rulesets (e.g. resets).
 *
 * BASE.................Unclassed HTML elements (e.g. a {}, blockquote {}, address {}).
 *
 * OBJECTS..............Objects, abstractions, and design patterns (e.g. .media {}).
 *
 * COMPONENTS...........Discrete, complete chunks of UI (e.g. .carousel {}). This is the one layer that inuitcss doesn’t get involved with.
 *
 * TRUMPS...............High-specificity, very explicit selectors. Overrides and helper classes (e.g. .hidden {}).
 */

/**
 * Settings
 */

/*------------------------------------*\
    #GLOBAL
\*------------------------------------*/

/*------------------------------------*\
    #SETTINGS RESPONSIVE
\*------------------------------------*/

/**
 * Hold our breakpoint aliases and conditions in a list.
 *
 * These can be invoked later on via the `media-query()` mixin found in `_tools.responsive`.
 */

/**
 * Tools
 */

/*------------------------------------*\
    #MIXINS
\*------------------------------------*/

/*------------------------------------*\
    #TOOLS RESPONSIVE
\*------------------------------------*/

/**
 * Here we set a variable assuming that responsive settings are not set
 * globally. If they have been previously been defined, the following variable
 * will be overriden and will be set to `true`.
 */

/**
 * Generic
 */

/*------------------------------------*\
    #ANIMATIONS
\*------------------------------------*/

/**
 * Rotate
 */

@-webkit-keyframes rotate {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes rotate {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

/**
 * Fade-in
 */

@-webkit-keyframes fade-in {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fade-in {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.a-fade-in {
  -webkit-animation: fade-in 1s;
          animation: fade-in 1s;
}

/**
 * Slide up
 */

@-webkit-keyframes slide-up {
  from {
    opacity: 0;
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
  }

  to {
    opacity: 1;
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
}

@keyframes slide-up {
  from {
    opacity: 0;
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
  }

  to {
    opacity: 1;
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
}

.a-slide-up,
.product:hover .product__attribute {
  opacity: 0;
  -webkit-animation: slide-up;
          animation: slide-up;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.a-slide-up--fast,
.product:hover .product__attribute {
  -webkit-animation-duration: .5s;
          animation-duration: .5s;
}

.a-slide-up--multiple:nth-child(2),
.product:hover .product__attribute:nth-child(2) {
  -webkit-animation-delay: 0.05s;
          animation-delay: 0.05s;
}

.a-slide-up--multiple:nth-child(3),
.product:hover .product__attribute:nth-child(3) {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s;
}

.a-slide-up--multiple:nth-child(4),
.product:hover .product__attribute:nth-child(4) {
  -webkit-animation-delay: 0.15s;
          animation-delay: 0.15s;
}

.a-slide-up--multiple:nth-child(5),
.product:hover .product__attribute:nth-child(5) {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}

.a-slide-up--multiple:nth-child(6),
.product:hover .product__attribute:nth-child(6) {
  -webkit-animation-delay: 0.25s;
          animation-delay: 0.25s;
}

.a-slide-up--multiple:nth-child(7),
.product:hover .product__attribute:nth-child(7) {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
}

.a-slide-up--multiple:nth-child(8),
.product:hover .product__attribute:nth-child(8) {
  -webkit-animation-delay: 0.35s;
          animation-delay: 0.35s;
}

.a-slide-up--multiple:nth-child(9),
.product:hover .product__attribute:nth-child(9) {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}

.a-slide-up--multiple:nth-child(10),
.product:hover .product__attribute:nth-child(10) {
  -webkit-animation-delay: 0.45s;
          animation-delay: 0.45s;
}

.a-delay--1 {
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
}

/*------------------------------------*\
    #BOX SIZING
\*------------------------------------*/

/**
 * Set the global `box-sizing` state to `border-box`.
 *
 * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice
 * paulirish.com/2012/box-sizing-border-box-ftw
 */

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

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

/*------------------------------------*\
    #CLEARFIX
\*------------------------------------*/

/**
 * Micro clearfix, as per: css-101.org/articles/clearfix/latest-new-clearfix-so-far.php
 * Extend the clearfix class with Sass to avoid the `.clearfix` class appearing
 * over and over in your markup.
 */

.clearfix:after,
.o-grid:after,
.menu__list:after,
.c-tabs:after,
.c-cart__info:after,
.c-settings:after {
  content: "";
  display: table;
  clear: both;
}

/*------------------------------------*\
    #FONTS
\*------------------------------------*/

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

@-ms-viewport {
  width: device-width;
}

article,
aside,
dialog,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section {
  display: block;
}

body {
  margin: 0;
  text-align: left;
  background-color: #fff;
}

[tabindex="-1"]:focus {
  outline: 0 !important;
}

hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
  overflow: visible;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  margin-bottom: 24px;
}

p {
  margin-top: 0;
  margin-bottom: 24px;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: 400;
}

dd {
  margin-bottom: .5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

dfn {
  font-style: italic;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

a {
  color: #f63f41;
  -webkit-text-decoration: #f63f41;
          text-decoration: #f63f41;
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

a:hover {
  color: #ff9800;
  -webkit-text-decoration: #ff9800;
          text-decoration: #ff9800;
}

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):hover,
a:not([href]):not([tabindex]):focus {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):focus {
  outline: 0;
}

pre,
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

svg:not(:root) {
  overflow: hidden;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 1rem;
  padding-bottom: 1rem;
  color: #999;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
}

label {
  display: inline-block;
  margin-bottom: .5rem;
}

button {
  border-radius: 0;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

input[type="radio"],
input[type="checkbox"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
}

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  -webkit-appearance: listbox;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}

/*------------------------------------*\
    #RESET
\*------------------------------------*/

/**
 * As well as using normalize.css, it is often advantageous to remove all
 * margins from certain elements.
 */

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
dl,
dd,
ol,
ul,
form,
fieldset,
legend,
figure,
table,
th,
td,
caption,
hr {
  margin: 0;
  padding: 0;
}

/**
 * Give a help cursor to elements that give extra info on `:hover`.
 */

abbr[title],
dfn[title] {
  cursor: help;
}

/**
 * Remove underlines from potentially troublesome elements.
 */

u,
ins {
  text-decoration: none;
}

/**
 * Apply faux underlines to inserted text via `border-bottom`.
 */

ins {
  border-bottom: 1px solid;
}

/**
 * Base
 */

/*------------------------------------*\
    #ADDRESS
\*------------------------------------*/

address {
  font-style: normal;
}

/*------------------------------------*\
    #HEADINGS
\*------------------------------------*/

/**
 * Headings 1–6.
 */

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
}

h1 {
  font-size: 2rem;
}

h2 {
  font-size: 1.5rem;
}

h3 {
  font-size: 1.5rem -0.25rem;
}

h4 {
  font-size: 1rem;
}

h5 {
  font-size: 1rem;
}

h6 {
  font-size: 1rem;
}

@media screen and (min-width: 768px) {
  h1 {
    font-size: 3rem;
  }

  h2 {
    max-width: 682px;
    margin: 0 auto;
    font-size: 3rem;
    line-height: 3.5rem;
  }

  h3 {
    font-size: 1.5rem;
  }
}

/*------------------------------------*\
    #IMAGES
\*------------------------------------*/

img {
  max-width: 100%;
  vertical-align: middle;
  height: auto;
}

/*------------------------------------*
    #INPUTS
\*------------------------------------*/

select {
  border-radius: 0;
}

input[type="input"],
button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0;
  border: 0;
  background: transparent;
}

input[type="search"] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

/**
 * Turn Off or hide HTML5 Input Number Spinners
 */

input[type=number] {
  -moz-appearance: textfield;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin: 0;
}

/*------------------------------------*\
    #LINKS
\*------------------------------------*/

a {
  color: inherit;
  text-decoration: none;
}

a,
a:hover,
a:active,
a:focus {
  outline: none;
}

/*------------------------------------*\
    #LISTS
\*------------------------------------*/

dl dt {
  float: left;
  margin-right: .25rem;
}

dl dd {
  text-align: right;
}

dl dd:after {
  content: ' ';
  display: block;
  clear: left;
}

/*------------------------------------*\
    #SITE
\*------------------------------------*/

/**
 * Simple page-level setup.
 *
 * 1. Set the default `font-size` and `line-height` for the entire project,
 *    sourced from our default variables. The `font-size` is calculated to exist
 *    in ems, the `line-height` is calculated to exist unitlessly.
 * 2. Force scrollbars to always be visible to prevent awkward ‘jumps’ when
 *    navigating between pages that do/do not have enough content to produce
 *    scrollbars naturally.
 * 3. Ensure the page always fills at least the entire height of the viewport.
 */

html {
  font-family: "Montserrat", sans-serif;
  font-size: 1em;
  /* [1] */
  line-height: 1.5;
  /* [1] */
  overflow-y: scroll;
  /* [2] */
  min-height: 100%;
  /* [3] */
  color: #444;
}

/*------------------------------------*\
    #TABLES
\*------------------------------------*/

table {
  width: 100%;
}

/*------------------------------------*\
    #GLOBAL
\*------------------------------------*/

b,
strong {
  font-weight: bold;
}

/**
 * Objects
 */

/*------------------------------------*\
    #BOXES
\*------------------------------------*/

/**
 * Window boxes provide padding to the all sides
 * of a given element.
 */

.o-window-box--xs {
  padding: 0.5rem;
}

.o-window-box--sm {
  padding: 1rem;
}

.o-window-box--md {
  padding: 2rem;
}

.o-window-box--lg {
  padding: 3rem;
}

.o-window-box--xl {
  padding: 4rem;
}

@media screen and (max-width: 767px) {
  .o-window-box--xs\@xs {
    padding: 0.5rem;
  }

  .o-window-box--sm\@xs {
    padding: 1rem;
  }

  .o-window-box--md\@xs {
    padding: 2rem;
  }

  .o-window-box--lg\@xs {
    padding: 3rem;
  }

  .o-window-box--xl\@xs {
    padding: 4rem;
  }
}

@media screen and (min-width: 768px) {
  .o-window-box--xs\@sm {
    padding: 0.5rem;
  }

  .o-window-box--sm\@sm {
    padding: 1rem;
  }

  .o-window-box--md\@sm {
    padding: 2rem;
  }

  .o-window-box--lg\@sm {
    padding: 3rem;
  }

  .o-window-box--xl\@sm {
    padding: 4rem;
  }
}

@media screen and (min-width: 992px) {
  .o-window-box--xs\@md {
    padding: 0.5rem;
  }

  .o-window-box--sm\@md {
    padding: 1rem;
  }

  .o-window-box--md\@md {
    padding: 2rem;
  }

  .o-window-box--lg\@md {
    padding: 3rem;
  }

  .o-window-box--xl\@md {
    padding: 4rem;
  }
}

/**
 * Pillar boxes provide padding to the left and right
 * of a given element.
 */

.o-pillar-box--xs {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.o-pillar-box--sm {
  padding-left: 1rem;
  padding-right: 1rem;
}

.o-pillar-box--md {
  padding-left: 2rem;
  padding-right: 2rem;
}

.o-pillar-box--lg {
  padding-left: 3rem;
  padding-right: 3rem;
}

.o-pillar-box--xl {
  padding-left: 4rem;
  padding-right: 4rem;
}

@media screen and (max-width: 767px) {
  .o-pillar-box--xs\@xs {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }

  .o-pillar-box--sm\@xs {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .o-pillar-box--md\@xs {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .o-pillar-box--lg\@xs {
    padding-left: 3rem;
    padding-right: 3rem;
  }

  .o-pillar-box--xl\@xs {
    padding-left: 4rem;
    padding-right: 4rem;
  }
}

@media screen and (min-width: 768px) {
  .o-pillar-box--xs\@sm {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }

  .o-pillar-box--sm\@sm {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .o-pillar-box--md\@sm {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .o-pillar-box--lg\@sm {
    padding-left: 3rem;
    padding-right: 3rem;
  }

  .o-pillar-box--xl\@sm {
    padding-left: 4rem;
    padding-right: 4rem;
  }
}

@media screen and (min-width: 992px) {
  .o-pillar-box--xs\@md {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }

  .o-pillar-box--sm\@md {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .o-pillar-box--md\@md {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .o-pillar-box--lg\@md {
    padding-left: 3rem;
    padding-right: 3rem;
  }

  .o-pillar-box--xl\@md {
    padding-left: 4rem;
    padding-right: 4rem;
  }
}

/**
 * Letter boxes provide padding to the top and bottom
 * of a given element.
 */

.o-letter-box--xs {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.o-letter-box--sm {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.o-letter-box--md {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.o-letter-box--lg {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.o-letter-box--xl {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media screen and (max-width: 767px) {
  .o-letter-box--xs\@xs {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }

  .o-letter-box--sm\@xs {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .o-letter-box--md\@xs {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .o-letter-box--lg\@xs {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .o-letter-box--xl\@xs {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}

@media screen and (min-width: 768px) {
  .o-letter-box--xs\@sm {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }

  .o-letter-box--sm\@sm {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .o-letter-box--md\@sm {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .o-letter-box--lg\@sm {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .o-letter-box--xl\@sm {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}

@media screen and (min-width: 992px) {
  .o-letter-box--xs\@md {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }

  .o-letter-box--sm\@md {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .o-letter-box--md\@md {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .o-letter-box--lg\@md {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .o-letter-box--xl\@md {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}

/*------------------------------------*\
    #BUTTONS
\*------------------------------------*/

/**
 * A simple button object.
 */

/**
 * 1. Allow us to style box model properties.
 * 2. Line different sized buttons up a little nicer.
 * 3. Make buttons inherit font styles (often necessary when styling `input`s as
 *    buttons).
 * 4. Reset/normalize some styles.
 * 5. Force all button-styled elements to appear clickable.
 * 6. Fixes odd inner spacing in IE7.
 * 7. Subtract the border size from the padding value so that buttons do not
 *    grow larger as we add borders.
 * 8. Padding minus border width.
 */

.o-btn,
.btn,
.circle-btn {
  padding: calc(1.2em - 6px);
  /* [8] */
  display: inline-block;
  vertical-align: middle;
  font: inherit;
  text-align: center;
  margin: 0;
  cursor: pointer;
  overflow: visible;
  background-color: #333;
  border: 3px solid #333;
  border-radius: 5px;
}

.o-btn,
.btn,
.circle-btn,
.o-btn:hover,
.btn:hover,
.circle-btn:hover,
.o-btn:active,
.btn:active,
.circle-btn:active,
.o-btn:focus,
.btn:focus,
.circle-btn:focus {
  text-decoration: none;
  color: #fff;
}

/**
     * Full-width buttons
     */

.o-btn--full {
  width: 100%;
}

/**
     * Round-ended buttons.
     *
     * 1. Overly-large value to ensure the radius rounds the whole end of the
     *    button.
     */

.o-btn--rounded {
  border-radius: 100px;
  /* [1] */
}

/*------------------------------------*
    #CENTER
\*------------------------------------*/

.o-center {
  position: relative;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

/*------------------------------------*\
    #LINK BARE
\*------------------------------------*/

.o-link-bare {
  color: inherit;
  text-decoration: none;
}

/*------------------------------------*\
    #LIST-BARE
\*------------------------------------*/

/**
 * The list-bare object simply removes any indents and bullet points from lists.
 */

.o-list-bare,
.c-menu,
.menu__list,
.sub-menu__list,
.c-nav {
  margin: 0;
  padding: 0;
  list-style: none;
}

/*------------------------------------*\
    #LIST-INLINE
\*------------------------------------*/

/**
 * Makes list items display inline next to each other
 */

.o-list-inline li {
  display: inline-block;
}

/*------------------------------------*
    #GRID
\*------------------------------------*/

/**
 * Depending on Generic
 */

.o-grid {
  margin-left: -12px;
  margin-right: -12px;
}

.o-grid--no-gutter {
  margin-left: 0;
  margin-right: 0;
}

.o-grid--no-gutter > .o-grid__cell {
  padding-left: 0;
  padding-right: 0;
}

.o-grid--xs-gutter {
  margin-left: -2px;
  margin-right: -2px;
}

.o-grid--xs-gutter > .o-grid__cell {
  padding-left: 2px;
  padding-right: 2px;
}

.o-grid--sm-gutter {
  margin-left: -6px;
  margin-right: -6px;
}

.o-grid--sm-gutter > .o-grid__cell {
  padding-left: 6px;
  padding-right: 6px;
}

.o-grid__cell {
  position: relative;
  min-height: 1px;
  padding-left: 12px;
  padding-right: 12px;
}

/**
     * Extra small
     */

.o-grid__cell-1\@xs,
.o-grid__cell-2\@xs,
.o-grid__cell-3\@xs,
.o-grid__cell-4\@xs,
.o-grid__cell-5\@xs,
.o-grid__cell-6\@xs,
.o-grid__cell-7\@xs,
.o-grid__cell-8\@xs,
.o-grid__cell-9\@xs,
.o-grid__cell-10\@xs,
.o-grid__cell-11\@xs,
.o-grid__cell-12\@xs {
  float: left;
}

.o-grid__cell-12\@xs {
  width: 100%;
}

.o-grid__cell-11\@xs {
  width: 91.66666667%;
}

.o-grid__cell-10\@xs {
  width: 83.33333333%;
}

.o-grid__cell-9\@xs {
  width: 75%;
}

.o-grid__cell-8\@xs {
  width: 66.66666667%;
}

.o-grid__cell-7\@xs {
  width: 58.33333333%;
}

.o-grid__cell-6\@xs {
  width: 50%;
}

.o-grid__cell-5\@xs {
  width: 41.66666667%;
}

.o-grid__cell-4\@xs {
  width: 33.33333333%;
}

.o-grid__cell-3\@xs {
  width: 25%;
}

.o-grid__cell-2\@xs {
  width: 16.66666667%;
}

.o-grid__cell-1\@xs {
  width: 8.33333333%;
}

/**
     * Small
     */

@media screen and (min-width: 768px) {
  .o-grid__cell {
    float: left;
  }

  .o-grid__cell-12\@sm {
    width: 100%;
  }

  .o-grid__cell-11\@sm {
    width: 91.66666667%;
  }

  .o-grid__cell-10\@sm {
    width: 83.33333333%;
  }

  .o-grid__cell-9\@sm {
    width: 75%;
  }

  .o-grid__cell-8\@sm {
    width: 66.66666667%;
  }

  .o-grid__cell-7\@sm {
    width: 58.33333333%;
  }

  .o-grid__cell-6\@sm {
    width: 50%;
  }

  .o-grid__cell-5\@sm {
    width: 41.66666667%;
  }

  .o-grid__cell-4\@sm {
    width: 33.33333333%;
  }

  .o-grid__cell-3\@sm {
    width: 25%;
  }

  .o-grid__cell-2\@sm {
    width: 16.66666667%;
  }

  .o-grid__cell-1\@sm {
    width: 8.33333333%;
  }
}

/**
     * Medium
     */

@media screen and (min-width: 992px) {
  .o-grid__cell-12\@md {
    width: 100%;
  }

  .o-grid__cell-11\@md {
    width: 91.66666667%;
  }

  .o-grid__cell-10\@md {
    width: 83.33333333%;
  }

  .o-grid__cell-9\@md {
    width: 75%;
  }

  .o-grid__cell-8\@md {
    width: 66.66666667%;
  }

  .o-grid__cell-7\@md {
    width: 58.33333333%;
  }

  .o-grid__cell-6\@md {
    width: 50%;
  }

  .o-grid__cell-5\@md {
    width: 41.66666667%;
  }

  .o-grid__cell-4\@md {
    width: 33.33333333%;
  }

  .o-grid__cell-3\@md {
    width: 25%;
  }

  .o-grid__cell-2\@md {
    width: 16.66666667%;
  }

  .o-grid__cell-1\@md {
    width: 8.33333333%;
  }
}

/**
     * Large
     */

@media screen and (min-width: 1200px) {
  .o-grid__cell-12\@lg {
    width: 100%;
  }

  .o-grid__cell-11\@lg {
    width: 91.66666667%;
  }

  .o-grid__cell-10\@lg {
    width: 83.33333333%;
  }

  .o-grid__cell-9\@lg {
    width: 75%;
  }

  .o-grid__cell-8\@lg {
    width: 66.66666667%;
  }

  .o-grid__cell-7\@lg {
    width: 58.33333333%;
  }

  .o-grid__cell-6\@lg {
    width: 50%;
  }

  .o-grid__cell-5\@lg {
    width: 41.66666667%;
  }

  .o-grid__cell-4\@lg {
    width: 33.33333333%;
  }

  .o-grid__cell-3\@lg {
    width: 25%;
  }

  .o-grid__cell-2\@lg {
    width: 16.66666667%;
  }

  .o-grid__cell-1\@lg {
    width: 8.33333333%;
  }
}

/*------------------------------------*\
    #FLEX
\*------------------------------------*/

.o-flex {
  position: relative;
  display: table;
  width: 100%;
  border-bottom: 1px solid #ddd;
}

.o-flex:hover {
  background-color: #f9f9f9;
}

.o-flex--fixed {
  table-layout: fixed;
}

.o-flex__cell {
  padding: 1.5rem;
  display: table-cell;
  vertical-align: middle;
}

.o-flex__cell--left {
  text-align: left;
}

.o-flex__cell--right {
  text-align: right;
}

.o-flex__cell--center {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .o-flex__cell--full\@xs {
    width: 100%;
  }

  .o-flex__cell\@xs {
    padding: 1.5rem;
    position: relative;
    display: table-cell;
    vertical-align: middle;
  }

  .o-flex__cell--unbind\@xs {
    padding: 0;
    display: block;
  }
}

/*------------------------------------*\
    #CONTAINER
\*------------------------------------*/

/**
 * Page-level constraining and wraping elements
 */

.o-container {
  margin-right: auto;
  margin-left: auto;
  padding-left: 24px;
  padding-right: 24px;
  max-width: 1440px;
}

.o-container--xs {
  max-width: 30em;
}

.o-container--sm {
  max-width: 60em;
}

.o-container--md {
  max-width: 900px;
}

.o-container--no-gutter {
  padding-left: 0;
  padding-right: 0;
}

.o-container--no-width {
  max-width: none;
}

.o-container--outer {
  padding-left: 0;
  padding-right: 0;
  max-width: 1416px;
}

@media screen and (max-width: 767px) {
  .o-container\@xs {
    padding-left: 8px;
    padding-right: 8px;
  }

  .o-container--no-gutter\@xs {
    padding-left: 0;
    padding-right: 0;
  }
}

@media screen and (min-width: 768px) {
  .o-container--no-gutter\@sm {
    padding-left: 0;
    padding-right: 0;
  }
}

@media screen and (min-width: 992px) and (max-width: 1199px) {
  .o-container--no-gutter\@md-to-lg {
    padding-left: 0;
    padding-right: 0;
  }
}

@media screen and (min-width: 768px) and (max-width: 991px) {
  .o-container--no-gutter\@sm-to-md {
    padding-left: 0;
    padding-right: 0;
  }
}

/*------------------------------------*
    #STACKS
\*------------------------------------*/

/**
 * Stacks - When you need to stack element on
 * eachoter with spacing at the bottom for
 * different screnn sizes
 */

.o-stack-xs {
  margin-bottom: 4px;
}

.o-stack-sm {
  margin-bottom: 2rem;
}

.o-stack-md {
  margin-bottom: 3rem;
}

.o-stack-lg {
  margin-bottom: 4rem;
}

.o-stack-xl {
  margin-bottom: 5rem;
}

@media screen and (max-width: 767px) {
  .o-stack-xs\@xs {
    margin-bottom: 4px;
  }

  .o-stack-sm\@xs {
    margin-bottom: 2rem;
  }

  .o-stack-md\@xs {
    margin-bottom: 3rem;
  }

  .o-stack-lg\@xs {
    margin-bottom: 4rem;
  }

  .o-stack-xl\@xs {
    margin-bottom: 5rem;
  }
}

@media screen and (min-width: 768px) {
  .o-stack-xs\@sm {
    margin-bottom: 4px;
  }

  .o-stack-sm\@sm {
    margin-bottom: 2rem;
  }

  .o-stack-md\@sm {
    margin-bottom: 3rem;
  }

  .o-stack-lg\@sm {
    margin-bottom: 4rem;
  }

  .o-stack-xl\@sm {
    margin-bottom: 5rem;
  }
}

@media screen and (min-width: 992px) {
  .o-stack-xs\@md {
    margin-bottom: 4px;
  }

  .o-stack-sm\@md {
    margin-bottom: 2rem;
  }

  .o-stack-md\@md {
    margin-bottom: 3rem;
  }

  .o-stack-lg\@md {
    margin-bottom: 4rem;
  }

  .o-stack-xl\@md {
    margin-bottom: 5rem;
  }
}

@media screen and (min-width: 1200px) {
  .o-stack-xs\@lg {
    margin-bottom: 4px;
  }

  .o-stack-sm\@lg {
    margin-bottom: 2rem;
  }

  .o-stack-md\@lg {
    margin-bottom: 3rem;
  }

  .o-stack-lg\@lg {
    margin-bottom: 4rem;
  }

  .o-stack-xl\@lg {
    margin-bottom: 5rem;
  }
}

/*------------------------------------*\
    #PRODUCTS
\*------------------------------------*/

.o-video-container {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 35px;
  height: 0;
  overflow: hidden;
}

.o-video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/**
 * Components
 */

/*------------------------------------*\
    #TEXT
\*------------------------------------*/

/**
 * Used for genereted content from WYSIWYG editors and such.
 */

.c-text a {
  -webkit-transition: color 300ms;
  transition: color 300ms;
  text-decoration: underline;
}

.c-text a:hover {
  text-decoration: none;
}

.c-text p,
.c-text ul,
.c-text ol {
  font-size: 18px;
  font-weight: 300;
}

.c-text h1,
.c-text h2 {
  font-family: "Montserrat", sans-serif;
}

.c-text h2,
.c-text h3 {
  margin-top: 18px;
}

.c-text blockquote {
  font-style: italic;
}

.c-text ul,
.c-text ol {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
}

.c-text ul {
  list-style: disc;
}

.c-text ol {
  list-style: decimal;
}

.c-text li {
  margin-top: 0.25rem;
  margin-bottom: 0.25rem;
}

.c-text p,
.c-text ul,
.c-text ol,
.c-text dl,
.c-text table,
.c-text img,
.c-text h1,
.c-text h2,
.c-text h3,
.c-text h4,
.c-text h5,
.c-text h6,
.c-text address {
  margin-bottom: 1.5rem;
}

.c-text p img {
  margin-bottom: 0;
}

.c-text blockquote {
  text-align: center;
}

.c-text blockquote p {
  font-size: 1.5rem;
}

@media screen and (max-width: 400px) {
  .c-text p,
  .c-text ul,
  .c-text ol {
    font-size: 1rem;
  }

  .c-text h2 {
    font-size: 1.25rem;
  }

  .c-text h3 {
    font-size: 1rem;
  }
}

/*------------------------------------*\
    #ALERTS
\*------------------------------------*/

.c-alert {
  position: relative;
  z-index: 200;
  padding: 1em 3em 1em 1em;
  color: #ffffff;
  background: #ccc;
  text-align: center;
}

.c-alert--danger {
  background-color: #f63f41;
  color: #fff;
}

.c-alert--light-danger {
  background-color: #f6e7e6;
  color: #f63f41;
}

.c-alert__close {
  font-weight: 700;
}

/*------------------------------------*
    #BADGES
\*------------------------------------*/

.c-badge {
  position: relative;
  width: 6rem;
  height: 6rem;
  padding: 4px;
  border: 3px solid #000;
  border-radius: 50%;
  background-clip: content-box;
  background-color: #000;
  color: #fff;
}

.c-badge__text {
  padding: 1rem;
  font-size: 2rem;
  line-height: 1;
}

.c-badge--success {
  border-color: #000;
  background-color: #000;
}

/*------------------------------------*\
    #BUTTONS
\*------------------------------------*/

.c-btn {
  font-weight: 400;
  font-family: "Montserrat", sans-serif;
}

.c-btn--invert {
  background-color: #fff;
  color: #262626;
}

.c-btn--primary {
  background-color: #000;
  border-color: #000;
  color: #fff;
}

.c-btn--success {
  background-color: #000;
  border-color: #000;
  color: #ffffff;
  -webkit-transition: 0.33333333s;
  transition: 0.33333333s;
}

.c-btn--success:hover,
.c-btn--success:focus {
  background-color: #fef0c9;
  border-color: #fef0c9;
  color: #3d4c3b;
}

.c-btn--warning {
  background-color: #000;
  border-color: #000;
  color: #ffffff;
  -webkit-transition: 0.33333333s;
  transition: 0.33333333s;
}

/**
 * States
 */

.c-btn--disabled {
  background-color: #cbcbcb;
  border-color: #cbcbcb;
  cursor: not-allowed;
}

.c-btn--facebook {
  background-color: #3b5998;
  border-color: #3b5998;
}

.c-btn--twitter {
  background-color: #1da1f2;
  border-color: #1da1f2;
}

.c-btn--pinterest {
  background-color: #bd081c;
  border-color: #bd081c;
}

.c-btn--full {
  display: block;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .c-btn--full\@xs {
    display: block;
    width: 100%;
  }
}

/*------------------------------------*\
    #EDITOR
\*------------------------------------*/

.editor-frame {
  border: none;
}

/*------------------------------------*\
    #ORDER LIST
\*------------------------------------*/

/**
 * Extends component Flex
 */

@media screen and (max-width: 767px) {
  .c-order-list--status {
    padding: 0;
    position: absolute;
    top: 0;
    right: 0;
    line-height: 1;
  }
}

/*------------------------------------*
    #CATEGORIES
\*------------------------------------*/

.c-categories {
  text-align: center;
  display: table;
  margin: 0 auto;
}

.c-categories__item {
  width: 130px;
  position: relative;
  display: table-cell;
  height: 100px;
  text-align: center;
  vertical-align: middle;
}

.c-categories__link {
  position: relative;
  display: block;
  height: 100%;
  line-height: 1;
  color: #999;
  -webkit-transition: color 300ms;
  transition: color 300ms;
  /**
     * Prerender hover/current state for better transition
     * performance
     */
}

.c-categories__link:hover {
  color: #666;
}

.c-categories__link.is-current {
  color: #333;
}

.c-categories__link:after {
  position: absolute;
  content: '';
  background-color: #333;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 1px;
  opacity: 0;
  -webkit-transition: opacity 300ms;
  transition: opacity 300ms;
}

.c-categories__link.is-current:after,
.c-categories__link:hover:after {
  opacity: 1;
}

.c-categories__link:hover:after {
  background-color: #bbb;
}

.c-categories__link.is-current:after {
  background-color: #333;
}

/*------------------------------------*\
    #TEXT
\*------------------------------------*/

#klarna-checkout-iframe {
  display: block;
}

.c-checkout-section {
  border-bottom: 1px solid #eeeeee;
}

.c-checkout-section__heading {
  font-size: 1.25rem;
  text-align: center;
}

.c-checkout-sum {
  font-size: 1.25rem;
  text-align: right;
  font-weight: 700;
}

.c-checkout-value {
  color: #777777;
  text-align: right;
}

.c-cart__item {
  border: 1px solid #ddd;
  border-top: none;
}

.c-cart__item:first-of-type {
  border-top: 1px solid #ddd;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}

.c-cart__item:last-of-type {
  border-bottom-right-radius: 5px;
  border-bottom-left-radius: 5px;
}

.cart_coupon--section {
  padding-left: 100px;
  padding-right: 100px;
  padding-bottom: 50px;
}

.c-checkout-section {
  padding-bottom: 80px;
  border-bottom: none;
}

.c-checkout-shipping {
  max-width: 640px;
  margin: 0 auto;
}

.c-checkout__shipping-method {
  padding: 1rem;
  position: relative;
  display: block;
  height: 90px;
  border: 1px solid #ddd;
  border-top: none;
}

.c-checkout__shipping-method:first-of-type {
  border-top: 1px solid #ddd;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}

.c-checkout__shipping-method:last-of-type {
  border-bottom-right-radius: 5px;
  border-bottom-left-radius: 5px;
}

#coupon-code-text-field::-webkit-input-placeholder {
  text-align: center;
}

#coupon-code-text-field:-moz-placeholder {
  /* Firefox 18- */
  text-align: center;
}

#coupon-code-text-field::-moz-placeholder {
  /* Firefox 19+ */
  text-align: center;
}

#coupon-code-text-field:-ms-input-placeholder {
  text-align: center;
}

#coupon-code-text-field {
  border-right-style: none;
  border-left-style: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  border-radius: 0;
  border-color: #eee;
}

.shipping-method__logo {
  position: absolute;
  top: 15px;
  right: 15px;
}

.shipping-method__name {
  margin-left: 6px;
}

.shipping-method__description {
  padding-top: .5rem;
  padding-bottom: .5rem;
  color: #8e8e90;
  font-weight: 400;
  font-size: 14px;
  margin-left: calc(1rem + 8px);
  width: calc(100% - 200px);
}

.c-cart__img-item {
  padding: 10px;
}

.checkout--body {
  padding: 0 100px;
}

@media screen and (max-width: 767px) {
  .checkout--body {
    padding: 0;
  }

  .c-cart__item {
    border: 1px solid #ddd;
    border-top: none;
    border-right: none;
    border-left: none;
  }

  .c-cart__item:first-of-type {
    border-top: 1px solid #ddd;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
  }

  .c-cart__item:last-of-type {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
  }

  .c-checkout__shipping-method {
    border-left: none;
    border-right: none;
  }

  .c-checkout__shipping-method:first-of-type {
    border-top: 1px solid #ddd;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
  }

  .c-checkout__shipping-method:last-of-type {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
  }

  .c-checkout-section {
    padding-right: 0;
    padding-left: 0;
  }

  #coupon-code-text-field {
    font-size: 14px;
  }

  .c-cart__img-item {
    padding: 0;
  }
}

/*------------------------------------*\
    #DIVIDERS
\*------------------------------------*/

.c-divider--btm {
  border-bottom: 1px dashed #eee;
}

/*------------------------------------*\
    #HEADINGS
\*------------------------------------*/

.c-heading {
  font-family: "Montserrat", sans-serif;
  line-height: 1;
}

.c-heading-alt {
  text-transform: uppercase;
  font-weight: 700;
}

.c-heading-sm {
  font-size: 1.125rem;
  font-weight: 700;
  margin-bottom: 1rem;
}

.c-divider {
  display: inline-block;
  padding-bottom: 1rem;
}

.c-page-heading {
  font-size: 5rem;
  line-height: 1.3;
}

.c-text-gradient {
  display: inline-block;
  color: #ff9800;
  background: -webkit-linear-gradient(315deg, #f63f41 0, #ff9800 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/*------------------------------------*\
    #ICONS
\*------------------------------------*/

.c-icon {
  display: inline-block;
  vertical-align: middle;
}

.c-icon-text {
  vertical-align: middle;
  margin-left: .5rem;
}

.c-icon--xs {
  width: 18px;
  height: 18px;
}

.c-icon--sm {
  width: 24px;
  height: 24px;
}

.c-icon--md {
  width: 32px;
  height: 32px;
}

.c-icon--lg {
  width: 48px;
  height: 48px;
}

.c-icon--white {
  fill: #ffffff;
}

.c-icon--success {
  fill: #000;
}

.c-icon--warning {
  fill: #000;
}

.c-icon--danger {
  fill: #f63f41;
}

.c-icon--quiet {
  fill: #ddd;
}

.c-icon--muted {
  color: #999;
}

@media screen and (max-width: 767px) {
  .c-icon--xs\@xs {
    width: 1rem;
    height: 1rem;
  }

  .c-icon--sm\@sm {
    width: 1.5rem;
    height: 1.5rem;
  }
}

/*------------------------------------*\
    #INPUTS
\*------------------------------------*/

.c-field,
.c-textarea,
.c-select {
  background: #ffffff;
  border: 1px solid #ccc;
  border-radius: 6px;
  resize: vertical;
  color: #9e9ea0;
  -webkit-box-shadow: inset 0 1px 2px rgba(50, 53, 55, 0.1);
          box-shadow: inset 0 1px 2px rgba(50, 53, 55, 0.1);
  height: 3.5em;
}

.c-field:focus,
.c-textarea:focus,
.c-select:focus {
  border-color: rgba(26, 140, 220, 0.8);
  -webkit-box-shadow: 0 0 4px 0 rgba(26, 140, 220, 0.6);
          box-shadow: 0 0 4px 0 rgba(26, 140, 220, 0.6);
  color: #595959;
}

.c-field {
  padding: .25em 1.2em;
  outline: 0;
  display: block;
  width: 100%;
  margin: 0;
  font-size: 1em;
  font-weight: 400;
  font-family: inherit;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

/**
 * Round-ended inputs.
 *
 * 1. Overly-large value to ensure the radius rounds the whole end of the
 *    button.
 */

.c-field--rounded {
  border-radius: 100px;
  /* [1] */
}

.c-textarea {
  padding: .25em 1.2em;
  outline: 0;
  display: block;
  width: 100%;
  margin: 0;
  font-size: 1em;
  font-weight: 400;
  font-family: inherit;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: auto;
}

.c-select {
  padding: .25em 1.2em;
  outline: 0;
  display: block;
  width: 100%;
  margin: 0;
  font-size: 1em;
  font-weight: 400;
  font-family: inherit;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAeCAYAAADZ7LXbAAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAAKRJREFUeNrs1TEKwkAQheEvIoI2nsk7qFdIq1hoJ3gCC5sUVpY23sDKXnvrYOUBbGITG0kQjQriPlgYhmF/3ryFjbIs82nVfEEBEiAB8k+Q+q1IkqSDNVq4lMy3scIkjuP0FSdbjNHMLys6OwyQVlnXEsOS2QP6OL8jkzlmd70jus86eBT8FIu8PqGXg6oFX6ARGthgX+V1ReFnDJAACZAfhFwHAJI7HF2lZGQaAAAAAElFTkSuQmCC);
  background-repeat: no-repeat;
  background-position: calc(100% - 1rem) 50%;
}

.c-form-element {
  position: relative;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}

.c-form-element__header {
  position: relative;
}

.c-field-label,
label {
  width: 100%;
  display: block;
  cursor: pointer;
  font-size: 1.125rem;
  font-family: "Montserrat", sans-serif;
  line-height: 1;
  font-weight: 700;
}

.c-field-label[for] {
  padding-top: 0.25em;
  padding-bottom: 0.25em;
  cursor: pointer;
}

.c-field-label-helper {
  position: absolute;
  top: 0;
  right: 0;
  font-size: .875rem;
  font-weight: 700;
}

.c-choice {
  padding: .25em 1.2em;
  outline: 0;
  display: block;
  width: 100%;
  margin: 0;
  font-size: 1em;
  font-weight: 400;
  font-family: inherit;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
}

.c-choice input {
  outline: 0;
  margin-right: 0.1em;
  font-size: 2em;
}

.c-choice-large {
  border: 1px solid #eee;
  padding: 0.75rem;
  border-radius: 3px;
}

/**
 * Toggle Switch
 */

.c-switch {
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.c-switch__item {
  padding: .25em 1.2em;
  outline: 0;
  display: block;
  width: 100%;
  margin: 0;
  font-size: 1em;
  font-weight: 400;
  font-family: inherit;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  text-align: center;
  background: #ddd;
}

.c-switch__item.is-checked {
  background: #000;
  color: #ffffff;
}

.c-switch__item input {
  display: none;
}

.c-switch__item--first {
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
}

.c-switch__item--last {
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
}

/**
 * Errors
 */

.c-field-error {
  color: #f63f41;
}

/*------------------------------------*\
    #LINKS
\*------------------------------------*/

.c-link {
  color: inherit;
  text-decoration: underline;
}

.c-link:hover {
  text-decoration: none;
}

/*------------------------------------*\
    #LOADING
\*------------------------------------*/

.is-loading {
  color: transparent !important;
  min-height: 1.6rem;
  pointer-events: none;
  position: relative;
}

.is-loading:after {
  -webkit-animation: rotate 500ms infinite linear;
          animation: rotate 500ms infinite linear;
  border: 0.2rem solid #000;
  border-radius: .8rem;
  border-right-color: transparent;
  border-top-color: transparent;
  content: "";
  display: block;
  height: 1.6rem;
  left: 50%;
  margin-left: -.8rem;
  margin-top: -.8rem;
  position: absolute;
  top: 50%;
  width: 1.6rem;
}

/*------------------------------------*\
    #NOTIFICATIONS
\*------------------------------------*/

.c-notification {
  position: absolute;
  font-weight: 700;
  border-radius: 50%;
  min-height: 20px;
  min-width: 20px;
  line-height: 18px;
  text-align: center;
  font-size: 12px;
  border: 1px solid #fff;
  background-color: #000;
  color: #fff;
}

.c-notification--top-right {
  top: -2px;
  right: -10px;
}

.c-notification--top-left {
  top: -2px;
  left: -10px;
}

.c-notification--success {
  background-color: #000;
}

.c-notification--danger {
  background-color: #f63f41;
}

/*------------------------------------*\
    #MENU
\*------------------------------------*/

.c-menu {
  overflow: hidden;
  background: #fff;
  width: 100%;
}

.c-menu--fixed {
  overflow-y: auto;
  overflow-x: hidden;
  max-height: 300px;
}

.c-menu__item:not(:last-child) {
  border-bottom: 1px solid #ddd;
}

.c-menu__link {
  padding: .5em;
  display: block;
}

.c-menu__link.is-toggled + .c-menu--sub-menu {
  display: block;
}

.c-menu--sub-menu {
  display: none;
}

/**
 * Menu
 */

.menu {
  position: relative;
  z-index: 10;
  line-height: 50px;
  text-align: center;
  background: #4c934d;
}

.menu__item {
  display: inline-block;
}

.menu__link {
  position: relative;
  padding-left: 1rem;
  padding-right: 1rem;
  display: block;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.85);
  font-size: .875rem;
  letter-spacing: 1px;
  font-family: "Montserrat", sans-serif;
  -webkit-transition: all 0.33333333s;
  transition: all 0.33333333s;
}

.menu__link.is-toggled {
  background-color: #438244;
  color: #fff;
}

.menu__link.is-toggled.has-sub:after {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  content: '';
  height: 0;
  width: 0;
  border-bottom: 8px solid #fff;
  border-right: 8px solid transparent;
  border-left: 8px solid transparent;
}

.menu__link.is-toggled + .sub-menu {
  display: block;
}

.menu__link:hover {
  color: #fff;
}

@media screen and (min-width: 768px) {
  .menu__link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
}

@media screen and (min-width: 1200px) {
  .menu__link {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

/**
 * Sub menu
 */

.sub-menu {
  display: block;
  position: absolute;
  left: 0;
  background: #fff;
  width: 300px;
  text-align: left;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}

.sub-menu.not-toggled {
  display: none;
}

.sub-menu.is-toggled {
  display: block;
}

.sub-menu__list {
  padding: 2rem;
}

.sub-menu--full {
  width: 100%;
  max-width: 1392px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  overflow: hidden;
}

.sub-menu--full .sub-menu__list {
  padding: 0;
  padding-top: 2rem;
  padding-bottom: 2rem;
  position: relative;
  -webkit-column-count: 2;
          column-count: 2;
  -webkit-column-gap: 0;
          column-gap: 0;
  -webkit-column-rule: 1px solid #eee;
          column-rule: 1px solid #eee;
  -webkit-column-fill: balance;
          column-fill: balance;
}

.sub-menu--full .sub-menu__item {
  padding-left: 2rem;
  padding-right: 2rem;
  display: inline-block;
  width: 100%;
}

.sub-menu__list {
  line-height: 1.5;
}

.sub-menu__link {
  font-family: "Montserrat", sans-serif;
  margin-bottom: .25rem;
}

@media screen and (min-width: 992px) and (max-width: 1199px) {
  .sub-menu--full .sub-menu__list {
    -webkit-column-count: 2;
            column-count: 2;
  }
}

@media screen and (min-width: 992px) {
  .sub-menu--md {
    max-width: 1000px;
  }

  .sub-menu--md .sub-menu__list {
    -webkit-column-count: 2;
            column-count: 2;
  }
}

/**
 * Sub sub menu
 */

.sub-menu__link:hover,
.sub-sub-menu__link:hover {
  color: #000;
}

.sub-sub-menu__link {
  color: #777;
}

/**
 * Hover
 */

.hover:hover .hover__item {
  opacity: 1;
  visibility: visible;
}

.hover__item {
  opacity: 0;
  visibility: hidden;
}

/*------------------------------------*\
    #MENU
\*------------------------------------*/

.c-mobile-menu {
  display: none;
  position: fixed;
  top: 70px;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  background: #fff;
  width: 100%;
  z-index: 200;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 100px;
}

.c-mobile-menu.is-toggled {
  display: block;
}

.c-mobile-menu__list {
  border-top: 1px solid #eeeeee;
}

.c-mobile-menu__list:first-child {
  border-top: 0;
}

.c-mobile-menu__list--alt {
  background-color: #f0ede9;
}

.c-mobile-menu__item {
  padding-left: 15px;
  padding-right: 15px;
}

.c-mobile-menu__item:last-child .c-mobile-menu__link {
  border-bottom: 0;
}

.c-mobile-menu__link {
  position: relative;
  text-transform: uppercase;
  letter-spacing: 2px;
  display: block;
  height: 55px;
  line-height: 55px;
  border-bottom: 1px solid #eeeeee;
  color: #464646;
}

.c-mobile-menu__link.is-toggled {
  border-bottom-color: transparent;
}

.c-mobile-menu__link.is-toggled + .c-mobile-menu--sub-menu {
  display: block;
}

.c-mobile-menu__link.has-sub:after {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: '';
  height: 0;
  width: 0;
  border-top: 6px solid #8192a2;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
}

.c-mobile-menu--sub-menu {
  display: none;
  position: relative;
  left: -15px;
  background-color: #ddd;
  width: calc(100% + 30px);
}

.c-mobile-menu--sub-menu .c-mobile-menu--sub-menu {
  background-color: #ccc;
}

.c-mobile-menu--sub-menu .c-mobile-menu__item {
  padding-left: 15px;
  padding-right: 15px;
}

.c-mobile-menu--sub-menu .c-mobile-menu__link {
  text-transform: none;
  letter-spacing: 0;
}

@media screen and (min-width: 768px) and (max-width: 991px) {
  .c-mobile-menu {
    top: 120px;
  }
}

/*------------------------------------*
    #NAVS
\*------------------------------------*/

/**
 * Basic
 */

.c-nav__item {
  font-size: 1.125rem;
}

.c-nav__link {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  display: block;
  border-radius: 8px;
  -webkit-transition: 0.33333333s;
  transition: 0.33333333s;
}

.c-nav__link.is-current {
  color: #ff9800;
  font-weight: 700;
}

/*------------------------------------*
    #RATING
\*------------------------------------*/

.c-rating {
  display: inline-block;
  overflow: hidden;
  vertical-align: top;
}

.c-rating--1 li:nth-child(n+2) svg {
  fill: #cbcbcb;
}

.c-rating--2 li:nth-child(n+3) svg {
  fill: #cbcbcb;
}

.c-rating--3 li:nth-child(n+4) svg {
  fill: #cbcbcb;
}

.c-rating--4 li:nth-child(5) svg {
  fill: #cbcbcb;
}

.c-rating__item {
  float: left;
}

.c-rating__icon {
  fill: #ef9914;
}

.c-rating-count {
  vertical-align: middle;
}

/*------------------------------------*
    #REVIEWS
\*------------------------------------*/

.c-review {
  border-bottom: 1px solid #eee;
}

.c-review:last-child {
  border-bottom: 0;
}

/*------------------------------------*\
    #SITE HEADER
\*------------------------------------*/

/**
 * Header
 */

.site-header {
  position: relative;
  z-index: 101;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 70px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.site-header--transparent {
  --main-color: #fff;
  --second-color: #000;
}

.site-header--full {
  --main-color: #000;
  --second-color: #fff;
}

.site-header--absolute {
  position: relative;
}

.o-order-1 {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

.o-order-2 {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

.o-order-3 {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
}

.o-order-4 {
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4;
}

html.no-scroll,
html.no-scroll body {
  overflow: hidden !important;
  position: relative !important;
}

html.no-scroll {
  height: 100%;
  width: 100%;
}

.site-main.no-scroll {
  position: fixed !important;
}

.c-site-nav__icons {
  display: inline-block;
  position: relative;
}

.site-nav {
  display: none;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-bottom: 30px;
  background: #fff;
  -webkit-transition: all .25s;
  transition: all .25s;
  opacity: 0;
  pointer-events: none;
  will-change: transform;
}

.site-nav .mobile-nav {
  display: none;
}

.site-nav .mobile-nav .btn {
  display: block;
  margin-bottom: 30px;
}

.site-nav .mobile-nav a:not(.btn) {
  display: block;
  padding: 15px;
  border-bottom: 1px solid rgba(149, 152, 154, 0.25);
  font-weight: 700;
}

.site-nav .desktop-nav {
  width: 100%;
}

.site-nav .desktop-nav hr {
  height: 1px;
  margin: 50px 0 60px;
  border: none;
  background: #eee;
}

@media screen and (min-width: 768px) {
  .site-nav {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    min-height: 100vh;
  }
}

body.nav-open .site-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
          transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  pointer-events: auto;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  opacity: 1;
  -webkit-transform: none;
          transform: none;
  visibility: visible;
}

@media screen and (max-width: 767px) {
  /**
     * Header
     */

  .c-site-header {
    position: relative;
    z-index: 10;
  }

  .c-site-header__inner {
    position: relative;
    z-index: 300;
    height: 70px;
    -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
            box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    padding-top: 15px;
    padding-right: 15px;
    padding-bottom: 15px;
    padding-left: 15px;
    padding: 0;
  }

  .c-site-header--is-sticky\@xs {
    width: 100%;
    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;
    right: 0;
  }

  .c-site-header__top {
    padding-top: 5px;
    padding-bottom: 5px;
    height: 100%;
  }

  .c-site-header__right {
    position: absolute;
    width: auto;
    right: 0;
    -webkit-transform: none;
            transform: none;
  }

  .c-site-header__left {
    width: auto;
    -webkit-transform: none;
            transform: none;
    top: 10px;
    left: 15px;
  }

  .site-header {
    background: #fff;
  }

  /**
     * Site nav
     */

  .site-nav {
    top: 70px;
  }

  .c-site-nav__icon {
    width: 25px;
    height: 25px;
    vertical-align: baseline;
  }

  /**
     * Search
     */

  .c-site-search {
    display: none;
    position: relative;
    z-index: 500;
  }
}

@media screen and (max-width: 767px) {
  .site-header {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    --main-color: #000;
    --second-color: #fff;
  }

  .site-header__logo {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }

  .site-header__menu {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }

  .site-header__cart {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}

@media screen and (min-width: 768px) {
  .site-header {
    position: relative;
    z-index: 100;
    height: 115px;
  }

  .site-header--transparent {
    margin-bottom: -115px;
  }

  .site-header__logo {
    margin-right: auto;
  }

  .site-header__menu {
    margin-right: 3rem;
  }

  .site-nav {
    padding: 15px;
  }
}

/*------------------------------------*
    #SITE FOOTER
\*------------------------------------*/

.c-site-footer {
  position: relative;
  background-color: #f63f41;
  color: #ffffff;
}

.c-site-footer a {
  text-decoration: none;
}

.c-scroll-to-top {
  border-radius: 0;
}

.c-site-legals,
.c-site-engineers {
  color: rgba(255, 255, 255, 0.85);
}

.c-site-legals {
  float: left;
}

.c-site-engineers {
  float: right;
}

.c-divider-dashed-btm {
  border-bottom: 1px dashed #ffffff;
}

/**
 * Footer navigation
 */

.c-footer-nav__item {
  margin-bottom: 0.25rem;
}

.c-footer-nav__link {
  text-decoration: none !important;
  color: rgba(255, 255, 255, 0.85);
}

.c-footer-nav__link:hover {
  color: #ffffff;
}

@media screen and (max-width: 767px) {
  .c-site-engineers {
    float: left;
    clear: left;
  }

  .c-scroll-to-top {
    width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .c-scroll-to-top {
    position: absolute;
    bottom: 100%;
    right: 0;
  }
}

@media screen and (min-width: 768px) and (max-width: 991px) {
  .c-scroll-to-top {
    width: 100%;
  }
}

/*------------------------------------*\
    #SITE LOGO
\*------------------------------------*/

/**
 * Logotype
 */

.site-logo {
  width: 225px;
  height: 70px;
  vertical-align: top;
}

.site-logo--default .logo-yellow {
  fill: #ff9800;
}

.site-logo--default .logo-red {
  fill: #f63f41;
}

.site-header--transparent .site-logo--default {
  display: none;
}

.site-header--full .site-logo--default {
  display: block;
}

.site-header--full .site-logo--white {
  display: none;
}

@media screen and (max-width: 767px) {
  .site-header--transparent .site-logo--default {
    display: block;
  }

  .site-header--transparent .site-logo--white {
    display: none;
  }
}

.nav-open .site-header {
  --main-color: #000;
  --second-color: #fff;
}

.nav-open .site-logo--default {
  display: block;
}

.nav-open .site-logo--white {
  display: none;
}

@media screen and (max-width: 767px) {
  .site-logo {
    width: 200px;
    height: 37px;
  }
}

/*------------------------------------*\
    #SEARCH
\*------------------------------------*/

.c-site-search {
  position: relative;
  max-width: 500px;
  width: 45%;
  padding-left: 2.5%;
  padding-right: 2.5%;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.c-site-search form {
  position: relative;
}

.c-site-search__input {
  padding: .4em .8em .4em 2rem;
  width: 100%;
  border: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.c-site-search__btn {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 1rem;
}

.c-site-search--alt {
  display: none;
}

@media screen and (max-width: 767px) {
  .c-site-search {
    padding: 2px;
    display: none;
    margin: 0;
    width: calc(100% - 60px);
  }

  .c-site-search__input {
    padding: .4em 3em .4em .8em;
    width: 100%;
    border: 0;
    border-radius: 3px;
  }

  .c-site-search__inner {
    position: relative;
  }

  .c-site-search__icon {
    position: absolute;
    top: 5px;
    left: 5px;
    z-index: 1;
    fill: #999;
  }

  .c-site-search--alt {
    display: block;
    width: 100%;
    max-width: none;
  }
}

/*------------------------------------*\
    #SITE
\*------------------------------------*/

body {
  background: #fff;
}

body.main-curtain .site-main:after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 150;
  background: rgba(0, 0, 0, 0.75);
}

.content {
  position: relative;
  border-radius: 8px;
}

.hero-map {
  height: 300px;
}

.t-rounded,
.c-products,
.c-post-large,
.c-post-small {
  border-radius: 12px;
}

/**
 * Backrounds
 */

.bg-white {
  background: #ffffff;
}

.u-bg-green {
  background-color: #000;
}

.u-bg-facebook {
  background-color: #3b5998;
}

/*------------------------------------*\
    #SITE NAV
\*------------------------------------*/

/**
 * Site menu
 */

.c-site-menu {
  margin-right: 1rem;
  float: right;
}

.c-site-menu__list {
  display: inline-block;
  text-align: center;
  vertical-align: middle;
}

.c-site-menu__item {
  margin-right: 1rem;
}

.c-site-menu__item:last-child {
  margin-right: 0;
}

.c-site-menu__link {
  color: #444;
}

/**
 * Site navigation
 */

.c-site-nav {
  text-align: right;
}

.c-site-nav__list {
  display: inline-block;
  vertical-align: middle;
}

.c-site-nav__item {
  text-align: center;
  vertical-align: middle;
}

.c-site-nav__link {
  display: inline-block;
  color: #444;
  width: 60px;
  height: 60px;
}

@media screen and (max-width: 767px) {
  .c-site-nav__link {
    width: 45px;
  }

  .c-site-nav__item {
    margin-right: 0;
  }
}

@media screen and (max-width: 400px) {
  .c-site-nav__item--list {
    display: none !important;
  }
}

/*------------------------------------*\
    #SLICK
\*------------------------------------*/

/* Slider */

.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}

.slick-track:before,
.slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/**
 * Slick Theme
 */

/*------------------------------------*\
    #SLICK THEME
\*------------------------------------*/

/* Slider */

/* Icons */

/* Arrows */

.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
  z-index: 100;
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled,
.slick-next.slick-disabled {
  display: none !important;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: white;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: 25px;
}

[dir="rtl"] .slick-prev {
  left: auto;
  right: 25px;
}

.slick-prev:before {
  content: "\2190";
}

[dir="rtl"] .slick-prev:before {
  content: "\2192";
}

.slick-next {
  right: 25px;
}

[dir="rtl"] .slick-next {
  left: 25px;
  right: auto;
}

.slick-next:before {
  content: "\2192";
}

[dir="rtl"] .slick-next:before {
  content: "\2190";
}

/* Dots */

.slick-dotted.slick-slider {
  margin-bottom: 0;
}

.slick-dots {
  position: absolute;
  bottom: 1rem;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  border: 0;
  display: block;
  height: 6px;
  width: 6px;
  border-radius: 50%;
  background-color: transparent;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  padding: 5px;
  cursor: pointer;
  background-color: #c0c0c0;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none;
}

.slick-dots li.slick-active button {
  background-color: #000;
}

.slick-slide img {
  margin-left: auto;
  margin-right: auto;
}

/*------------------------------------*
    #SECTIONS
\*------------------------------------*/

.c-section-title {
  padding-top: 1rem;
  padding-bottom: 1rem;
  background-color: #f1f1f1;
  color: #585858;
  font-size: 1.25rem;
  font-weight: 700;
}

.c-section__link {
  position: relative;
  display: block;
  padding: 1rem;
}

.c-section__icon {
  position: absolute;
  top: 50%;
  margin-top: -12px;
  right: 1rem;
}

.c-section__link.is-selected .c-section__icon {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.c-divider-top {
  border-top: 1px solid #f1f1f1;
}

@media screen and (max-width: 767px) {
  .c-section__link {
    font-size: 1.25rem;
  }

  .c-section {
    border-bottom: 1px solid #ddd;
  }
}

/*------------------------------------*\
    #SWATCHES
\*------------------------------------*/

.c-swatch {
  display: inline-block;
  min-width: 32px;
  height: 32px;
  line-height: 26px;
  border: 3px solid #fff;
  background-color: #fff;
  text-align: center;
  -webkit-transition: all 0.33333333s;
  transition: all 0.33333333s;
  font-size: .875rem;
  padding-left: 6px;
  padding-right: 6px;
  cursor: pointer;
}

.c-swatch:hover {
  background-color: #ddd;
}

.c-swatch.is-selected {
  background-color: #000;
  border-color: #000;
  color: #fff;
}

.c-swatch.is-disabled {
  opacity: .2;
}

.c-swatch--circle {
  width: 32px;
  height: 32px;
  border-radius: 100%;
}

.c-swatch-control {
  display: none;
}

.c-swatch-control:checked + .c-swatch {
  -webkit-box-shadow: 0 0 0 3px #ff9800;
          box-shadow: 0 0 0 3px #ff9800;
}

/*------------------------------------*
    #PAGE
\*------------------------------------*/

.c-page-header {
  background-position: top right;
  background-repeat: no-repeat;
}

.c-page-heading {
  margin-bottom: 1.5rem;
  font-family: "Montserrat", sans-serif;
}

.c-page-lead {
  font-size: 1.5rem;
  line-height: 1.75;
  font-weight: 300;
  padding-bottom: 1.5rem;
}

.c-heading {
  font-family: "Montserrat", sans-serif;
}

.c-bar {
  background: #ffffff;
  border-bottom: 1px solid #ddd;
}

.c-page-footer {
  border-top: 1px dashed #ddd;
}

.c-page-footer-heading {
  font-size: 2.25rem;
  color: #000;
}

.c-page-back-btn {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 75px;
  line-height: 75px;
}

.c-bg {
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .c-page-content {
    border-right: 1px solid #eee;
  }

  .c-page-aside-section {
    border-bottom: 1px solid #eee;
  }
}

@media screen and (min-width: 992px) {
  .c-page-content {
    padding-right: 15%;
  }
}

@media screen and (max-width: 767px) {
  .c-page-lead {
    font-size: 1.25rem;
  }

  .c-page-header-mobile {
    height: 75px;
    line-height: 75px;
    position: relative;
    padding-left: 75px;
    padding-right: 75px;
  }

  .c-page-header-mobile__status {
    position: absolute;
    top: 0;
    right: 0;
  }

  .c-page-main {
    padding-bottom: 0rem;
  }

  .c-page-header {
    padding-top: 2rem;
    padding-bottom: 2rem;
    background-image: none !important;
    background-color: transparent;
    text-align: center;
  }

  .c-page-heading {
    font-size: 2rem;
  }

  .c-page-aside-section {
    border-top: 1px solid #eee;
  }
}

@media screen and (max-width: 400px) {
  .c-page-heading {
    font-size: 1.5rem;
  }

  .c-page-lead {
    font-size: 1.125rem;
  }
}

/*------------------------------------*\
    #PAGINATION
\*------------------------------------*/

/**
 * Pagination
 */

.pagination {
  text-align: center;
  position: relative;
}

.pagination li {
  display: inline-block;
  margin-left: .25rem;
}

.pagination li:first-child {
  margin-left: 0;
}

.pagination li.is-current a {
  color: red;
  font-weight: 700;
}

.pagination li.active a,
.pagination li.active span {
  border-color: #bbbbbb;
  font-weight: 700;
}

.pagination li.disabled {
  opacity: 0.4;
}

.pagination a,
.pagination span {
  width: 48px;
  height: 48px;
  display: inline-block;
  color: inherit;
  border: 1px solid #dddddd;
  border-radius: 3px;
  text-align: center;
  line-height: 48px;
  background-color: #ffffff;
}

/*------------------------------------*\
    #PRODUCTS
\*------------------------------------*/

.product {
  text-align: center;
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
  will-change: transform;
  -webkit-transition: all 0.33333333s;
  transition: all 0.33333333s;
}

.product:hover .product__img {
  -webkit-transform: scale(1.03);
          transform: scale(1.03);
}

.product__attributes {
  margin-bottom: 1rem;
}

.product__header {
  position: relative;
}

.product__attr__name {
  margin-bottom: 1rem;
}

.product__meta {
  position: absolute;
  width: 80px;
  top: 0;
  right: 0;
  z-index: 1;
}

.product__img {
  border-radius: 30px;
  -webkit-transition: all 0.33333333s;
  transition: all 0.33333333s;
  will-change: transform;
}

.product__attr {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 1;
  padding-top: 1rem;
  padding-bottom: 1rem;
  -webkit-transition: all 0.33333333s;
  transition: all 0.33333333s;
  will-change: transform;
}

.product__title {
  font-size: 1.5rem;
}

.product-slider .slick-prev,
.product-slider .slick-arrow {
  height: 48px;
  width: 48px;
  background-color: #cbcbcb;
  border-radius: 100%;
}

@media screen and (min-width: 768px) {
  .product-slider .slick-prev,
  .product-slider .slick-arrow {
    height: 60px;
    width: 60px;
  }
}

.product-slider .slick-slide {
  cursor: pointer;
}

.product-slider .slick-slide .product {
  opacity: 0.5;
}

.product-slider .slick-center .product {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
}

.product-slider .slick-center .product:hover .product__attr {
  visibility: visible;
  opacity: 1;
}

.product-slider .slick-prev.slick-disabled,
.product-slider .slick-next.slick-disabled {
  visibility: hidden;
  opacity: 0;
  display: block !important;
}

.product-slider .slick-prev,
.product-slider .slick-next {
  visibility: visible;
  opacity: 1;
  display: block !important;
  -webkit-transition: all 0.33333333s;
  transition: all 0.33333333s;
}

/**
 * Single product
 */

.c-products {
  padding-top: 1rem;
  padding-bottom: 1rem;
  overflow: hidden;
  min-height: 1px;
  position: relative;
  background: #fff;
  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
          box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
}

.c-products__media {
  position: relative;
  display: block;
  width: 100%;
  text-align: center;
  padding-bottom: 80%;
}

.c-products__img {
  display: block;
  margin: auto;
  height: auto;
  max-height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.c-products__heading {
  font-family: "Montserrat", sans-serif;
  font-size: 1.25rem;
  line-height: 1.2;
  height: 3rem;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  text-overflows: ellipsis;
  color: #3a3939;
}

.c-products__brand {
  position: absolute;
  left: 0;
  right: 0;
  color: #999;
  height: 1.5rem;
  line-height: 1.5rem;
}

.c-products__body {
  padding: 1rem 1rem 2.5rem;
  text-align: center;
  width: 100%;
}

.c-products__footer {
  height: 60px;
  padding-left: 1rem;
  padding-right: 1rem;
}

.c-products__add-to-cart {
  background-color: #f7f9f4;
  border-color: #f7f9f4;
  color: #000;
  padding: 0;
  height: 60px;
  font-size: 1.25rem;
  border-radius: 14px;
}

.c-products__add-to-list {
  display: none;
  position: absolute;
  z-index: 1;
  top: 1rem;
  right: 1rem;
}

a.c-products__add-to-cart {
  line-height: 50px;
}

/**
 * Status
 */

.c-products__status {
  position: absolute;
  top: 1rem;
  left: 1rem;
  z-index: 1;
  font-size: 1.125rem;
}

.c-product__status--new {
  color: #000;
}

.c-product__status--campaign {
  color: #f63f41;
}

/**
 * Price
 */

.c-products__price {
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1;
  color: #000;
}

.c-products__price--new {
  color: #f63f41;
}

.c-products__price--old {
  color: #999;
  font-weight: 400;
  font-size: 1rem;
}

/**
 * Images
 */

img {
  opacity: 1;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

img[data-src] {
  opacity: 0.5;
}

@media screen and (max-width: 767px) {
  .c-product-grid\@xs {
    padding: 4px;
    margin-left: 0;
    margin-right: 0;
  }

  .c-products\@xs .c-products__media {
    height: auto;
  }

  .c-products\@xs .c-products__media img {
    -webkit-transform: none;
            transform: none;
    top: 0;
  }

  .c-products\@xs .c-products__heading {
    font-size: 1rem;
    height: auto;
  }

  .c-products\@xs .c-products__price {
    font-size: 1rem;
  }

  .c-products\@xs .c-products__footer {
    position: static;
    height: auto;
  }
}

/*------------------------------------*
    #PRODUCT
\*------------------------------------*/

.c-product__price {
  font-size: 2rem;
  font-weight: 700;
  font-family: "Montserrat", sans-serif;
  color: #000;
}

.c-product__price--new {
  color: #f63f41;
}

.c-product__price--old {
  font-size: 1.125rem;
  font-weight: 400;
  color: #999;
}

.c-product__price--old:before {
  content: '(';
}

.c-product__price--old:after {
  content: ')';
}

.c-product__brand {
  font-size: 1.25rem;
  margin-bottom: .5rem;
}

.c-product__images {
  border-radius: 12px;
}

.c-product__main {
  margin-bottom: 3rem;
}

.c-product__heading {
  color: #3a3939;
  margin-bottom: 1rem;
}

.c-product__lead {
  font-size: 1.25rem;
  font-weight: 300;
  color: #555;
  margin-bottom: 1rem;
}

.c-product__prices {
  margin-bottom: 1rem;
}

.c-product__add-to-list {
  display: none;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 1rem;
}

.c-product__slide {
  position: relative;
  text-align: center;
}

/**
 * Slide
 */

.c-slide__thumb {
  border-radius: 8px;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
          box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  overflow: hidden;
  display: inline-block;
}

.slick-dots {
  margin-top: 1rem;
  position: static;
  white-space: nowrap;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-stye: -ms-autohiding-scrollbar;
}

.slick-dots li {
  opacity: .25;
  -webkit-transition: opacity 0.33333333s;
  transition: opacity 0.33333333s;
}

.slick-dots .slick-active {
  opacity: 1;
}

.product-certification {
  position: absolute;
  top: 0;
  right: 0;
  width: 80px;
  z-index: 1;
}

.product-certification img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .c-product__images {
    margin-bottom: 1rem;
  }

  .c-product__slide {
    height: 300px;
  }

  .c-product__img {
    max-height: 100%;
  }

  .product-certification {
    width: 55px;
  }
}

/*------------------------------------*\
    #POSTS
\*------------------------------------*/

.c-post-large {
  overflow: hidden;
  height: 445px;
  background-color: #fff;
  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
          box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
}

.c-post-large__img {
  height: 100%;
  width: 35%;
  float: left;
  overflow: hidden;
  position: relative;
}

.c-post-large__img a {
  display: block;
}

.c-post-large__img img {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  max-width: none;
}

.c-post__date {
  color: #999999;
}

.c-post-large__body {
  width: 65%;
  float: right;
  height: 100%;
}

.c-post-large__heading {
  line-height: 1.3;
  font-size: 1.5rem;
  margin-top: 0.5rem;
  margin-bottom: 1rem;
}

.c-post-large__heading:hover {
  text-decoration: underline;
}

.c-post-large__content {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.c-post-large__lead {
  margin-bottom: 1.5rem;
  color: #555555;
}

.c-post-large__btn {
  background-color: #000;
  border-color: #000;
  padding: calc(.75em - 6px) calc(1.2em - 6px);
}

.c-post-small {
  text-align: center;
  background-color: #fff;
  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
          box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
  overflow: hidden;
  height: 445px;
}

.c-post-small__body {
  padding: 1rem;
}

.c-post-small__images {
  margin-bottom: 1rem;
}

.c-post-small__heading {
  font-size: 1.125rem;
  margin-bottom: 1rem;
  line-height: 1.3;
}

.c-post-small__heading:hover {
  text-decoration: underline;
}

@media screen and (max-width: 767px) {
  .c-post-large {
    height: auto;
  }

  .c-post-large__img,
  .c-post-large__body {
    float: none;
    width: 100%;
  }

  .c-post-large__img img {
    position: static;
    -webkit-transform: none;
            transform: none;
    max-width: 100%;
  }

  .c-post-large__content {
    position: static;
    -webkit-transform: none;
            transform: none;
  }

  .c-post-small {
    height: 100%;
  }
}

/**
 * List posts
 */

.c-post-list {
  text-align: center;
  border-bottom: 1px solid #ddd;
}

.c-post-list:only-child {
  border-bottom: 0;
}

.c-post-list:hover .c-post-list__title {
  color: #000;
}

.c-post-list:hover .c-post-list__link {
  opacity: 1;
}

.c-post-list__title {
  -webkit-transition: color 300ms;
  transition: color 300ms;
  font-size: 2.5rem;
}

.c-post-list__meta {
  margin-left: 0.5rem;
}

.c-post-list__img {
  display: block;
  margin-bottom: 2rem;
}

.c-post-list__body {
  padding-top: 1rem;
  padding-bottom: 1rem;
  font-family: 'Georgia';
}

.c-post-list__content {
  padding-left: 2rem;
  padding-right: 2rem;
}

.c-post-list__link {
  display: none;
  -webkit-transition: opacity 300ms;
  transition: opacity 300ms;
}

/*------------------------------------*
    #TABS
\*------------------------------------*/

/**
 * Tabs
 */

.c-tabs {
  border-top: 1px solid #fff;
  border-bottom: 1px solid #f2f5ed;
}

.c-tabs--alt .c-tabs__link {
  border-radius: 0;
}

.c-tabs__item {
  float: left;
}

.c-tabs__item:not(:last-child) {
  margin-right: 1px;
}

.c-tabs__item--half {
  width: 50%;
}

.c-tabs__item--half:not(:last-child) {
  margin-right: 0;
}

.c-tabs__link {
  display: inline-block;
  background-color: #f2f5ed;
  padding: 1rem 2rem;
  display: block;
  color: #000;
  text-decoration: none;
  position: relative;
  top: 0;
  border-top-left-radius: 14px;
  border-top-right-radius: 14px;
  text-align: center;
}

.c-tabs__link.is-selected {
  position: relative;
  background: #fff;
  color: #000;
  border-right: 1px solid #f2f5ed;
}

.c-tabs__link.is-selected:after {
  position: absolute;
  content: '';
  height: 1px;
  width: 100%;
  left: 0;
  bottom: -1px;
  z-index: 10;
  background: #fff;
}

.c-tabs--full .c-tabs__item {
  float: none;
}

@media screen and (max-width: 767px) {
  .c-tabs--alt .c-tabs__item {
    float: none;
    width: 100%;
  }
}

/*------------------------------------*\
    #TOASTS
\*------------------------------------*/

.c-toast {
  display: none;
}

.c-toast--success {
  background: #e3f9e0;
  text-align: center;
  cursor: pointer;
  padding: .5em;
}

.c-toast--top {
  position: fixed;
  width: 100%;
  z-index: 600;
  top: 0;
  left: 0;
  -webkit-transition: -webkit-transform 400ms;
  transition: -webkit-transform 400ms;
  transition: transform 400ms;
  transition: transform 400ms, -webkit-transform 400ms;
}

@media screen and (max-width: 767px) {
  .c-toast--top {
    display: block;
  }

  .c-toast--top.is-visible {
    -webkit-transform: translateY(70px);
            transform: translateY(70px);
  }
}

/*------------------------------------*\
    #TOGGLE
\*------------------------------------*/

/**
 * Menu Icon
 */

.menu-icon {
  position: relative;
  display: block;
  width: 27px;
  padding: 10px 0;
}

.menu-icon__item {
  display: block;
  height: 3px;
  border-radius: 10px;
  background-color: var(--main-color);
  -webkit-transition: all .2s;
  transition: all .2s;
}

.menu-icon__item + .menu-icon__item {
  margin-top: 5px;
}

body.nav-open .menu-icon__item:nth-child(1) {
  -webkit-transform: translateY(8px) rotate(45deg);
          transform: translateY(8px) rotate(45deg);
}

body.nav-open .menu-icon__item:nth-child(2) {
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  opacity: 0;
}

body.nav-open .menu-icon__item:nth-child(3) {
  -webkit-transform: translateY(-8px) rotate(-45deg);
          transform: translateY(-8px) rotate(-45deg);
}

.btn-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: none;
  background: transparent;
  outline: none;
  cursor: pointer;
  outline: none;
}

.btn-menu:focus {
  outline: none;
}

.btn-menu__text {
  color: var(--main-color);
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  margin-right: .75rem;
}

/*------------------------------------*
    #LABELS
\*------------------------------------*/

.c-label {
  display: inline-block;
  padding: 0.2em 0.6em .3em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: .25em;
}

.c-label--default {
  background-color: #444;
  color: #fff;
}

.c-label--success {
  background-color: #d0ffc9;
  color: #00bc00;
}

.c-label--warning {
  background-color: #fff0c9;
  color: #bc7800;
}

.c-label--info {
  background-color: #c9e9ff;
  color: #0061bc;
}

.c-label--danger {
  background-color: #ffc9c9;
  color: #bc0000;
}

/*------------------------------------*
    #CART
\*------------------------------------*/

.c-cart__item {
  position: relative;
  height: 110px;
  overflow: hidden;
  border-bottom: 1px solid #cbcbcb;
}

.c-cart__item:first-child {
  border-top: 1px solid #cbcbcb;
}

.c-cart__info {
  clear: left;
}

.c-cart__img {
  float: left;
}

.c-cart__img-item {
  width: 196px;
}

.c-cart__edit {
  position: absolute;
  top: 0;
  left: 0;
}

.c-cart__desc {
  overflow: hidden;
}

.c-cart__desc > div {
  height: 110px;
  display: table;
  width: 100%;
  table-layout: fixed;
}

.c-cart__title {
  font-size: 1.125rem;
  font-weight: 700;
}

.c-cart__price {
  font-size: 1.125rem;
}

.c-cart__col {
  display: table-cell;
  vertical-align: middle;
}

.c-cart__col--desc {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.c-cart__col--price {
  width: 125px;
}

.c-cart__col--total-price {
  width: 125px;
}

.c-cart__col--amount {
  width: 150px;
}

.c-cart__col--actions {
  width: 50px;
  text-align: right;
  padding-right: 1rem;
}

.c-cart__metas {
  display: table;
  height: 110px;
}

.c-cart__price-total {
  font-weight: 700;
}

.c-amount-btn {
  width: 32px;
  height: 32px;
  padding: 0;
  text-align: center;
  display: inline-block;
  font-style: 1.5rem;
  font-weight: 700;
}

.c-amount-field {
  width: 32px;
  height: 32px;
  padding: 0;
  text-align: center;
  display: inline-block;
}

.c-cart__price-old {
  display: block;
}

.c-cart__spec-list dt {
  margin-left: 10px;
}

.c-cart__spec-list dt:first-of-type {
  margin-left: 0;
}

.c-cart__spec-list dt,
.c-cart__spec-list dd {
  float: none;
  display: inline-block;
}

.c-cart__spec-list dt {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .c-cart__item {
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 15px;
    height: auto;
    background-color: #f9f9f9;
  }

  .c-cart__desc > div {
    height: 120px;
  }

  .c-cart__price-old {
    display: inline;
  }

  .c-cart__metas {
    display: block;
    padding-left: 15px;
    height: auto;
    width: 100%;
  }

  .c-amount {
    position: relative;
    bottom: 5px;
    text-align: center;
  }

  .c-cart__col--price,
  .c-cart__col--amount,
  .c-cart__col--total-price {
    float: left;
  }

  .c-cart__col--price {
    width: 30%;
  }

  .c-cart__col--total {
    float: right;
  }

  .c-cart__col--amount {
    width: 40%;
  }

  .c-cart__col--total-price {
    width: 30%;
    text-align: right;
    padding-right: 15px;
  }

  .c-cart__img-item {
    width: 65px;
  }

  .c-cart__col--desc {
    padding-left: 15px;
    padding-right: 3rem;
  }

  .c-cart__title {
    font-size: 1rem;
  }

  .c-cart__price {
    font-size: 1rem;
  }

  .c-cart__spec {
    font-size: 0.875rem;
  }

  .c-amount-field {
    width: 26px;
    height: 26px;
  }

  .c-cart__desc > div {
    display: block;
    position: relative;
  }

  .c-cart__col {
    display: block;
  }

  .c-cart__col--actions {
    position: absolute;
    top: -15px;
    right: 0;
    padding-right: 0;
    width: 44px;
    height: 44px;
    text-align: center;
    line-height: 44px;
  }

  .c-products__price--new {
    font-weight: 700;
  }
}

@media (max-width: 479px) {
  .c-cart__col--price {
    width: 100%;
    float: none;
    margin-bottom: 10px;
    font-size: 0.875rem;
  }

  .c-cart__col--amount {
    clear: left;
    width: 50%;
  }

  .c-amount {
    text-align: left;
    display: inline-block;
    background: #ddd;
    border-radius: 3px;
  }

  .c-cart__col--total-price {
    width: 50%;
  }
}

/*------------------------------------*
    #BREADCRUMBS
\*------------------------------------*/

/**
 * Breadcrumbs component
 */

.c-breadcrumbs {
  overflow: hidden;
}

.c-breadcrumbs__list {
  overflow: hidden;
  width: 200%;
}

.c-breadcrumbs__item {
  float: left;
}

.c-breadcrumbs__item:first-child .c-breadcrumbs__link {
  padding-left: 0;
}

.c-breadcrumbs__link {
  display: block;
  padding: 0.75rem 0.5rem;
  vertical-align: middle;
}

.c-breadcrumbs__link.is-current {
  color: #999;
}

.c-breadcrumbs__divider {
  color: #999;
  fill: #999;
}

.c-breadcrumbs__divider--next {
  margin-left: 0.75rem;
}

.c-breadcrumbs__divider--prev {
  margin-right: 0.75rem;
  display: none;
}

@media screen and (max-width: 767px) {
  .c-breadcrumbs__item,
  .c-breadcrumbs__link {
    float: none;
  }

  .c-breadcrumbs__item {
    display: none;
  }

  .c-breadcrumbs__item:nth-last-child(2) {
    display: block;
  }

  .c-breadcrumbs__divider--prev {
    display: inline-block;
  }

  .c-breadcrumbs__divider--next {
    display: none;
  }
}

/*------------------------------------*\
    #HERO
\*------------------------------------*/

.home-intro-text {
  padding: 20px;
  position: absolute;
  z-index: 4;
  top: 0;
  left: 0;
  color: #fff;
  text-align: center;
}

.c-hero {
  padding: 10%;
  background-color: #f1f1f1;
  text-align: center;
}

.c-hero--danger {
  background-color: rgba(246, 63, 65, 0.2);
}

.c-hero--danger .c-hero__title {
  color: #f63f41;
}

.c-hero--md {
  padding: 7.5%;
}

.c-hero__title {
  font-size: 4rem;
}

.c-hero__title--md {
  font-size: 2.5rem;
}

.c-hero-title {
  font-size: 2rem;
  line-height: 1.2;
  margin-bottom: 1rem;
}

.home-intro-lead {
  margin-bottom: 1rem;
  font-weight: 500;
}

.hero {
  position: relative;
  height: 90vh;
}

.slider-nav {
  position: absolute;
  bottom: 0;
  width: 100%;
}

/**
 * Bottle
 */

.bottle-label {
  position: absolute;
  z-index: 3;
  left: 20px;
  bottom: 40px;
  padding: 0.875em 1em;
  background-color: #252525;
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .home-intro-text {
    z-index: 4;
    position: absolute;
    top: calc(50% - 50px);
    left: 0;
    max-width: 650px;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    color: #fff;
    text-align: left;
  }

  .home-intro-lead {
    margin: 26px 0 30px;
    font-size: 18px;
    opacity: .85;
  }

  .slider-nav {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 50%;
  }

  /**
     * Bottle (sm)
     */

  .bottle-label {
    position: absolute;
    bottom: 100px;
    color: #fff;
    font-size: 1.5rem;
    font-weight: 700;
  }

  /**
     * Hero (sm)
     */

  .c-hero-title {
    font-size: 54px;
    line-height: 60px;
  }
}

@media screen and (min-width: 992px) {
  /**
     * Hero (sm)
     */

  .c-hero-title {
    font-size: 48px;
    line-height: 50px;
  }

  .home-intro-text {
    left: 5%;
  }

  .home-intro-lead {
    font-size: 20px;
  }
}

@media screen and (min-width: 1200px) {
  /**
     * Hero (sm)
     */

  .c-hero-title {
    font-size: 54px;
    line-height: 56px;
  }

  .home-intro-text {
    left: 5%;
  }

  .home-intro-lead {
    font-size: 24px;
  }
}

@media screen and (max-width: 767px) {
  .c-hero__title {
    font-size: 2rem;
  }
}

/*------------------------------------*\
    #MULTIPLE SELECT
\*------------------------------------*/

/**
 * Dropdown
 */

.c-dropdown {
  position: relative;
}

.c-dropdown.is-open > .c-dropdown__body {
  display: block;
}

.c-dropdown__header {
  position: relative;
  cursor: pointer;
}

.c-dropdown__body {
  border-radius: 6px;
  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
          box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
  position: absolute;
  z-index: 100;
  width: 150%;
  top: 100%;
  top: calc(100% + 5px);
  left: 0;
  display: none;
}

.c-dropdown__icon {
  position: absolute;
  top: 50%;
  right: .75rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.c-dropdown__heading {
  line-height: 54px;
  height: 54px;
  margin-bottom: 0;
  padding: 0 2rem 0 1rem;
}

.c-theme,
.c-settings {
  background: #fff;
  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
          box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
}

/*------------------------------------*\
    #MENU
\*------------------------------------*/

/**
 * Filter, sorting and such
 */

.c-settings {
  border-radius: 12px;
}

.c-settings__item {
  width: 25%;
  float: left;
}

.c-settings__item:not(:last-child) {
  border-right: 1px solid #ddd;
}

@media screen and (min-width: 768px) {
  .c-settings-section {
    display: block !important;
  }
}

/*------------------------------------*\
    #CUSTOM CHOICE
\*------------------------------------*/

/**
 * Custom checkboxes and radio buttons
 */

.c-custom-choice {
  position: relative;
}

.c-custom-choice__input {
  display: none;
}

.c-custom-choice__input:checked + .c-custom-choice__label {
  font-weight: 600;
}

.c-custom-choice__input:checked + .c-custom-choice__label .is-checked {
  display: block;
}

.c-custom-choice__input:checked + .c-custom-choice__label .is-unchecked {
  display: none;
}

.c-custom-choice__label {
  padding-top: .75rem;
  padding-bottom: .75rem;
  margin-bottom: 0;
  font-size: 1rem;
}

.c-custom-choice__label:hover,
.c-custom-choice__label:focus {
  background-color: #fef0c9;
}

.c-custom-choice__icon {
  position: absolute;
  right: .75rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.c-custom-choice__icon.is-checked {
  display: none;
}

body {
  background-color: #fff;
}

.home-slider {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.home-slider .slick-slide:nth-child(1) {
  background-color: #004567;
}

.home-slider .slick-slide:nth-child(2) {
  background-color: #473B85;
}

.home-slider .slick-slide:nth-child(3) {
  background-color: #2F7700;
}

.c-cart__edit,
[data-show-modal] {
  background-color: #ff9800;
  color: #fff;
  font-weight: 700;
  font-size: 14px;
  border-radius: 5px;
  padding: .25rem .5rem;
  line-height: 1;
  top: 8px;
  left: 220px;
  cursor: pointer;
}

.c-cart__title a:hover {
  color: inherit;
}

.site-control {
  color: #8b95a9;
  font-weight: 700;
  cursor: pointer;
}

.site-control .c-icon {
  fill: #8b95a9;
}

.slide {
  height: 90vh;
  background-repeat: no-repeat;
  background-position: right center;
}

.slide:after {
  content: '';
  position: absolute;
  z-index: 2;
  top: calc(100% - 75px);
  right: -50px;
  left: -50px;
  display: block;
  height: 200px;
  background: #fff;
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
  -webkit-transform: rotate(-2deg);
          transform: rotate(-2deg);
}

.bottle {
  position: relative;
  max-width: 800px;
}

.bottle-image {
  position: relative;
  z-index: 3;
}

.btn {
  border: 0;
  display: inline-block;
  height: 50px;
  padding: 0 45px;
  border-radius: 50px;
  background: #ff9800;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 50px;
  text-align: center;
  cursor: pointer;
  -webkit-transition: all 0.33333333s;
  transition: all 0.33333333s;
}

.btn.gradient-in,
.btn.gradient-out {
  position: relative;
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

.btn.gradient-in:hover:after,
.btn.gradient-out:hover:after {
  -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
          transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transform: none;
          transform: none;
}

.btn.gradient-in:hover,
.btn.gradient-in:active,
.btn.gradient-out:hover,
.btn.gradient-out:active {
  overflow: hidden;
}

.btn.gradient-in span,
.btn.gradient-out span {
  position: relative;
  z-index: 5;
}

.btn.gradient-in:after,
.btn.gradient-out:after {
  content: '';
  position: absolute;
  z-index: 3;
  top: -5px;
  right: -5px;
  bottom: -5px;
  left: -5px;
  display: block;
  background: -webkit-gradient(linear, left top, right top, from(#ff9800), to(#f63f41));
  background: linear-gradient(to right, #ff9800, #f63f41);
  -webkit-transition: all .25s;
  transition: all .25s;
  -webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
          transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
}

.btn.gradient-in.gradient-out:hover:after,
.btn.gradient-out.gradient-out:hover:after {
  -webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
          transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
}

.btn.gradient-in.gradient-out:after,
.btn.gradient-out.gradient-out:after {
  -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
          transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transform: none;
          transform: none;
}

.btn[disabled] {
  opacity: 0;
  visibility: hidden;
}

.btn--primary {
  background: #ff9800;
}

.btn--primary:after {
  display: none !important;
}

.cart {
  display: block;
  position: relative;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 2px solid #f63f41;
  text-align: center;
  border-color: var(--main-color);
  -webkit-transition: all 0.33333333s;
  transition: all 0.33333333s;
}

.cart:hover {
  background-color: #fff;
  -webkit-transform: scale(1.075);
          transform: scale(1.075);
}

.menu-cart {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.cart__counter {
  position: absolute;
  z-index: 10;
  background: var(--main-color);
  color: var(--second-color);
  text-align: center;
}

.cart__icon {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  fill: var(--main-color);
}

.cart:hover .cart__icon {
  fill: var(--main-color);
}

@media screen and (max-width: 767px) {
  .site-nav__item {
    border-bottom: 1px solid #EBF0F0;
  }

  .site-nav__link {
    position: relative;
    display: block;
    padding: 15px 20px;
    color: #95989A;
    font-size: 18px;
    font-weight: 600;
  }

  .site-nav__link:before,
  .site-nav__link:after {
    content: '';
    position: absolute;
    top: 50%;
    right: 15px;
    display: block;
    width: 0;
    height: 0;
    margin-top: -6px;
    border: 5px solid transparent;
    border-left-color: #95989A;
  }

  .site-nav__link:after {
    border-left-color: #fff;
    right: 17px;
  }
}

@media screen and (min-width: 768px) {
  .site-nav__item {
    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: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin: 0 -15px;
  }

  .site-nav__link {
    padding: 8px 15px;
    font-size: 50px;
    font-weight: 700;
    line-height: 1;
    color: #000;
  }
}

.social {
  padding-top: 1px;
  color: #525151;
  fill: #525151;
  font-size: 24px;
}

.social p {
  max-width: 450px;
  margin-bottom: 10px;
}

@media screen and (min-width: 768px) {
  .social {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }

  .social p {
    margin: 0;
  }
}

.social-links:hover .social-links__link {
  opacity: .5;
}

.social-links .social-links__link {
  display: block;
  margin-right: 15px;
  -webkit-transition: all .25s;
  transition: all .25s;
}

.social-links .social-links__link:hover {
  opacity: 1;
}

@media screen and (min-width: 768px) {
  .social-links__link {
    margin-left: 15px;
    margin-right: 0;
  }

  .social-links__link:hover {
    opacity: 1;
  }
}

.title {
  background: linear-gradient(135deg, #ff9800 0, #f63f41 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  line-height: 1.5;
  font-weight: 700;
  font-size: 6rem;
  display: inline-block;
}

.grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.grid__item {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  width: 100%;
}

.grid--space-between {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.width-sm {
  width: 200px;
}

@media screen and (max-width: 767px) {
  .grid--column\@xs {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.c-title {
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 300;
  font-family: "Montserrat", sans-serif;
}

.c-lead {
  font-size: 21px;
  color: #95989a;
}

.c-lead--md {
  font-size: 18px;
}

.custom-counter {
  counter-reset: li;
}

.custom-counter__item:before {
  content: counter(li, decimal-leading-zero);
  counter-increment: li;
}

.c-variable {
  position: relative;
  padding: 2rem;
  border-top: 1px solid #cbcbcb;
  border-left: 1px solid #cbcbcb;
  border-right: 1px solid #cbcbcb;
  background-color: #f9f9f9;
}

.c-variable:before {
  font-size: 1.5rem;
  color: #ddd;
  position: absolute;
  top: .5rem;
  left: 2rem;
}

.c-variable:first-child {
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}

.c-variable:last-child {
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  border-bottom: 1px solid #cbcbcb;
}

.c-variable:only-of-type {
  border-radius: 5px;
  border: 1px solid #cbcbcb;
}

.c-variable__remove {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
}

.circle-btn {
  padding: 0;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  background-color: #eee;
  border: 1px solid #cbcbcb;
  fill: #f63f41;
}

/*------------------------------------*\
    #TEMPLATES
\*------------------------------------*/

.template {
  position: relative;
  -webkit-transition: -webkit-transform 0.33333333s;
  transition: -webkit-transform 0.33333333s;
  transition: transform 0.33333333s;
  transition: transform 0.33333333s, -webkit-transform 0.33333333s;
}

.template:hover {
  z-index: 1;
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}

.template__input {
  display: none;
}

.template__body {
  background-color: #eee;
  border: 4px solid #fff;
  position: relative;
  border-radius: 4px;
  overflow: hidden;
  -webkit-transition: all 0.33333333s;
  transition: all 0.33333333s;
}

.template__submit {
  -webkit-transition: all 0.33333333s;
  transition: all 0.33333333s;
  visibility: hidden;
  opacity: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.template:hover .template__body {
  -webkit-box-shadow: 0 0 0 3px #eee;
          box-shadow: 0 0 0 3px #eee;
}

.template__input:checked + .template__body {
  -webkit-box-shadow: 0 0 0 3px #ff9800;
          box-shadow: 0 0 0 3px #ff9800;
}

.template__input:checked + .template__body .template__submit {
  visibility: visible;
  opacity: 1;
}

.template__heading {
  position: absolute;
}

.vex.vex-theme-preview {
  padding-top: 160px;
  padding-bottom: 160px;
}

.vex.vex-theme-preview.vex-closing .vex-content {
  animation: vex-flyout 0.5s;
  -webkit-animation: vex-flyout 0.5s;
  -moz-animation: vex-flyout 0.5s;
  -ms-animation: vex-flyout 0.5s;
  -o-animation: vex-flyout 0.5s;
  -webkit-backface-visibility: hidden;
}

.vex.vex-theme-preview .vex-content {
  animation: vex-flyin 0.5s;
  -webkit-animation: vex-flyin 0.5s;
  -moz-animation: vex-flyin 0.5s;
  -ms-animation: vex-flyin 0.5s;
  -o-animation: vex-flyin 0.5s;
  -webkit-backface-visibility: hidden;
}

.vex.vex-theme-preview .vex-content {
  border-radius: 5px;
  font-family: "Helvetica Neue", sans-serif;
  background: #f0f0f0;
  color: #444;
  padding: 1em;
  position: relative;
  margin: 0 auto;
  max-width: 100%;
  width: 450px;
  font-size: 1.1em;
  line-height: 1.5em;
}

.vex.vex-theme-preview .vex-content h1,
.vex.vex-theme-preview .vex-content h2,
.vex.vex-theme-preview .vex-content h3,
.vex.vex-theme-preview .vex-content h4,
.vex.vex-theme-preview .vex-content h5,
.vex.vex-theme-preview .vex-content h6,
.vex.vex-theme-preview .vex-content p,
.vex.vex-theme-preview .vex-content ul,
.vex.vex-theme-preview .vex-content li {
  color: inherit;
}

.vex.vex-theme-preview .vex-close {
  border-radius: 5px;
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
}

.vex.vex-theme-preview .vex-close:before {
  content: "\D7";
}

.vex.vex-theme-preview .vex-dialog-form .vex-dialog-message {
  margin-bottom: 0.5em;
}

.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input {
  margin-bottom: 1em;
}

.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input textarea,
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="date"],
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="datetime"],
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="datetime-local"],
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="email"],
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="month"],
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="number"],
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="password"],
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="search"],
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="tel"],
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="text"],
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="time"],
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="url"],
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="week"] {
  border-radius: 3px;
  background: #fff;
  width: 100%;
  padding: 0.25em 0.67em;
  border: 0;
  font-family: inherit;
  font-weight: inherit;
  font-size: inherit;
  min-height: 2.5em;
  margin: 0 0 0.25em;
}

.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input textarea:focus,
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="date"]:focus,
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="datetime"]:focus,
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="datetime-local"]:focus,
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="email"]:focus,
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="month"]:focus,
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="number"]:focus,
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="password"]:focus,
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="search"]:focus,
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="tel"]:focus,
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="text"]:focus,
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="time"]:focus,
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="url"]:focus,
.vex.vex-theme-preview .vex-dialog-form .vex-dialog-input input[type="week"]:focus {
  -webkit-box-shadow: inset 0 0 0 2px #8dbdf1;
  box-shadow: inset 0 0 0 2px #8dbdf1;
  outline: none;
}

.vex.vex-theme-preview .vex-dialog-form .vex-dialog-buttons {
  *zoom: 1;
}

.vex.vex-theme-preview .vex-dialog-form .vex-dialog-buttons:after {
  content: "";
  display: table;
  clear: both;
}

.vex.vex-theme-preview .vex-dialog-button {
  border-radius: 3px;
  border: 0;
  float: right;
  margin: 0 0 0 0.5em;
  font-family: inherit;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 0.8em;
  line-height: 1em;
  padding: 0.75em 2em;
}

.vex.vex-theme-preview .vex-dialog-button.vex-last {
  margin-left: 0;
}

.vex.vex-theme-preview .vex-dialog-button:focus {
  animation: vex-pulse 1.1s infinite;
  -webkit-animation: vex-pulse 1.1s infinite;
  -moz-animation: vex-pulse 1.1s infinite;
  -ms-animation: vex-pulse 1.1s infinite;
  -o-animation: vex-pulse 1.1s infinite;
  -webkit-backface-visibility: hidden;
  outline: none;
}

.vex.vex-theme-preview .vex-dialog-button.vex-dialog-button-primary {
  background: #3288e6;
  color: #fff;
}

.vex.vex-theme-preview .vex-dialog-button.vex-dialog-button-secondary {
  background: #e0e0e0;
  color: #777;
}

body .vex.vex-theme-preview {
  overflow: hidden;
  padding-top: 0;
  padding-bottom: 0;
}

body .vex.vex-theme-preview .vex-content {
  width: 100%;
  height: 100%;
  padding: 0;
  border-radius: 0;
}

body .vex.vex-theme-preview .vex-close {
  top: 32px;
  right: 25px;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 2px solid #000;
  -webkit-transition: .25s;
  transition: .25s;
}

body .vex.vex-theme-preview .vex-close:hover {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}

body .vex.vex-theme-preview .vex-close:hover:before,
body .vex.vex-theme-preview .vex-close:hover:after {
  background-color: #000;
}

body .vex.vex-theme-preview .vex-close:active {
  -webkit-transform: scale(0.95);
          transform: scale(0.95);
}

body .vex.vex-theme-preview .vex-close:active:before,
body .vex.vex-theme-preview .vex-close:active:after {
  background-color: #000;
}

body .vex.vex-theme-preview .vex-close:before,
body .vex.vex-theme-preview .vex-close:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 24px;
  height: 3px;
  margin-top: -1px;
  background: #000;
  -webkit-transform: translateX(-50%) rotate(45deg);
          transform: translateX(-50%) rotate(45deg);
  -webkit-transition: .25s;
  transition: .25s;
}

body .vex.vex-theme-preview .vex-close:after {
  -webkit-transform: translateX(-50%) rotate(-45deg);
          transform: translateX(-50%) rotate(-45deg);
}

.current-customers-canvas-bottle-viewer {
  width: 100%;
  height: 900px;
  background-color: #000;
}

.vex-max-height {
  height: 100% !important;
}

.vex.vex-theme-default .vex-content {
  max-width: 1024px !important;
  max-height: 1024px !important;
  width: 100% !important;
}

@media (max-width: 568px) {
  .vex.vex-theme-preview .vex-dialog-button:focus {
    animation: none;
    -webkit-animation: none;
    -moz-animation: none;
    -ms-animation: none;
    -o-animation: none;
    -webkit-backface-visibility: hidden;
  }
}

.c-progress-tracker {
  display: none;
}

@media screen and (min-width: 768px) {
  .c-progress-tracker {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
    list-style: none;
  }

  .c-progress-tracker__item {
    position: relative;
    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;
    width: 54px;
  }

  .c-progress-tracker__item.current .c-progress-tracker__circle {
    border-color: #14CC4F;
  }

  .c-progress-tracker__item.current .c-progress-tracker__label {
    color: #262626;
    font-weight: 700;
  }

  .c-progress-tracker__item.passed .c-progress-tracker__circle {
    background-color: #14CC4F;
    border-color: #14CC4F;
  }

  .c-progress-tracker__item.passed .c-progress-tracker__step-nr {
    display: none;
  }

  .c-progress-tracker__item.passed .c-progress-tracker__check-mark {
    display: block;
  }

  .c-progress-tracker__item:last-child .c-progress-tracker__circle:before,
  .c-progress-tracker__item:last-child .c-progress-tracker__circle:after {
    content: none;
  }

  .c-progress-tracker__circle {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 54px;
    height: 54px;
    margin-bottom: 20px;
    border: 4px solid #E4E4E4;
    border-radius: 50%;
  }

  .c-progress-tracker__circle:after {
    content: '';
    position: absolute;
    top: 21px;
    left: calc(100% + 15px);
    display: block;
    width: 135px;
    height: 4px;
    background: #E4E4E4;
  }

  .c-progress-tracker__circle:before {
    content: '';
    position: absolute;
    top: 16px;
    left: calc(100% + 150px);
    display: block;
    width: 0;
    height: 0;
    border: 7px solid transparent;
    border-left-color: #E4E4E4;
  }

  .c-progress-tracker__check-mark {
    display: none;
  }

  .c-progress-tracker__check-mark-icon {
    width: 19px;
  }

  .c-progress-tracker__label {
    position: absolute;
    top: 72px;
    left: 50%;
    display: block;
    color: #6C6F71;
    font-size: 1rem;
    text-align: center;
    white-space: nowrap;
    -webkit-transform: translate(-50%);
            transform: translate(-50%);
  }
}

.c-mobile-portrait-info {
  display: none;
}

@media only screen and (max-width: 480px) {
  .c-mobile-portrait-info {
    display: block;
  }
}

/**
 * Vendor
 */

/*------------------------------------*
    #SWIPEBOX
\*------------------------------------*/

/**
 * Skin
 */

#swipebox-overlay {
  background: #fff;
}

#swipebox-close {
  background-color: #000;
  right: 15px;
}

.swipebox {
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

.swipebox:active {
  cursor: move;
}

#swipebox-bottom-bar {
  background-color: transparent;
  position: static;
  bottom: 0;
  -webkit-transform: none !important;
          transform: none !important;
}

#swipebox-prev,
#swipebox-next {
  position: absolute;
  background-color: #e3e6de;
  float: none;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

#swipebox-prev:hover,
#swipebox-next:hover {
  background-color: #000;
}

#swipebox-prev {
  left: 0;
}

#swipebox-next {
  right: 15px;
}

@keyframes vex-fadein {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@-webkit-keyframes vex-fadein {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes vex-fadeout {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@-webkit-keyframes vex-fadeout {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@keyframes vex-rotation {
  0% {
    transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
  }

  100% {
    transform: rotate(359deg);
    -webkit-transform: rotate(359deg);
    -moz-transform: rotate(359deg);
    -ms-transform: rotate(359deg);
    -o-transform: rotate(359deg);
  }
}

@-webkit-keyframes vex-rotation {
  0% {
    transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
  }

  100% {
    transform: rotate(359deg);
    -webkit-transform: rotate(359deg);
    -moz-transform: rotate(359deg);
    -ms-transform: rotate(359deg);
    -o-transform: rotate(359deg);
  }
}

.vex,
.vex *,
.vex *:before,
.vex *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.vex {
  position: fixed;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  z-index: 1111;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.vex-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}

.vex-overlay {
  background: #000;
  filter: alpha(opacity=40);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";
}

.vex-overlay {
  animation: vex-fadein 0.5s;
  -webkit-animation: vex-fadein 0.5s;
  -moz-animation: vex-fadein 0.5s;
  -ms-animation: vex-fadein 0.5s;
  -o-animation: vex-fadein 0.5s;
  -webkit-backface-visibility: hidden;
  position: fixed;
  background: rgba(0, 0, 0, 0.4);
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.vex.vex-closing .vex-overlay {
  animation: vex-fadeout 0.5s;
  -webkit-animation: vex-fadeout 0.5s;
  -moz-animation: vex-fadeout 0.5s;
  -ms-animation: vex-fadeout 0.5s;
  -o-animation: vex-fadeout 0.5s;
  -webkit-backface-visibility: hidden;
}

.vex-content {
  animation: vex-fadein 0.5s;
  -webkit-animation: vex-fadein 0.5s;
  -moz-animation: vex-fadein 0.5s;
  -ms-animation: vex-fadein 0.5s;
  -o-animation: vex-fadein 0.5s;
  -webkit-backface-visibility: hidden;
  background: #fff;
}

.vex.vex-closing .vex-content {
  animation: vex-fadeout 0.5s;
  -webkit-animation: vex-fadeout 0.5s;
  -moz-animation: vex-fadeout 0.5s;
  -ms-animation: vex-fadeout 0.5s;
  -o-animation: vex-fadeout 0.5s;
  -webkit-backface-visibility: hidden;
}

.vex-close:before {
  font-family: Arial, sans-serif;
  content: "\D7";
}

.vex-dialog-form {
  margin: 0;
}

.vex-dialog-button {
  text-rendering: optimizeLegibility;
  -moz-appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

.vex-loading-spinner {
  animation: vex-rotation 0.7s linear infinite;
  -webkit-animation: vex-rotation 0.7s linear infinite;
  -moz-animation: vex-rotation 0.7s linear infinite;
  -ms-animation: vex-rotation 0.7s linear infinite;
  -o-animation: vex-rotation 0.7s linear infinite;
  -webkit-backface-visibility: hidden;
  -webkit-box-shadow: 0 0 1em rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 1em rgba(0, 0, 0, 0.1);
  position: fixed;
  z-index: 1112;
  margin: auto;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 2em;
  width: 2em;
  background: #fff;
}

body.vex-open {
  overflow: hidden;
}

@keyframes vex-flyin {
  0% {
    opacity: 0;
    transform: translateY(-40px);
    -webkit-transform: translateY(-40px);
    -moz-transform: translateY(-40px);
    -ms-transform: translateY(-40px);
    -o-transform: translateY(-40px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
  }
}

@-webkit-keyframes vex-flyin {
  0% {
    opacity: 0;
    transform: translateY(-40px);
    -webkit-transform: translateY(-40px);
    -moz-transform: translateY(-40px);
    -ms-transform: translateY(-40px);
    -o-transform: translateY(-40px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
  }
}

@keyframes vex-flyout {
  0% {
    opacity: 1;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
  }

  100% {
    opacity: 0;
    transform: translateY(-40px);
    -webkit-transform: translateY(-40px);
    -moz-transform: translateY(-40px);
    -ms-transform: translateY(-40px);
    -o-transform: translateY(-40px);
  }
}

@-webkit-keyframes vex-flyout {
  0% {
    opacity: 1;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
  }

  100% {
    opacity: 0;
    transform: translateY(-40px);
    -webkit-transform: translateY(-40px);
    -moz-transform: translateY(-40px);
    -ms-transform: translateY(-40px);
    -o-transform: translateY(-40px);
  }
}

@keyframes vex-pulse {
  0% {
    -webkit-box-shadow: inset 0 0 0 300px transparent;
    box-shadow: inset 0 0 0 300px transparent;
  }

  70% {
    -webkit-box-shadow: inset 0 0 0 300px rgba(255, 255, 255, 0.25);
    box-shadow: inset 0 0 0 300px rgba(255, 255, 255, 0.25);
  }

  100% {
    -webkit-box-shadow: inset 0 0 0 300px transparent;
    box-shadow: inset 0 0 0 300px transparent;
  }
}

@-webkit-keyframes vex-pulse {
  0% {
    -webkit-box-shadow: inset 0 0 0 300px transparent;
    box-shadow: inset 0 0 0 300px transparent;
  }

  70% {
    -webkit-box-shadow: inset 0 0 0 300px rgba(255, 255, 255, 0.25);
    box-shadow: inset 0 0 0 300px rgba(255, 255, 255, 0.25);
  }

  100% {
    -webkit-box-shadow: inset 0 0 0 300px transparent;
    box-shadow: inset 0 0 0 300px transparent;
  }
}

.vex.vex-theme-default {
  padding-top: 160px;
  padding-bottom: 160px;
}

.vex.vex-theme-default.vex-closing .vex-content {
  animation: vex-flyout 0.5s;
  -webkit-animation: vex-flyout 0.5s;
  -moz-animation: vex-flyout 0.5s;
  -ms-animation: vex-flyout 0.5s;
  -o-animation: vex-flyout 0.5s;
  -webkit-backface-visibility: hidden;
}

.vex.vex-theme-default .vex-content {
  animation: vex-flyin 0.5s;
  -webkit-animation: vex-flyin 0.5s;
  -moz-animation: vex-flyin 0.5s;
  -ms-animation: vex-flyin 0.5s;
  -o-animation: vex-flyin 0.5s;
  -webkit-backface-visibility: hidden;
}

.vex.vex-theme-default .vex-content {
  border-radius: 5px;
  font-family: "Helvetica Neue", sans-serif;
  background: #f0f0f0;
  color: #444;
  padding: 1em;
  position: relative;
  margin: 0 auto;
  max-width: 100%;
  width: 450px;
  font-size: 1.1em;
  line-height: 1.5em;
}

.vex.vex-theme-default .vex-content h1,
.vex.vex-theme-default .vex-content h2,
.vex.vex-theme-default .vex-content h3,
.vex.vex-theme-default .vex-content h4,
.vex.vex-theme-default .vex-content h5,
.vex.vex-theme-default .vex-content h6,
.vex.vex-theme-default .vex-content p,
.vex.vex-theme-default .vex-content ul,
.vex.vex-theme-default .vex-content li {
  color: inherit;
}

.vex.vex-theme-default .vex-close {
  border-radius: 5px;
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
}

.vex.vex-theme-default .vex-close:before {
  border-radius: 3px;
  position: absolute;
  content: "\D7";
  font-size: 26px;
  font-weight: normal;
  line-height: 31px;
  height: 30px;
  width: 30px;
  text-align: center;
  top: 3px;
  right: 3px;
  color: #bbb;
  background: transparent;
}

.vex.vex-theme-default .vex-close:hover:before,
.vex.vex-theme-default .vex-close:active:before {
  color: #777;
  background: #e0e0e0;
}

.vex.vex-theme-default .vex-dialog-form .vex-dialog-message {
  margin-bottom: .5em;
}

.vex.vex-theme-default .vex-dialog-form .vex-dialog-input {
  margin-bottom: 1em;
}

.vex.vex-theme-default .vex-dialog-form .vex-dialog-input textarea,
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="date"],
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="datetime"],
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="datetime-local"],
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="email"],
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="month"],
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="number"],
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="password"],
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="search"],
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="tel"],
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="text"],
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="time"],
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="url"],
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="week"] {
  border-radius: 3px;
  background: #fff;
  width: 100%;
  padding: .25em .67em;
  border: 0;
  font-family: inherit;
  font-weight: inherit;
  font-size: inherit;
  min-height: 2.5em;
  margin: 0 0 .25em;
}

.vex.vex-theme-default .vex-dialog-form .vex-dialog-input textarea:focus,
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="date"]:focus,
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="datetime"]:focus,
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="datetime-local"]:focus,
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="email"]:focus,
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="month"]:focus,
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="number"]:focus,
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="password"]:focus,
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="search"]:focus,
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="tel"]:focus,
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="text"]:focus,
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="time"]:focus,
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="url"]:focus,
.vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="week"]:focus {
  -webkit-box-shadow: inset 0 0 0 2px #8dbdf1;
  box-shadow: inset 0 0 0 2px #8dbdf1;
  outline: none;
}

.vex.vex-theme-default .vex-dialog-form .vex-dialog-buttons {
  *zoom: 1;
}

.vex.vex-theme-default .vex-dialog-form .vex-dialog-buttons:after {
  content: "";
  display: table;
  clear: both;
}

.vex.vex-theme-default .vex-dialog-button {
  border-radius: 3px;
  border: 0;
  float: right;
  margin: 0 0 0 .5em;
  font-family: inherit;
  text-transform: uppercase;
  letter-spacing: .1em;
  font-size: .8em;
  line-height: 1em;
  padding: .75em 2em;
}

.vex.vex-theme-default .vex-dialog-button.vex-last {
  margin-left: 0;
}

.vex.vex-theme-default .vex-dialog-button:focus {
  animation: vex-pulse 1.1s infinite;
  -webkit-animation: vex-pulse 1.1s infinite;
  -moz-animation: vex-pulse 1.1s infinite;
  -ms-animation: vex-pulse 1.1s infinite;
  -o-animation: vex-pulse 1.1s infinite;
  -webkit-backface-visibility: hidden;
  outline: none;
}

@media (max-width: 568px) {
  .vex.vex-theme-default .vex-dialog-button:focus {
    animation: none;
    -webkit-animation: none;
    -moz-animation: none;
    -ms-animation: none;
    -o-animation: none;
    -webkit-backface-visibility: hidden;
  }
}

.vex.vex-theme-default .vex-dialog-button.vex-dialog-button-primary {
  background: #3288e6;
  color: #fff;
}

.vex.vex-theme-default .vex-dialog-button.vex-dialog-button-secondary {
  background: #e0e0e0;
  color: #777;
}

.vex-loading-spinner.vex-theme-default {
  -webkit-box-shadow: 0 0 0 0.5em #f0f0f0, 0 0 1px 0.5em rgba(0, 0, 0, 0.3);
  box-shadow: 0 0 0 0.5em #f0f0f0, 0 0 1px 0.5em rgba(0, 0, 0, 0.3);
  border-radius: 100%;
  background: #f0f0f0;
  border: .2em solid transparent;
  border-top-color: #bbb;
  top: -1.1em;
  bottom: auto;
}

/**
 * Trumps
 */

/*------------------------------------*
    #TEXT
\*------------------------------------*/

/**
 * Weights
 */

.u-text-light {
  font-weight: 300;
}

.u-text-normal {
  font-weight: 400;
}

.u-text-bold {
  font-weight: 700;
}

.u-text-extrabold {
  font-weight: 800;
}

/**
 * Align
 */

.u-text-center {
  text-align: center;
}

.u-text-right {
  text-align: right;
}

.u-text-left {
  text-align: left;
}

/**
 * Transform
 */

.u-text-uppercase {
  text-transform: uppercase;
}

/**
 * Helpers
 */

.u-text-overflow {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.u-text-break {
  overflow: hidden;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

@media screen and (max-width: 767px) {
  .u-text-overflow\@xs {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
}

@media screen and (min-width: 768px) {
  .u-text-overflow\@sm {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
}

/**
 * Sizes
 */

.u-text-size-xs {
  font-size: 0.75rem !important;
}

.u-text-size-sm {
  font-size: 0.875rem !important;
}

.u-text-size-md {
  font-size: 1rem !important;
}

.u-text-size-lg {
  font-size: 1.25rem !important;
}

@media screen and (max-width: 767px) {
  .u-text-size-sm\@xs {
    font-size: 0.875rem;
  }
}

/**
 * Alignment
 */

.u-text-center {
  text-align: center;
}

.u-text-left {
  text-align: left;
}

.u-text-right {
  text-align: right;
}

@media screen and (max-width: 767px) {
  .u-text-center\@xs {
    text-align: center;
  }

  .u-text-left\@xs {
    text-align: left;
  }

  .u-text-right\@xs {
    text-align: right;
  }
}

/**
 * Color
 */

.u-text-white {
  color: #fff;
}

.u-text-black {
  color: #000;
}

.u-text-muted {
  color: #999;
}

.u-text-success {
  color: #000;
}

.u-text-danger {
  color: #f63f41;
}

/*------------------------------------*\
    #STATES
\*------------------------------------*/

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

.is-visible\@xs,
.is-visible\@sm,
.is-visible\@md,
.is-visible\@lg,
.is-visible-inline\@xs {
  display: none;
}

.is-visible {
  display: block;
}

.is-invisible {
  visibility: hidden;
}

@media screen and (max-width: 767px) {
  .is-hidden\@xs {
    display: none !important;
  }

  .is-visible\@xs {
    display: block !important;
  }

  .is-visible-inline\@xs {
    display: inline-block !important;
  }
}

@media screen and (min-width: 768px) and (max-width: 991px) {
  .is-hidden\@sm {
    display: none !important;
  }

  .is-visible\@sm {
    display: block !important;
  }
}

@media screen and (min-width: 992px) and (max-width: 1199px) {
  .is-hidden\@md {
    display: none !important;
  }

  .is-visible\@md {
    display: block !important;
  }
}

@media screen and (min-width: 1200px) {
  .is-hidden\@lg {
    display: none !important;
  }

  .is-visible\@lg {
    display: block !important;
  }
}

/*------------------------------------*
    #SPACING
\*------------------------------------*/

.u-padding-none {
  padding: 0 !important;
}

.u-padding-top-none {
  padding-top: 0 !important;
}

.u-padding-right-none {
  padding-right: 0 !important;
}

.u-padding-bottom-none {
  padding-bottom: 0 !important;
}

.u-padding-left-none {
  padding-left: 0 !important;
}

@media screen and (max-width: 767px) {
  .u-padding-none\@xs {
    padding: 0;
  }
}

/*------------------------------------*\
    #POSITIONS
\*------------------------------------*/

.u-position-relative {
  position: relative;
}

.u-pull-right {
  float: right;
}

.u-pull-left {
  float: right;
}

