/*! normalize.scss v0.1.0 | MIT License | based on git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
 * Remove default margin.
 */
body {
  margin: 0; }

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none; }

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0; }

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold; }

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic; }

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000; }

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0; }

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden; }

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px; }

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0; }

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto; }

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */ }

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible; }

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none; }

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default; }

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal; }

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box; }

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto; }

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold; }

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

/*! Flickity v2.0.8
http://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
  position: relative; }

.flickity-enabled:focus {
  outline: none; }

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%; }

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%; }

/* draggable */
.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab; }

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing; }

/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  position: absolute;
  top: 50%;
  width: 44px;
  height: 44px;
  border: none;
  border-radius: 50%;
  background: white;
  background: rgba(255, 255, 255, 0.75);
  cursor: pointer;
  /* vertically center */
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%); }

.flickity-prev-next-button:hover {
  background: white; }

.flickity-prev-next-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #09F; }

.flickity-prev-next-button:active {
  opacity: 0.6; }

.flickity-prev-next-button.previous {
  left: 10px; }

.flickity-prev-next-button.next {
  right: 10px; }

/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px; }

.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px; }

.flickity-prev-next-button:disabled {
  opacity: 0.3;
  cursor: auto; }

.flickity-prev-next-button svg {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%; }

.flickity-prev-next-button .arrow {
  fill: #333; }

/* ---- page dots ---- */
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1; }

.flickity-rtl .flickity-page-dots {
  direction: rtl; }

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer; }

.flickity-page-dots .dot.is-selected {
  opacity: 1; }

/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */
/*
	Styles for basic PhotoSwipe functionality (sliding area, open/close transitions)
*/
/* pswp = photoswipe */
.pswp {
  display: none;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  overflow: hidden;
  -ms-touch-action: none;
  touch-action: none;
  z-index: 1500;
  -webkit-text-size-adjust: 100%;
  /* create separate layer, to avoid paint on window.onscroll in webkit/blink */
  -webkit-backface-visibility: hidden;
  outline: none; }
  .pswp * {
    box-sizing: border-box; }
  .pswp img {
    max-width: none; }

/* style is added when JS option showHideOpacity is set to true */
.pswp--animate_opacity {
  /* 0.001, because opacity:0 doesn't trigger Paint action, which causes lag at start of transition */
  opacity: 0.001;
  will-change: opacity;
  /* for open/close transition */
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }

.pswp--open {
  display: block; }

.pswp--zoom-allowed .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in; }

.pswp--zoomed-in .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: grab; }

.pswp--dragging .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: grabbing; }

/*
	Background is added as a separate element.
	As animating opacity is much faster than animating rgba() background-color.
*/
.pswp__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0;
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  will-change: opacity; }

.pswp__scroll-wrap {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden; }

.pswp__container,
.pswp__zoom-wrap {
  -ms-touch-action: none;
  touch-action: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0; }

/* Prevent selection and tap highlights */
.pswp__container,
.pswp__img {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-touch-callout: none; }

.pswp__zoom-wrap {
  position: absolute;
  width: 100%;
  -webkit-transform-origin: left top;
  -moz-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  /* for open/close transition */
  transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1); }

.pswp__bg {
  will-change: opacity;
  /* for open/close transition */
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }

.pswp--animated-in .pswp__bg,
.pswp--animated-in .pswp__zoom-wrap {
  -webkit-transition: none;
  transition: none; }

.pswp__container,
.pswp__zoom-wrap {
  -webkit-backface-visibility: hidden; }

.pswp__item {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  overflow: hidden; }

.pswp__img {
  position: absolute;
  width: auto;
  height: auto;
  top: 0;
  left: 0; }

/*
	stretched thumbnail or div placeholder element (see below)
	style is added to avoid flickering in webkit/blink when layers overlap
*/
.pswp__img--placeholder {
  -webkit-backface-visibility: hidden; }

/*
	div element that matches size of large image
	large image loads on top of it
*/
.pswp__img--placeholder--blank {
  background: #222; }

.pswp--ie .pswp__img {
  width: 100% !important;
  height: auto !important;
  left: 0;
  top: 0; }

/*
	Error message appears when image is not loaded
	(JS option errorMsg controls markup)
*/
.pswp__error-msg {
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  text-align: center;
  font-size: 14px;
  line-height: 16px;
  margin-top: -8px;
  color: #CCC; }

.pswp__error-msg a {
  color: #CCC;
  text-decoration: underline; }

/*! PhotoSwipe Default UI CSS by Dmitry Semenov | photoswipe.com | MIT license */
/*

	Contents:

	1. Buttons
	2. Share modal and links
	3. Index indicator ("1 of X" counter)
	4. Caption
	5. Loading indicator
	6. Additional styles (root element, top bar, idle state, hidden state, etc.)

*/
/*
	
	1. Buttons

 */
/* <button> css reset */
.pswp__button {
  width: 44px;
  height: 44px;
  position: relative;
  background: none;
  cursor: pointer;
  overflow: visible;
  -webkit-appearance: none;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
  float: right;
  opacity: 0.75;
  transition: opacity 0.2s;
  box-shadow: none; }
  .pswp__button:focus, .pswp__button:hover {
    opacity: 1; }
  .pswp__button:active {
    outline: none;
    opacity: 0.9; }
  .pswp__button::-moz-focus-inner {
    padding: 0;
    border: 0; }

/* pswp__ui--over-close class it added when mouse is over element that should close gallery */
.pswp__ui--over-close .pswp__button--close {
  opacity: 1; }

.pswp__button,
.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  background: url(../img/default-skin.png) 0 0 no-repeat;
  background-size: 264px 88px;
  width: 44px;
  height: 44px; }

@media (-webkit-min-device-pixel-ratio: 1.1), (min-resolution: 105dpi), (min-resolution: 1.1dppx) {
  /* Serve SVG sprite if browser supports SVG and resolution is more than 105dpi */
  .pswp--svg .pswp__button,
  .pswp--svg .pswp__button--arrow--left:before,
  .pswp--svg .pswp__button--arrow--right:before {
    background-image: url(../img/default-skin.svg); }
  .pswp--svg .pswp__button--arrow--left,
  .pswp--svg .pswp__button--arrow--right {
    background: none; } }

.pswp__button--close {
  background-position: 0 -44px; }

.pswp__button--share {
  background-position: -44px -44px; }

.pswp__button--fs {
  display: none; }

.pswp--supports-fs .pswp__button--fs {
  display: block; }

.pswp--fs .pswp__button--fs {
  background-position: -44px 0; }

.pswp__button--zoom {
  display: none;
  background-position: -88px 0; }

.pswp--zoom-allowed .pswp__button--zoom {
  display: block; }

.pswp--zoomed-in .pswp__button--zoom {
  background-position: -132px 0; }

/* no arrows on touch screens */
.pswp--touch .pswp__button--arrow--left,
.pswp--touch .pswp__button--arrow--right {
  visibility: hidden; }

/*
	Arrow buttons hit area
	(icon is added to :before pseudo-element)
*/
.pswp__button--arrow--left,
.pswp__button--arrow--right {
  background: none;
  top: 50%;
  margin-top: -50px;
  width: 70px;
  height: 100px;
  position: absolute; }

.pswp__button--arrow--left {
  left: 0; }

.pswp__button--arrow--right {
  right: 0; }

.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  content: '';
  top: 35px;
  background-color: rgba(0, 0, 0, 0.3);
  height: 30px;
  width: 32px;
  position: absolute; }

.pswp__button--arrow--left:before {
  left: 6px;
  background-position: -138px -44px; }

.pswp__button--arrow--right:before {
  right: 6px;
  background-position: -94px -44px; }

/*

	2. Share modal/popup and links

 */
.pswp__counter,
.pswp__share-modal {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none; }

.pswp__share-modal {
  display: block;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  padding: 10px;
  position: absolute;
  z-index: 1600;
  opacity: 0;
  transition: opacity 0.25s ease-out;
  -webkit-backface-visibility: hidden;
  will-change: opacity; }

.pswp__share-modal--hidden {
  display: none; }

.pswp__share-tooltip {
  z-index: 1620;
  position: absolute;
  background: #FFF;
  top: 56px;
  border-radius: 2px;
  display: block;
  width: auto;
  right: 44px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25);
  transform: translateY(6px);
  transition: transform 0.25s;
  -webkit-backface-visibility: hidden;
  will-change: transform; }
  .pswp__share-tooltip a {
    display: block;
    padding: 8px 12px;
    color: #000;
    text-decoration: none;
    font-size: 14px;
    line-height: 18px; }
    .pswp__share-tooltip a:hover {
      text-decoration: none;
      color: #000; }
    .pswp__share-tooltip a:first-child {
      /* round corners on the first/last list item */
      border-radius: 2px 2px 0 0; }
    .pswp__share-tooltip a:last-child {
      border-radius: 0 0 2px 2px; }

.pswp__share-modal--fade-in {
  opacity: 1; }
  .pswp__share-modal--fade-in .pswp__share-tooltip {
    transform: translateY(0); }

/* increase size of share links on touch devices */
.pswp--touch .pswp__share-tooltip a {
  padding: 16px 12px; }

a.pswp__share--facebook:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  top: -12px;
  right: 15px;
  border: 6px solid rgba(0, 0, 0, 0);
  border-bottom-color: #FFF;
  -webkit-pointer-events: none;
  -moz-pointer-events: none;
  pointer-events: none; }

a.pswp__share--facebook:hover {
  background: #3E5C9A;
  color: #FFF; }
  a.pswp__share--facebook:hover:before {
    border-bottom-color: #3E5C9A; }

a.pswp__share--twitter:hover {
  background: #55ACEE;
  color: #FFF; }

a.pswp__share--pinterest:hover {
  background: #CCC;
  color: #CE272D; }

a.pswp__share--download:hover {
  background: #DDD; }

/*

	3. Index indicator ("1 of X" counter)

 */
.pswp__counter {
  position: absolute;
  left: 0;
  top: 0;
  height: 44px;
  font-size: 13px;
  line-height: 44px;
  color: #FFF;
  opacity: 0.75;
  padding: 0 10px; }

/*
	
	4. Caption

 */
.pswp__caption {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  min-height: 44px; }
  .pswp__caption small {
    font-size: 11px;
    color: #BBB; }

.pswp__caption__center {
  text-align: left;
  max-width: 420px;
  margin: 0 auto;
  font-size: 13px;
  padding: 10px;
  line-height: 20px;
  color: #CCC; }

.pswp__caption--empty {
  display: none; }

/* Fake caption element, used to calculate height of next/prev image */
.pswp__caption--fake {
  visibility: hidden; }

/*

	5. Loading indicator (preloader)

	You can play with it here - http://codepen.io/dimsemenov/pen/yyBWoR

 */
.pswp__preloader {
  width: 44px;
  height: 44px;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -22px;
  opacity: 0;
  transition: opacity 0.25s ease-out;
  will-change: opacity;
  direction: ltr; }

.pswp__preloader__icn {
  width: 20px;
  height: 20px;
  margin: 12px; }

.pswp__preloader--active {
  opacity: 1; }
  .pswp__preloader--active .pswp__preloader__icn {
    /* We use .gif in browsers that don't support CSS animation */
    background: url(../img/preloader.gif) 0 0 no-repeat; }

.pswp--css_animation .pswp__preloader--active {
  opacity: 1; }
  .pswp--css_animation .pswp__preloader--active .pswp__preloader__icn {
    animation: clockwise 500ms linear infinite; }
  .pswp--css_animation .pswp__preloader--active .pswp__preloader__donut {
    animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite; }

.pswp--css_animation .pswp__preloader__icn {
  background: none;
  opacity: 0.75;
  width: 14px;
  height: 14px;
  position: absolute;
  left: 15px;
  top: 15px;
  margin: 0; }

.pswp--css_animation .pswp__preloader__cut {
  /* 
			The idea of animating inner circle is based on Polymer ("material") loading indicator 
			 by Keanu Lee https://blog.keanulee.com/2014/10/20/the-tale-of-three-spinners.html
		*/
  position: relative;
  width: 7px;
  height: 14px;
  overflow: hidden; }

.pswp--css_animation .pswp__preloader__donut {
  box-sizing: border-box;
  width: 14px;
  height: 14px;
  border: 2px solid #FFF;
  border-radius: 50%;
  border-left-color: transparent;
  border-bottom-color: transparent;
  position: absolute;
  top: 0;
  left: 0;
  background: none;
  margin: 0; }

@media screen and (max-width: 1024px) {
  .pswp__preloader {
    position: relative;
    left: auto;
    top: auto;
    margin: 0;
    float: right; } }

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

@keyframes donut-rotate {
  0% {
    transform: rotate(0); }
  50% {
    transform: rotate(-140deg); }
  100% {
    transform: rotate(0); } }

/*
	
	6. Additional styles

 */
/* root element of UI */
.pswp__ui {
  -webkit-font-smoothing: auto;
  visibility: visible;
  opacity: 1;
  z-index: 1550; }

/* top black bar with buttons and "1 of X" indicator */
.pswp__top-bar {
  position: absolute;
  left: 0;
  top: 0;
  height: 44px;
  width: 100%; }

.pswp__caption,
.pswp__top-bar,
.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right {
  -webkit-backface-visibility: hidden;
  will-change: opacity;
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }

/* pswp--has_mouse class is added only when two subsequent mousemove events occur */
.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right {
  visibility: visible; }

.pswp__top-bar,
.pswp__caption {
  background-color: rgba(0, 0, 0, 0.5); }

/* pswp__ui--fit class is added when main image "fits" between top bar and bottom bar (caption) */
.pswp__ui--fit .pswp__top-bar,
.pswp__ui--fit .pswp__caption {
  background-color: rgba(0, 0, 0, 0.3); }

/* pswp__ui--idle class is added when mouse isn't moving for several seconds (JS option timeToIdle) */
.pswp__ui--idle .pswp__top-bar {
  opacity: 0; }

.pswp__ui--idle .pswp__button--arrow--left,
.pswp__ui--idle .pswp__button--arrow--right {
  opacity: 0; }

/*
	pswp__ui--hidden class is added when controls are hidden
	e.g. when user taps to toggle visibility of controls
*/
.pswp__ui--hidden .pswp__top-bar,
.pswp__ui--hidden .pswp__caption,
.pswp__ui--hidden .pswp__button--arrow--left,
.pswp__ui--hidden .pswp__button--arrow--right {
  /* Force paint & create composition layer for controls. */
  opacity: 0.001; }

/* pswp__ui--one-slide class is added when there is just one item in gallery */
.pswp__ui--one-slide .pswp__button--arrow--left,
.pswp__ui--one-slide .pswp__button--arrow--right,
.pswp__ui--one-slide .pswp__counter {
  display: none; }

.pswp__element--disabled {
  display: none !important; }

.pswp--minimal--dark .pswp__top-bar {
  background: none; }

/*----------  Media Queries  ----------*/
/*----------  Layout  ----------*/
/**
 *
 * Add responsive padding / margins to an element
 * usage:
 *   @include layout-spacing(margin-top);
 * or
 *   @include layout-spacing((margin-top, padding-bottom));
 *
 */
/*----------  Responsive Product Grids  ----------*/
/*----------  Maintain Aspect Ratio  ----------*/
/*----------  Utils  ----------*/
/*----------  Text styles  ----------*/
/*----------  Headings  ----------*/
/*----------  Buttons  ----------*/
/*---------- Images ----------*/
.sr-only, .required-text, .account-wishlist .account-sub-heading, .form-field-swatch .form-label-text, .form-field-swatch .shipping-calculator .form-field-radio span, .shipping-calculator .form-field-radio .form-field-swatch span, .form-input.form-checkbox, .modal-leave-review .form-checkbox.product-item-rating, .form-input.form-radio, .modal-leave-review .form-radio.product-item-rating, .compare-checkbox {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.button-navigation-toggle, .carousel-nav-item, .modal-content .modal-close, .main-navigation-breadcrumb, .compare-grid-item-remove, .compare-widget-toggle, .compare-widget-cancel, .compare-widget-remove-all, .compare-widget-item-remove, .catalog-util-bar .util-panel-close, .catalog-util-bar .dropdown-toggle, .share-dropdown-toggle, .cart-item-giftwrap-control, .cart-action-minor, .show-calculator, .shipping-quote-submit .button-cancel, .cart-item-edit-button {
  padding: 0;
  font-family: inherit;
  background: transparent;
  border: 0;
  border-radius: 0; }

html {
  -webkit-font-smoothing: antialiased; }

.search-tabs .tab-title, .single-product-info-links, .form-field-title, .site-header-utils, .footer-address-heading, .breadcrumbs, .link-list-title, .mini-cart-subtotal-title, .main-navigation-panel-title, .newsletter-heading, .compare-grid-item-label, .content-result-type, .compare-widget-toggle, .compare-widget-cancel, .compare-widget-cta, .compare-widget-item-remove, .product-badge, .catalog-util-label, .cart-item-price-label, .cart-total-label, .cart-action-minor {
  font-family: "Typo Grotesk Regular";
  font-size: 0.75rem;
  letter-spacing: 2px;
  text-transform: uppercase; }

.user-content h1 {
  font-family: "Typo Grotesk Regular";
  font-size: 3rem;
  line-height: 1.2em;
  color: #333333; }

.user-content h2, .product-title {
  font-family: "Typo Grotesk Regular";
  font-size: 2.25rem;
  line-height: 1.4em;
  color: #333333; }

.user-content h3 {
  font-family: "Typo Grotesk Regular";
  font-size: 2rem;
  line-height: 1.4em;
  color: #333333; }

.user-content h4, .review-form-title {
  font-family: "Typo Grotesk Regular";
  font-size: 1.5rem;
  line-height: 1.4em;
  color: #333333; }

.user-content h5 {
  font-family: "Typo Grotesk Regular";
  font-size: 1rem;
  line-height: 1.4em;
  color: #333333; }

.user-content h6 {
  font-family: "Typo Grotesk Regular";
  line-height: 1.4em;
  color: #333333; }

.blog-item-readmore, .content-result-read-more, .product-description-read-more, .cart-item-giftwrap-control, .giftwrap-image, .cart-action-minor, .show-calculator, .shipping-quote-submit .button-cancel, .cart-item-edit-button {
  color: #2d2d2d;
  text-transform: uppercase;
  letter-spacing: 2px;
  transition: opacity 0.2s ease; }
  .blog-item-readmore:hover, .content-result-read-more:hover, .product-description-read-more:hover, .cart-item-giftwrap-control:hover, .giftwrap-image:hover, .cart-action-minor:hover, .show-calculator:hover, .shipping-quote-submit .button-cancel:hover, .cart-item-edit-button:hover {
    opacity: 0.7; }

.cart-item-options, .cart-item-giftwrap-type,
.cart-item-giftwrap-message {
  font-family: "Raleway";
  color: rgba(51, 51, 51, 0.5); }

.button-progress .complete-text .checkmark, .facet-control-hierarchy .checkmark,
.facet-control-multi .checkmark, .compare-checkbox-label .checkmark {
  transition: stroke-dashoffset 0.4s ease-in-out;
  stroke-dasharray: 50 50;
  stroke-dashoffset: 50; }

.button-progress.will-complete .checkmark, .facet-control-hierarchy .active .checkmark,
.facet-control-multi .active .checkmark, .compare-checkbox:checked ~ .compare-checkbox-label .checkmark {
  stroke-dashoffset: 0; }

input[type=checkbox] + .form-label-text::before, .shipping-calculator .form-field-radio input[type=checkbox] + span::before, .facet-control-hierarchy .checkbox-box,
.facet-control-multi .checkbox-box, .compare-checkbox-label .compare-checkbox-box {
  display: inline-block;
  width: 1.125rem;
  height: 1.125rem;
  border: 1px solid #dfdfdf;
  transition: all 0.2s ease-out 0.4s; }

input[type=checkbox]:checked + .form-label-text::before, .shipping-calculator .form-field-radio input[type=checkbox]:checked + span::before, .facet-control-hierarchy .active .checkbox-box,
.facet-control-multi .active .checkbox-box, .compare-checkbox:checked ~ .compare-checkbox-label .compare-checkbox-box {
  background-color: #2d2d2d;
  border-color: transparent;
  transition: all 0.2s ease-out; }

.site-main-sidebar .site-utils-small::before {
  display: block;
  width: calc(100% - 2.5rem);
  height: 0.0625rem;
  margin: 0 auto;
  background-color: rgba(255, 255, 255, 0.3);
  content: ""; }
  @media screen and (min-width: 33.75em) {
    .site-main-sidebar .site-utils-small::before {
      margin-left: 1rem;
      width: 4.6875rem;
      background-color: #dfdfdf; } }
  @media screen and (min-width: 33.75em) and (min-width: 48em) {
    .site-main-sidebar .site-utils-small::before {
      margin-left: 1.5rem; } }
  @media screen and (min-width: 33.75em) and (min-width: 64em) {
    .site-main-sidebar .site-utils-small::before {
      margin-left: 2.5rem; } }

.search-tabs .tab-title, .single-product-info-links {
  display: block;
  max-height: 3.75rem;
  line-height: 3.75rem;
  color: rgba(51, 51, 51, 0.5);
  background: whitesmoke; }
  .search-tabs .tab-title:hover, .single-product-info-links:hover {
    color: #2d2d2d; }
  .search-tabs .active.tab-title, .active.single-product-info-links {
    color: #fff;
    background: #2d2d2d; }

.form-field-control:before, .account-wrapper:before, .account-form-column-container:before, .account-item-details:before, .account-receipt-summaries:before, .account-downloads-gallery-thumbs:before, .account-invoice-addresses:before, .account-settings-form:before, .account-create-details:before,
.account-create-address:before, .form-field-control:after, .account-wrapper:after, .account-form-column-container:after, .account-item-details:after, .account-receipt-summaries:after, .account-downloads-gallery-thumbs:after, .account-invoice-addresses:after, .account-settings-form:after, .account-create-details:after,
.account-create-address:after {
  content: " ";
  display: table; }

.form-field-control:after, .account-wrapper:after, .account-form-column-container:after, .account-item-details:after, .account-receipt-summaries:after, .account-downloads-gallery-thumbs:after, .account-invoice-addresses:after, .account-settings-form:after, .account-create-details:after,
.account-create-address:after {
  clear: both; }

.site-alerts {
  position: fixed;
  bottom: 0;
  z-index: 14;
  width: 100%; }

.alert {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 3.125rem;
  padding: 0.5rem 2rem;
  color: #fff;
  box-shadow: 0 0 0 1px #fff;
  transition: opacity 0.3s ease; }
  .alert.dismissed {
    opacity: 0; }
  .alert.hidden, .alert.alert-dynamic {
    display: none; }
  .alert.animating, .alert.visible {
    display: block; }
  .alert.animating-in, .alert.animating-out {
    opacity: 0;
    transition: opacity 0.3s ease; }
  .alert.visible {
    opacity: 1;
    transform: translateX(0); }
  .alert .alert-dismiss {
    position: absolute;
    top: 50%;
    right: 1rem;
    width: 0.75rem;
    height: 0.75rem;
    margin-top: -0.375rem;
    line-height: 0;
    color: transparent;
    cursor: pointer; }
    .alert .alert-dismiss:hover {
      opacity: 1; }
  .alert.alert-success, .alert.success {
    background-color: #4fb7d7; }
    .alert.alert-success .alert-dismiss, .alert.success .alert-dismiss {
      color: #24809c; }
  .alert.alert-error, .alert.error {
    background-color: #da3d00; }
    .alert.alert-error .alert-dismiss, .alert.error .alert-dismiss {
      color: #411200; }
  .alert.alert-info, .alert.neutral {
    background-color: #989898; }
    .alert.alert-info .alert-dismiss, .alert.neutral .alert-dismiss {
      color: #4c4c4c; }
  .alert a:not(.alert-dismiss) {
    color: #fff;
    text-decoration: underline; }
    .alert a:not(.alert-dismiss):hover {
      text-decoration: none; }
  .alert.out-of-stock-alert {
    margin-top: 2rem; }

html {
  height: 100%;
  box-sizing: border-box; }

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

body {
  position: relative;
  overflow-x: hidden;
  font-family: "Typo Grotesk Regular";
  font-size: 1rem;
  line-height: 1.4em;
  color: #333333;
  background-color: white; }

a {
  color: inherit;
  text-decoration: none;
  transition: opacity 0.2s ease; }
  a:hover {
    opacity: 0.7; }
  .user-content a {
    color: #2d2d2d; }

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

ul {
  padding-left: 0;
  margin: 0;
  list-style-type: none; }

.is-hidden {
  display: none; }

.scroll-locked {
  height: 100%;
  overflow: hidden; }
  .scroll-locked.page-category {
    overflow: auto; }

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.4em; }
  h1 a,
  h2 a,
  h3 a,
  h4 a,
  h5 a,
  h6 a {
    color: inherit; }

.user-content h1,
.user-content h2,
.user-content h3,
.user-content h4,
.user-content h5,
.user-content h6 {
  margin-bottom: 0.5em; }
  .user-content h1:first-child,
  .user-content h2:first-child,
  .user-content h3:first-child,
  .user-content h4:first-child,
  .user-content h5:first-child,
  .user-content h6:first-child {
    margin-top: 0; }
  .user-content h1:last-child,
  .user-content h2:last-child,
  .user-content h3:last-child,
  .user-content h4:last-child,
  .user-content h5:last-child,
  .user-content h6:last-child {
    margin-bottom: 0; }

.user-content ul {
  padding-left: 2.5rem;
  margin: 1rem 0;
  list-style-type: disc; }

.ratio-16-9 {
  width: 100%;
  padding-bottom: 56.25%; }

.ratio-4-3 {
  width: 100%;
  padding-bottom: 75%; }

.ratio-1-1 {
  width: 100%;
  padding-bottom: 100%; }

.ratio-3-4 {
  width: 100%;
  padding-bottom: 133.33333%; }

.ratio-10-2 {
  width: 100%;
  padding-bottom: 20%; }

.ratio-10-4 {
  width: 100%;
  padding-bottom: 40%; }

.button, .product__quote-form ._submit,
.product__request-virtual-form ._submit {
  font-family: "Typo Grotesk Regular";
  font-size: 0.75rem;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 0;
  font-family: inherit;
  background: transparent;
  border: 0;
  border-radius: 0;
  position: relative;
  display: inline-block;
  height: 3.5rem;
  min-width: 16.875rem;
  padding-right: 1.5em;
  padding-left: 1.5em;
  overflow: hidden;
  font-size: 1rem;
  line-height: 3.5rem;
  text-align: center;
  transition: all 0.2s ease-out; }
  @media screen and (max-width: 33.6875em) {
    .button, .product__quote-form ._submit,
    .product__request-virtual-form ._submit {
      font-size: 0.875rem; } }
  .button:hover, .product__quote-form ._submit:hover,
  .product__request-virtual-form ._submit:hover {
    opacity: 1; }
  .button:active::before, .product__quote-form ._submit:active::before,
  .product__request-virtual-form ._submit:active::before {
    opacity: 0.1;
    transform: scale(0, 0);
    transition-duration: 0s; }
  .button:disabled, .product__quote-form ._submit:disabled,
  .product__request-virtual-form ._submit:disabled, .button.button-disabled, .product__quote-form .button-disabled._submit,
  .product__request-virtual-form .button-disabled._submit {
    cursor: not-allowed;
    opacity: 0.8; }
  .button::before, .product__quote-form ._submit::before,
  .product__request-virtual-form ._submit::before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    pointer-events: none;
    background-image: radial-gradient(circle, #000 10%, transparent 10.01%);
    background-position: 50%;
    background-repeat: no-repeat;
    content: "";
    opacity: 0;
    transform: scale(10, 10);
    transition: transform 0.2s, opacity 0.4s; }
  .button-x-small {
    height: 2.5rem;
    font-size: 0.875rem;
    line-height: 2.5rem; }
  .button-small, .account-forgot-form .account-button-primary, .compare-wishlist .button-secondary, .compare-wishlist .account-button-secondary, .compare-wishlist [data-payment-method-form] .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .compare-wishlist .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist [data-payment-method-form] .product__quote-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .product__quote-form .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist .product__quote-form [data-payment-method-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__quote-form [data-payment-method-form] .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
  .compare-wishlist [data-payment-method-form] .product__request-virtual-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .product__request-virtual-form .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist .product__request-virtual-form [data-payment-method-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__request-virtual-form [data-payment-method-form] .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
  .compare-wishlist [data-address-form] .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .compare-wishlist .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist [data-address-form] .product__quote-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .product__quote-form .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist .product__quote-form [data-address-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__quote-form [data-address-form] .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
  .compare-wishlist [data-address-form] .product__request-virtual-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .product__request-virtual-form .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist .product__request-virtual-form [data-address-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__request-virtual-form [data-address-form] .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .giftcard-balance-container .button-primary, .giftcard-balance-container .account-button-primary, .giftcard-balance-container .button-contact-submit, .giftcard-balance-container .product__quote-form ._submit, .product__quote-form .giftcard-balance-container ._submit,
  .giftcard-balance-container .product__request-virtual-form ._submit, .product__request-virtual-form .giftcard-balance-container ._submit {
    height: 3rem;
    min-width: 14.375rem;
    line-height: 3rem; }
  .button-primary, .account-button-primary, .button-contact-submit, .product__quote-form ._submit,
  .product__request-virtual-form ._submit {
    color: white;
    background-color: #2d2d2d; }
    .button-primary:hover, .account-button-primary:hover, .button-contact-submit:hover, .product__quote-form ._submit:hover,
    .product__request-virtual-form ._submit:hover {
      background-color: #242424; }
  .button-secondary, .account-button-secondary, [data-payment-method-form] .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .product__quote-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__quote-form [data-payment-method-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
  [data-payment-method-form] .product__request-virtual-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__request-virtual-form [data-payment-method-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
  [data-address-form] .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .product__quote-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__quote-form [data-address-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
  [data-address-form] .product__request-virtual-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__request-virtual-form [data-address-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit) {
    color: #2d2d2d;
    border: 1px solid #2d2d2d;
    background-color: transparent; }
    .button-secondary:hover, .account-button-secondary:hover, [data-payment-method-form] .button:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .product__quote-form ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__quote-form [data-payment-method-form] ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
    [data-payment-method-form] .product__request-virtual-form ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__request-virtual-form [data-payment-method-form] ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
    [data-address-form] .button:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .product__quote-form ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__quote-form [data-address-form] ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
    [data-address-form] .product__request-virtual-form ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__request-virtual-form [data-address-form] ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit) {
      color: white;
      background-color: #2d2d2d; }
  @media screen and (min-width: 48em) {
    .button + .button, .product__quote-form ._submit + .button, .product__request-virtual-form ._submit + .button, .product__quote-form .button + ._submit, .product__quote-form ._submit + ._submit,
    .product__request-virtual-form .button + ._submit,
    .product__request-virtual-form ._submit + ._submit {
      margin-left: 1.25em; } }

.button-progress {
  position: relative; }
  .button-progress.in-progress .button-text {
    visibility: hidden; }
  .button-progress .complete-text {
    position: absolute;
    left: 0;
    display: inline-block;
    width: 100%;
    height: 100%;
    vertical-align: middle;
    visibility: hidden; }
    .button-progress .complete-text span {
      margin: auto; }
  .button-progress.will-complete .complete-text {
    visibility: visible; }
  .button-progress.will-complete .checkmark {
    transition-delay: 0.5s; }

.overlay-button {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%; }

.spinner {
  width: 1rem;
  height: 1rem;
  color: inherit;
  pointer-events: none;
  border: 2px solid;
  border-bottom-color: transparent;
  border-radius: 50%;
  animation: 0.8s loader linear infinite; }

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

.form-field-control {
  display: block; }

.form-inline-message {
  display: inline-block;
  margin-top: 1rem;
  color: #da3d00; }
  .search-form .form-inline-message {
    position: absolute;
    margin-top: 0.5rem; }

.form-inline {
  display: flex; }
  .form-inline .form-input, .form-inline .modal-leave-review .product-item-rating, .modal-leave-review .form-inline .product-item-rating {
    margin-right: 1.5rem; }
  .form-inline .button, .form-inline .product__quote-form ._submit, .product__quote-form .form-inline ._submit,
  .form-inline .product__request-virtual-form ._submit, .product__request-virtual-form .form-inline ._submit {
    flex: 0 0 auto; }

.form-input, .modal-leave-review .product-item-rating {
  width: 100%;
  height: 3rem;
  padding: 0.75rem 1rem;
  font-family: "Raleway";
  background: transparent;
  border: 1px solid #dfdfdf;
  border-radius: 0;
  box-shadow: none;
  -webkit-appearance: none; }
  .form-input::placeholder, .modal-leave-review .product-item-rating::placeholder {
    color: rgba(51, 51, 51, 0.5); }
  .form-input:focus, .modal-leave-review .product-item-rating:focus {
    background: whitesmoke;
    outline: none; }
  .form-input.form-file, .modal-leave-review .form-file.product-item-rating {
    display: flex;
    flex: 0 0 1; }
  .form-inline .form-input, .form-inline .modal-leave-review .product-item-rating, .modal-leave-review .form-inline .product-item-rating {
    display: inline-block;
    vertical-align: middle; }

textarea {
  height: auto !important; }

.form-fieldset {
  padding: 0;
  margin: 0;
  border: 0; }

.form-label {
  display: block;
  padding-bottom: 0.75rem;
  color: rgba(51, 51, 51, 0.5); }
  .product-options .form-label {
    min-width: 7.8125rem; }

.form-field-title {
  display: inline-block;
  margin-bottom: 0.5rem;
  color: rgba(51, 51, 51, 0.5); }
  .form-required .form-field-title::after {
    color: #da3d00;
    content: "*"; }

.form-label-text, .shipping-calculator .form-field-radio span {
  position: relative; }

input[type=checkbox] + .form-label-text::before, .shipping-calculator .form-field-radio input[type=checkbox] + span::before {
  position: absolute;
  top: 50%;
  left: 0;
  content: "";
  transform: translateY(-50%); }

input[type=checkbox]:checked + .form-label-text::before, .shipping-calculator .form-field-radio input[type=checkbox]:checked + span::before {
  color: #fff;
  text-align: center;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='7' viewBox='0 0 16 16'%3E%3Cpath class='checkmark' fill='none' stroke='%23fff' stroke-width='2' stroke-miterlimit='10' d='M1 8l5 6 9-11'/%3E%3C/svg%3E");
  background-position: center center;
  background-repeat: no-repeat;
  content: ""; }

.shipping-calculator .form-field-radio span {
  position: relative; }

input[type=radio] + .form-label-text::before, .shipping-calculator .form-field-radio input[type=radio] + span::before,
input[type=radio] + span::before {
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  width: 1.125rem;
  height: 1.125rem;
  border: 1px solid #dfdfdf;
  border-radius: 50%;
  content: "";
  transform: translateY(-50%); }

input[type=radio]:checked + .form-label-text::before, .shipping-calculator .form-field-radio input[type=radio]:checked + span::before,
input[type=radio]:checked + span::before {
  background-color: #2d2d2d;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='16' width='16'%3E%3Ccircle cx='8' cy='8' r='4' fill='%23fff' /%3E%3C/svg%3E ");
  background-position: 50% center;
  background-repeat: no-repeat;
  border: 1px solid #2d2d2d;
  content: ""; }

.form-select-wrapper {
  position: relative;
  display: block;
  cursor: pointer; }
  .form-select-wrapper::after {
    position: absolute;
    top: calc(50% - 0.25rem);
    right: 0.5rem;
    width: 0.625rem;
    height: 0.625rem;
    pointer-events: none;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg width='18' height='18' viewBox='0 0 18 18' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath id='a' d='M12 8l-3 3-3-3h6z' fill='rgba(51, 51, 51, 0.5)' /%3E%3C/svg%3E");
    background-position: 50% center;
    background-repeat: no-repeat;
    content: ""; }
  .form-select-wrapper .form-select {
    width: 100%;
    background: transparent;
    -moz-appearance: none; }
    .form-select-wrapper .form-select:hover {
      border-color: rgba(51, 51, 51, 0.5); }
    .form-select-wrapper .form-select option {
      color: #000; }

.form-selected-text {
  display: inline-block;
  padding: 0.625rem 0;
  vertical-align: middle; }

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

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

.loading-overlay {
  position: absolute;
  z-index: 12;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  background-color: rgba(255, 255, 255, 0.8); }
  body > .loading-overlay {
    position: fixed; }

.loading,
.loading:after {
  border-radius: 50%;
  width: 4em;
  height: 4em; }

.loading {
  position: relative;
  margin: auto;
  font-size: 10px;
  text-indent: -9999em;
  border-top: 0.6em solid rgba(45, 45, 45, 0.2);
  border-right: 0.6em solid rgba(45, 45, 45, 0.2);
  border-bottom: 0.6em solid rgba(45, 45, 45, 0.2);
  border-left: 0.6em solid #2d2d2d;
  transform: translateZ(0);
  animation: loading 0.8s infinite linear; }

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

.site-main {
  display: flex;
  margin-top: calc(7.5rem + 0.9375rem);
  overflow: hidden; }
  @media (max-width: 1023px) {
    .site-main {
      display: block;
      margin-top: 0;
      overflow: visible; } }

.site-main-content {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
  padding-bottom: 1rem;
  margin-top: 10px;
  width: 100%;
  overflow-x: hidden; }
  @media screen and (min-width: 48em) {
    .site-main-content {
      padding-right: 1.5rem;
      padding-left: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .site-main-content {
      padding-right: 2.5rem;
      padding-left: 2.5rem; } }
  @media screen and (min-width: 48em) {
    .site-main-content {
      padding-bottom: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .site-main-content {
      padding-bottom: 2.5rem; } }
  .page-account_addressbook .site-main-content {
    overflow-x: hidden; }
  @media only screen and (max-width: 539px) {
    .site-main-content {
      margin-top: 10px; } }
  @media only screen and (min-width: 1024px) {
    .site-main-content {
      margin-top: 0; } }

main.site-main-content > .breadcrumbs {
  margin: 0; }

.page-content {
  max-width: 48.5rem;
  margin-right: auto;
  margin-left: auto;
  font-family: "Raleway"; }

@media screen and (max-width: 33.6875em) {
  .sidebar-is-visible .site-main-sidebar {
    display: block !important;
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    z-index: 9999; } }

.site-main-sidebar {
  flex: 0 0 auto;
  width: 17.5rem;
  min-height: 100vh;
  overflow: hidden;
  display: block; }
  @media (max-width: 1023px) {
    .site-main-sidebar {
      display: none;
      position: fixed;
      top: calc(7.5rem + 0.9375rem);
      left: 0;
      z-index: 9999;
      width: 80%;
      height: calc(100vh - (7.5rem + 0.9375rem));
      background-color: #fff;
      overflow: hidden;
      transition: top 0.3s ease; } }
  .site-main-sidebar .site-utils-small {
    color: #fff; }
    @media screen and (min-width: 48em) {
      .site-main-sidebar .site-utils-small {
        display: none; } }
    .site-main-sidebar .site-utils-small .main-navigation-container {
      padding-top: 3.125rem; }

.site-main-sidebar-inner {
  width: 100%;
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
  background-color: #ececec; }
  @media (min-width: 1025px) {
    .site-main-sidebar-inner {
      position: fixed;
      top: 7.5rem;
      left: 0;
      width: 17.5rem;
      height: calc(100vh - 7.5rem);
      border-right: 1px solid #dfdfdf;
      z-index: 1000; } }

.ss__theme.ss__sidebar {
  margin: 0 0 40px 0 !important;
  padding: 20px 40px !important; }
  @media screen and (max-width: 33.6875em) {
    .ss__theme.ss__sidebar {
      padding: 1rem !important; } }

.site-main-sidebar,
.site-main-sidebar-inner,
.site-main-sidebar * {
  color: black !important; }

.iframe-container {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  height: 0; }

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

.container {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  @media screen and (min-width: 48em) {
    .container {
      padding-right: 1.5rem;
      padding-left: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .container {
      padding-right: 2.5rem;
      padding-left: 2.5rem; } }

.grid-container {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.5rem;
  margin-left: -0.5rem; }
  @media screen and (min-width: 48em) {
    .grid-container {
      margin-right: -0.75rem;
      margin-left: -0.75rem; } }
  @media screen and (min-width: 64em) {
    .grid-container {
      margin-right: -1.25rem;
      margin-left: -1.25rem; } }

.grid-item {
  flex: 0 1 auto;
  margin-right: 0.5rem;
  margin-left: 0.5rem; }
  @media screen and (min-width: 48em) {
    .grid-item {
      margin-right: 0.75rem;
      margin-left: 0.75rem; } }
  @media screen and (min-width: 64em) {
    .grid-item {
      margin-right: 1.25rem;
      margin-left: 1.25rem; } }

.site-header {
  top: 0;
  z-index: 4;
  background-color: black;
  color: white;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  padding: 1rem 0 0;
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100%; }
  @media (min-width: 1025px) {
    .site-header {
      position: fixed; } }
  @media screen and (min-width: 33.75em) {
    .site-header {
      min-height: calc(7.5rem + 0.625rem);
      box-sizing: border-box; } }
  .site-header > .grid-container {
    display: grid;
    grid-template-columns: 17.5rem 1fr auto auto auto;
    grid-template-rows: auto auto;
    align-items: center;
    width: 100%;
    padding: 0px;
    position: relative;
    z-index: auto;
    margin-left: 0 !important;
    margin-right: 0 !important; }
    @media screen and (max-width: 47.9375em) {
      .site-header > .grid-container {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto auto auto;
        gap: 0.9375rem;
        padding: 1rem; } }
    @media screen and (max-width: 33.6875em) {
      .site-header > .grid-container {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding: 1rem; } }

.header-section-branding {
  grid-row: 1 / 3;
  grid-column: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 0;
  border-bottom: 8px solid #444444; }
  .header-section-branding .site-header-branding {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%; }
    .header-section-branding .site-header-branding img {
      max-width: 170px;
      height: auto;
      width: 100%; }
  .header-section-branding .button-navigation-toggle {
    margin-right: 0.625rem; }
  @media screen and (max-width: 33.6875em) {
    .header-section-branding {
      grid-row: auto;
      grid-column: auto;
      width: 100%;
      justify-content: center;
      padding: 0.3125rem 0;
      border-bottom: none; }
      .header-section-branding .site-header-branding {
        flex-direction: column;
        height: auto; }
        .header-section-branding .site-header-branding img {
          width: auto;
          height: auto;
          max-width: 90px; }
      .header-section-branding .button-navigation-toggle {
        margin-right: 0;
        margin-bottom: 0.3125rem; } }

/* Wrapper */
.site-header-utils {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
  font-family: Raleway;
  font-size: 14px;
  color: white;
  text-transform: none; }

/* Generic link block */
.site-header-utils__link {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 0.25rem 0;
  width: 100%;
  text-align: left; }
  .site-header-utils__link svg {
    margin-left: 10px; }

/* Link label */
.site-header-utils__link-text {
  display: block;
  width: 100%;
  text-align: left;
  color: inherit; }
  .site-header-utils__link-text:hover {
    color: white; }

/* Account block */
.account-link {
  display: flex;
  align-items: center;
  width: 100%;
  text-align: left; }
  .account-link:hover {
    color: #2d2d2d; }
  .account-link svg {
    margin-left: 10px; }

/* Account text */
.account-link-text {
  display: block;
  width: 100%;
  text-align: left;
  color: white;
  font-size: 14px;
  margin: 0; }

/* Dropdown container */
.site-header-utils .dropdown {
  width: 100%; }

/* Separator */
.dropdown-separator {
  border-top: 1px solid #ddd;
  margin-top: -1.375rem !important;
  padding-top: 0.625rem; }

/* Brand dropdown */
.search__brands-dropdown {
  background: white;
  border-radius: 0; }
  @media screen and (max-width: 33.625em) {
    .search__brands-dropdown {
      width: 30%;
      text-align: left; } }
  .search__brands-dropdown a.dropdown-toggle {
    display: flex;
    align-items: center;
    height: 3rem;
    padding: 0 1.45rem;
    margin-right: -1px;
    border: none;
    border-radius: 4px 0 0 4px;
    color: black;
    text-decoration: none;
    transition: background 0.3s ease;
    box-sizing: border-box; }
    .search__brands-dropdown a.dropdown-toggle .button-text {
      display: flex;
      align-items: center;
      font-family: Raleway;
      letter-spacing: 0.06em;
      color: black;
      overflow: hidden; }
      .search__brands-dropdown a.dropdown-toggle .button-text svg {
        margin-left: 10px;
        fill: black !important; }
  .search__brands-dropdown .search__brands-dropdown-item {
    padding: 0.2rem 0;
    color: white; }

/* Dropdown description */
.dropdown-description-wrapper {
  margin: 0;
  padding: 0; }

.dropdown-description {
  font-size: 0.8em;
  color: #BFBFBF; }

/* Scoped account dropdown */
.site-header-utils .dropdown-panel.account-dropdown-panel {
  position: absolute;
  z-index: 4;
  display: none;
  margin-top: 1rem;
  white-space: nowrap;
  right: 0;
  width: 14rem;
  padding: 0.7rem;
  font-family: Raleway;
  font-weight: 300;
  background-color: #f5f5f5;
  border: 1px solid #dfdfdf;
  border-radius: 0.1rem;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
  overflow-y: auto;
  /* Separator before the last item */ }
  .site-header-utils .dropdown-panel.account-dropdown-panel li.account-dropdown-item a.account-utils {
    display: block;
    width: 100%;
    padding: 0.5rem 1rem;
    text-align: left;
    color: #000;
    text-decoration: none;
    font-size: 0.875rem; }
    .site-header-utils .dropdown-panel.account-dropdown-panel li.account-dropdown-item a.account-utils:hover {
      background-color: #ccc;
      color: #000; }
  .site-header-utils .dropdown-panel.account-dropdown-panel li.account-dropdown-item:last-child {
    border-top: 1px solid #ccc;
    margin-top: 0.5rem;
    padding-top: 0.5rem; }
  .site-header-utils .dropdown-panel.account-dropdown-panel.visible {
    display: block !important;
    margin-top: 0;
    opacity: 1; }

/* SVG styling */
.site-header-utils svg {
  fill: black !important;
  height: 15px;
  width: 15px; }
  .site-header-utils svg.no-fill {
    fill: none; }
  @media (max-width: 1023px) {
    .site-header-utils svg {
      height: 15px; } }

.site-header-section.header-section-currency {
  display: flex;
  align-items: center;
  padding: 0 1rem; }

/* Mini Cart Count */
.mini-cart-count {
  margin-left: 0.2125rem;
  font-weight: bold; }

.button-navigation-toggle {
  position: relative;
  display: block;
  flex: 0 0 auto;
  width: 1.125rem;
  height: 0.875rem;
  margin-right: 1.125rem;
  cursor: pointer; }
  @media screen and (min-width: 64em) {
    .button-navigation-toggle {
      display: none; } }
  .button-navigation-toggle .burger {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 2px;
    margin-top: -1px;
    background-color: #333333;
    transition: background-color 0.2s ease; }
    .button-navigation-toggle .burger::before, .button-navigation-toggle .burger::after {
      content: "";
      position: absolute;
      left: 0;
      width: 100%;
      height: 2px;
      background-color: #333333;
      transition: all 0.2s ease; }
    .button-navigation-toggle .burger::before {
      top: -6px; }
    .button-navigation-toggle .burger::after {
      top: 6px; }
  .button-navigation-toggle.active .burger {
    background-color: transparent; }
    .button-navigation-toggle.active .burger::before {
      top: 0;
      transform: rotate(-45deg); }
    .button-navigation-toggle.active .burger::after {
      top: 0;
      transform: rotate(45deg); }
  .button-navigation-toggle:focus .burger,
  .button-navigation-toggle:focus .burger::before,
  .button-navigation-toggle:focus .burger::after {
    background-color: #2d2d2d; }

.mini-cart-toggle {
  display: flex;
  align-items: center; }
  .mini-cart-toggle svg {
    display: inline-block;
    vertical-align: middle; }
  .mini-cart-toggle:hover {
    color: #2d2d2d; }

.mini-cart-icon-wrap.cart-empty .mini-cart-icon-full {
  display: none; }

.mini-cart-icon-wrap.cart-full .mini-cart-icon-empty {
  display: none; }

.mini-cart-icon-wrap.cart-full .mini-cart-icon-full {
  display: inline-block; }

.mini-cart-count {
  display: none;
  margin-left: 0.8125rem; }
  .mini-cart-count.show {
    display: inline-block; }

.toggle-categories-only-mobile {
  text-align: center;
  width: 100%; }
  @media screen and (max-width: 33.6875em) {
    .toggle-categories-only-mobile {
      display: list-item; } }

.header-section-below-search {
  grid-column: 2 / -1;
  grid-row: 2;
  width: 100%;
  background-color: #444;
  padding: 0; }
  @media only screen and (min-width: 768px) {
    .header-section-below-search {
      max-height: 41px;
      overflow: hidden; } }
  .header-section-below-search nav.below-search-menu {
    max-width: 100%;
    margin: 0 auto; }
    .header-section-below-search nav.below-search-menu ul {
      display: flex;
      flex-wrap: wrap;
      margin: 0;
      list-style: none;
      font-size: 1rem;
      font-family: Raleway;
      letter-spacing: 1px; }
      .header-section-below-search nav.below-search-menu ul li {
        position: relative; }
        .header-section-below-search nav.below-search-menu ul li a {
          color: white;
          text-decoration: none;
          padding: 10px 20px;
          border-bottom: 2px solid transparent;
          font-weight: 500;
          line-height: 1.2;
          display: block; }
          .header-section-below-search nav.below-search-menu ul li a:hover {
            background-color: #DCD6D0;
            color: #333; }
          .header-section-below-search nav.below-search-menu ul li a:active {
            background-color: #DCD6D0;
            color: #333; }
          .header-section-below-search nav.below-search-menu ul li a:focus-within {
            background-color: #DCD6D0;
            color: #333; }
  @media screen and (max-width: 33.6875em) {
    .header-section-below-search {
      grid-column: 1 / -1;
      grid-row: auto;
      padding: 0.2rem 0.2rem; }
      .header-section-below-search nav.below-search-menu ul {
        flex-direction: column;
        font-size: 0.85rem;
        gap: 0.3rem; } }

.below-dropdown-panel {
  display: none !important;
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  background-color: #DCD6D0 !important;
  z-index: 10 !important;
  font-size: 1rem !important; }
  .below-dropdown-panel li a {
    display: block !important;
    padding: 0.75rem 1rem !important;
    font-size: 1rem !important;
    line-height: 0.4 !important;
    color: black !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important; }
    .below-dropdown-panel li a:hover {
      background-color: #F1F1F1 !important; }
    .below-dropdown-panel li a img {
      display: inline-block !important;
      width: 80px !important;
      /* fixed width */
      height: auto !important;
      /* auto height */
      max-height: 100% !important;
      /* optional: restrict tall images */ }
  .below-dropdown-panel .brand-collections-wrapper img {
    margin: 0 auto !important;
    display: block !important;
    padding: 4px 0 !important; }
  .below-dropdown-panel .column {
    display: flex !important;
    flex-direction: column !important; }
    .below-dropdown-panel .column strong {
      display: block !important;
      padding: 0 1rem 0.75rem !important;
      font-size: 1rem !important;
      font-weight: 700 !important;
      color: black !important; }
  .below-dropdown-panel.visible {
    display: grid !important;
    grid-template-columns: 1fr !important;
    position: static !important;
    width: 100% !important;
    left: 0 !important;
    right: 0 !important;
    box-shadow: none !important;
    padding: 1rem !important;
    gap: 2px !important; }
    @media (min-width: 1024px) {
      .below-dropdown-panel.visible {
        position: fixed !important;
        top: calc(7.5rem + 1.1875rem) !important;
        left: 0 !important;
        right: 0 !important;
        width: 100vw !important;
        max-width: 100vw !important;
        grid-template-columns: repeat(3, minmax(0, 0.8fr)) !important;
        padding: 35px 285px !important;
        box-sizing: border-box !important;
        z-index: 9999 !important; } }

[data-navigation-toggle] {
  display: none;
  background: none;
  border: none;
  color: white !important;
  letter-spacing: 1px;
  font-size: 0.85rem;
  font-weight: 500;
  line-height: 1.2; }

@media (max-width: 767px) {
  [data-navigation-toggle] {
    display: inline-block; } }

.header-section-utils {
  display: flex;
  padding: 0.5rem 0.5rem 0.5rem 2.5rem;
  min-width: 200px; }
  @media screen and (max-width: 47.9375em) {
    .header-section-utils {
      height: 2.875rem; } }

/* Desktop defaults */
.mobile-header,
.grid-container.mobile-header {
  display: none !important; }

/* Mobile Header Mobile Styles */
@media (max-width: 768px) {
  .desktop-header {
    display: none !important; }
  .mobile-header,
  .grid-container.mobile-header {
    display: block !important;
    width: 100% !important; }
  .mobile-header-container {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 10px !important;
    width: 100% !important;
    min-height: 70px !important;
    box-sizing: border-box !important; }
  .mobile-header-column {
    flex: 1 1 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 100% !important; }
  .mobile-header-logo {
    flex: 2 1 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 100% !important; }
  .mobile-header-logo img {
    height: 80px !important;
    max-width: 160px !important;
    display: block !important;
    margin: 0 auto !important; }
  .mobile-header-column:first-child {
    justify-content: flex-start !important; }
  .mobile-header-column:last-child {
    justify-content: flex-end !important; } }

.site-footer-upper.light {
  background-color: whitesmoke; }

.site-footer-upper.dark {
  background-color: black; }

.site-footer-upper-container {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  justify-content: space-around;
  max-width: 80rem;
  padding: 2.5rem 1rem;
  margin: 0 auto; }
  @media screen and (min-width: 48em) {
    .site-footer-upper-container {
      padding-top: 5rem;
      padding-bottom: 5rem; } }
  @media screen and (min-width: 64em) {
    .site-footer-upper-container {
      padding-right: 2.5rem;
      padding-left: 2.5rem; } }

.site-footer-section {
  width: calc(100% - 1rem);
  flex-grow: 1;
  margin-bottom: 2.5rem;
  text-align: center; }
  @media screen and (min-width: 48em) {
    .site-footer-section {
      width: calc(100% - 1.5rem); } }
  @media screen and (min-width: 64em) {
    .site-footer-section {
      width: calc(100% - 2.5rem); } }
  .site-footer-section:last-child {
    margin-bottom: 0; }
  @media screen and (min-width: 48em) {
    .site-footer-section {
      width: calc(25% - 1rem);
      flex: 0 1 auto;
      margin-right: 0.5rem;
      margin-left: 0.5rem;
      margin-bottom: 0;
      text-align: center; } }
  @media screen and (min-width: 48em) and (min-width: 48em) {
    .site-footer-section {
      width: calc(25% - 1.5rem); } }
  @media screen and (min-width: 48em) and (min-width: 64em) {
    .site-footer-section {
      width: calc(25% - 2.5rem); } }
  @media screen and (min-width: 48em) and (min-width: 48em) {
    .site-footer-section {
      margin-right: 0.75rem;
      margin-left: 0.75rem; } }
  @media screen and (min-width: 48em) and (min-width: 64em) {
    .site-footer-section {
      margin-right: 1.25rem;
      margin-left: 1.25rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 48em) {
    .site-footer-section {
      text-align: left; } }
  .site-footer-section.site-footer-newsletter, .site-footer-section.site-footer-address {
    flex-grow: 2; }
  .site-footer-section.site-footer-disable {
    display: none; }

@media screen and (min-width: 48em) {
  .site-footer-section:first-child:nth-last-child(4) .newsletter-subscription-form .form-inline,
  .site-footer-section:first-child:nth-last-child(4) ~ .site-footer-newsletter .newsletter-subscription-form .form-inline {
    display: flex; }
    .site-footer-section:first-child:nth-last-child(4) .newsletter-subscription-form .form-inline .newsletter-input,
    .site-footer-section:first-child:nth-last-child(4) ~ .site-footer-newsletter .newsletter-subscription-form .form-inline .newsletter-input {
      width: 100%;
      max-width: 100%;
      margin-bottom: 1rem; } }

.footer-address-heading {
  display: inline-block;
  margin-bottom: 0.5rem;
  font-weight: 500; }
  .dark .footer-address-heading {
    color: #fff; }

.footer-address-content {
  font-family: "Raleway";
  font-weight: 300;
  color: #7b7b7b; }
  .dark .footer-address-content {
    color: rgba(255, 255, 255, 0.8); }
  .footer-address-content p {
    margin: 0; }

.site-footer-lower {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
  display: flex;
  align-items: center;
  flex: 1 0 auto;
  flex-wrap: wrap; }
  @media screen and (min-width: 48em) {
    .site-footer-lower {
      padding-right: 1.5rem;
      padding-left: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .site-footer-lower {
      padding-right: 2.5rem;
      padding-left: 2.5rem; } }
  @media screen and (min-width: 75em) {
    .site-footer-lower {
      justify-content: space-between; } }

.site-footer-credits {
  width: calc(100% - 1rem);
  font-family: "Raleway";
  font-weight: 300;
  text-align: center; }
  @media screen and (min-width: 48em) {
    .site-footer-credits {
      width: calc(100% - 1.5rem); } }
  @media screen and (min-width: 64em) {
    .site-footer-credits {
      width: calc(100% - 2.5rem); } }
  @media screen and (min-width: 75em) {
    .site-footer-credits {
      width: calc(58.33333% - 1rem);
      text-align: left; } }
  @media screen and (min-width: 75em) and (min-width: 48em) {
    .site-footer-credits {
      width: calc(58.33333% - 1.5rem); } }
  @media screen and (min-width: 75em) and (min-width: 64em) {
    .site-footer-credits {
      width: calc(58.33333% - 2.5rem); } }

.site-footer-credits-list {
  margin: 1rem 0; }

.site-footer-payment-list.footer-has-trust-seal {
  margin-top: 10px; }

.site-footer-payment-list-item,
.site-footer-credits-list-item {
  display: inline-block;
  color: rgba(51, 51, 51, 0.5); }
  .site-footer-payment-list-item p,
  .site-footer-credits-list-item p {
    margin: 0; }

.site-footer-payment {
  width: calc(100% - 1rem);
  margin-top: 1rem;
  text-align: center; }
  @media screen and (min-width: 48em) {
    .site-footer-payment {
      width: calc(100% - 1.5rem); } }
  @media screen and (min-width: 64em) {
    .site-footer-payment {
      width: calc(100% - 2.5rem); } }
  @media screen and (min-width: 75em) {
    .site-footer-payment {
      width: calc(41.66667% - 1rem);
      margin-top: 0;
      text-align: right; } }
  @media screen and (min-width: 75em) and (min-width: 48em) {
    .site-footer-payment {
      width: calc(41.66667% - 1.5rem); } }
  @media screen and (min-width: 75em) and (min-width: 64em) {
    .site-footer-payment {
      width: calc(41.66667% - 2.5rem); } }

.site-footer-payment-list-item {
  padding-right: 1rem;
  vertical-align: middle; }
  .site-footer-payment-list-item:last-child {
    padding-right: 0; }

table.geotrust-ssl-seal-table {
  display: inline-block;
  margin-top: 10px;
  margin-bottom: 20px;
  margin-left: 1rem;
  vertical-align: middle;
  border: 0; }
  table.geotrust-ssl-seal-table td {
    padding: 0;
    border: 0; }

.cookie-message {
  position: sticky;
  bottom: 0;
  width: 100%;
  padding-bottom: 20px;
  margin-bottom: 0 !important;
  background: rgba(255, 255, 255, 0.95);
  border-top: 1px solid #dfdfdf; }

.iframe-container {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  height: 0; }

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

.apple-pay-checkout-button {
  display: none;
  box-sizing: border-box;
  min-width: 50px;
  height: 60px;
  background-size: 100% 60%;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  border-radius: 5px;
  background-image: -webkit-named-image(apple-pay-logo-black);
  background-color: white;
  border: 1px solid black; }
  .additional-checkout-buttons .apple-pay-checkout-button {
    margin: 15px 0; }
  .apple-pay-supported .apple-pay-checkout-button {
    display: block; }

.breadcrumbs {
  margin-right: -1rem;
  margin-left: -1rem;
  padding-right: 1rem;
  padding-left: 1rem;
  height: 3.125rem;
  padding-top: 1.25em;
  padding-bottom: 1.25em;
  overflow-x: auto;
  overflow-y: hidden;
  color: #666666;
  text-align: center;
  white-space: nowrap;
  background-color: whitesmoke;
  border-bottom: 1px solid #dfdfdf; }
  @media screen and (min-width: 48em) {
    .breadcrumbs {
      margin-right: -1.5rem;
      margin-left: -1.5rem; } }
  @media screen and (min-width: 64em) {
    .breadcrumbs {
      margin-right: -2.5rem;
      margin-left: -2.5rem; } }
  @media screen and (min-width: 48em) {
    .breadcrumbs {
      padding-right: 1.5rem;
      padding-left: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .breadcrumbs {
      padding-right: 2.5rem;
      padding-left: 2.5rem; } }

.banners, .promo-message {
  margin-right: -1rem;
  margin-left: -1rem;
  padding-right: 1rem;
  padding-left: 1rem;
  padding-top: 1.5em;
  padding-bottom: 1.5em;
  color: rgba(51, 51, 51, 0.8);
  background-color: whitesmoke;
  border-bottom: 1px solid #dfdfdf; }
  @media screen and (min-width: 48em) {
    .banners, .promo-message {
      margin-right: -1.5rem;
      margin-left: -1.5rem; } }
  @media screen and (min-width: 64em) {
    .banners, .promo-message {
      margin-right: -2.5rem;
      margin-left: -2.5rem; } }
  @media screen and (min-width: 48em) {
    .banners, .promo-message {
      padding-right: 1.5rem;
      padding-left: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .banners, .promo-message {
      padding-right: 2.5rem;
      padding-left: 2.5rem; } }

.carousel + .banners-top {
  border-top: 1px solid #dfdfdf; }

.banners-bottom {
  margin-top: 1rem;
  margin-bottom: -1rem;
  border-top: 1px solid #dfdfdf; }
  @media screen and (min-width: 48em) {
    .banners-bottom {
      margin-top: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .banners-bottom {
      margin-top: 2.5rem; } }
  @media screen and (min-width: 48em) {
    .banners-bottom {
      margin-bottom: -1.5rem; } }
  @media screen and (min-width: 64em) {
    .banners-bottom {
      margin-bottom: -2.5rem; } }

.banner p:first-child {
  margin-top: 0; }

.banner p:last-child {
  margin-bottom: 0; }

.promo-message {
  text-align: center;
  background-color: #989898; }

.carousel {
  margin-right: -1rem;
  margin-left: -1rem;
  margin-top: -5px; }
  @media screen and (min-width: 48em) {
    .carousel {
      margin-right: -1.5rem;
      margin-left: -1.5rem; } }
  @media screen and (min-width: 64em) {
    .carousel {
      margin-right: -2.5rem;
      margin-left: -2.5rem; } }

.flickity-viewport {
  transition: none; }

.carousel-item {
  position: relative;
  width: 100%; }

.carousel-item-image {
  background-size: contain;
  background-repeat: no-repeat;
  object-fit: contain;
  opacity: 0;
  transition: opacity 0.3s ease-out; }
  .carousel-item-image.flickity-bg-lazyloaded {
    opacity: 1; }
  .carousel-item-image img {
    opacity: 0; }
  .carousel-item-image:not(.ratio-any) img {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0; }
  .carousel-item-image.ratio-vh {
    height: 90vw; }
    @media screen and (min-width: 33.75em) {
      .carousel-item-image.ratio-vh {
        height: calc(100vh - 7.5rem); } }

.carousel-nav {
  position: absolute;
  bottom: 100%;
  padding: 0;
  margin: 0;
  border: 0; }
  @media screen and (max-width: 63.875em) {
    .carousel-nav {
      display: none;
      left: 1rem; } }
  @media screen and (max-width: 63.875em) and (min-width: 48em) {
    .carousel-nav {
      left: 1.5rem; } }
  @media screen and (max-width: 63.875em) and (min-width: 64em) {
    .carousel-nav {
      left: 2.5rem; } }

.carousel-nav-item {
  display: block;
  float: left;
  width: 3.125rem;
  height: 3.125rem;
  background-color: rgba(255, 255, 255, 0.9); }
  .carousel-nav-item:first-child {
    border-right: 1px solid #d9d9d9; }
  .carousel-nav-item svg {
    pointer-events: none; }

.carousel-style-dark .carousel-nav-item {
  color: #f2f2f2;
  background-color: rgba(0, 0, 0, 0.9); }
  .carousel-style-dark .carousel-nav-item:first-child {
    border-right: 1px solid #333333; }

.carousel-style-accent .carousel-nav-item {
  color: #fff;
  background-color: rgba(45, 45, 45, 0.9); }
  .carousel-style-accent .carousel-nav-item:first-child {
    border-right: 1px solid rgba(71, 71, 71, 0.8); }

.carousel-item-info-wrapper {
  position: relative;
  transition: all 0.3s ease-out 0.3s;
  padding-top: 0;
  padding-bottom: 0; }
  @media (max-width: 1022px) {
    .carousel-item-info-wrapper {
      transform: translateY(0);
      margin-top: -50px;
      width: 100%;
      position: static; } }
  @media (min-width: 1023px) {
    .carousel-item-info-wrapper {
      width: 100%;
      padding-right: 1rem;
      padding-left: 1rem;
      position: absolute;
      bottom: 0;
      text-align: center;
      width: 100%; } }
  @media screen and (min-width: 1023px) and (min-width: 48em) {
    .carousel-item-info-wrapper {
      padding-right: 1.5rem;
      padding-left: 1.5rem; } }
  @media screen and (min-width: 1023px) and (min-width: 64em) {
    .carousel-item-info-wrapper {
      padding-right: 2.5rem;
      padding-left: 2.5rem; } }

.is-selected .carousel-item-info-wrapper {
  transform: translateY(0); }

.carousel-item-info {
  overflow: hidden;
  background-color: #fff;
  padding-top: 1rem;
  padding-right: 1rem;
  padding-left: 1rem;
  max-width: 29.375rem; }
  @media (max-width: 1022px) {
    .carousel-item-info {
      width: 100%;
      max-width: none; } }
  @media (min-width: 1023px) {
    .carousel-item-info {
      padding-top: 0;
      padding-right: 2.5rem;
      padding-left: 2.5rem; } }

.carousel-style-light .carousel-item-info .button, .carousel-style-light .carousel-item-info .product__quote-form ._submit, .product__quote-form .carousel-style-light .carousel-item-info ._submit,
.carousel-style-light .carousel-item-info .product__request-virtual-form ._submit, .product__request-virtual-form .carousel-style-light .carousel-item-info ._submit,
.carousel-style-dark .carousel-item-info .button,
.carousel-style-dark .carousel-item-info .product__quote-form ._submit,
.product__quote-form .carousel-style-dark .carousel-item-info ._submit,
.carousel-style-dark .carousel-item-info .product__request-virtual-form ._submit,
.product__request-virtual-form .carousel-style-dark .carousel-item-info ._submit {
  font-family: "Typo Grotesk Regular";
  font-size: 0.75rem;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 0;
  font-family: inherit;
  background: transparent;
  border: 0;
  border-radius: 0;
  position: relative;
  display: inline-block;
  height: 3.5rem;
  min-width: 16.875rem;
  padding-right: 1.5em;
  padding-left: 1.5em;
  overflow: hidden;
  font-size: 1rem;
  line-height: 3.5rem;
  text-align: center;
  transition: all 0.2s ease-out;
  color: white;
  background-color: #2d2d2d; }
  @media screen and (max-width: 33.6875em) {
    .carousel-style-light .carousel-item-info .button, .carousel-style-light .carousel-item-info .product__quote-form ._submit, .product__quote-form .carousel-style-light .carousel-item-info ._submit,
    .carousel-style-light .carousel-item-info .product__request-virtual-form ._submit, .product__request-virtual-form .carousel-style-light .carousel-item-info ._submit,
    .carousel-style-dark .carousel-item-info .button,
    .carousel-style-dark .carousel-item-info .product__quote-form ._submit,
    .product__quote-form .carousel-style-dark .carousel-item-info ._submit,
    .carousel-style-dark .carousel-item-info .product__request-virtual-form ._submit,
    .product__request-virtual-form .carousel-style-dark .carousel-item-info ._submit {
      font-size: 0.875rem; } }
  .carousel-style-light .carousel-item-info .button:hover, .carousel-style-light .carousel-item-info .product__quote-form ._submit:hover, .product__quote-form .carousel-style-light .carousel-item-info ._submit:hover,
  .carousel-style-light .carousel-item-info .product__request-virtual-form ._submit:hover, .product__request-virtual-form .carousel-style-light .carousel-item-info ._submit:hover,
  .carousel-style-dark .carousel-item-info .button:hover,
  .carousel-style-dark .carousel-item-info .product__quote-form ._submit:hover,
  .product__quote-form .carousel-style-dark .carousel-item-info ._submit:hover,
  .carousel-style-dark .carousel-item-info .product__request-virtual-form ._submit:hover,
  .product__request-virtual-form .carousel-style-dark .carousel-item-info ._submit:hover {
    opacity: 1; }
  .carousel-style-light .carousel-item-info .button:active::before, .carousel-style-light .carousel-item-info .product__quote-form ._submit:active::before, .product__quote-form .carousel-style-light .carousel-item-info ._submit:active::before,
  .carousel-style-light .carousel-item-info .product__request-virtual-form ._submit:active::before, .product__request-virtual-form .carousel-style-light .carousel-item-info ._submit:active::before,
  .carousel-style-dark .carousel-item-info .button:active::before,
  .carousel-style-dark .carousel-item-info .product__quote-form ._submit:active::before,
  .product__quote-form .carousel-style-dark .carousel-item-info ._submit:active::before,
  .carousel-style-dark .carousel-item-info .product__request-virtual-form ._submit:active::before,
  .product__request-virtual-form .carousel-style-dark .carousel-item-info ._submit:active::before {
    opacity: 0.1;
    transform: scale(0, 0);
    transition-duration: 0s; }
  .carousel-style-light .carousel-item-info .button:disabled, .carousel-style-light .carousel-item-info .product__quote-form ._submit:disabled, .product__quote-form .carousel-style-light .carousel-item-info ._submit:disabled,
  .carousel-style-light .carousel-item-info .product__request-virtual-form ._submit:disabled, .product__request-virtual-form .carousel-style-light .carousel-item-info ._submit:disabled, .carousel-style-light .carousel-item-info .button.button-disabled, .carousel-style-light .carousel-item-info .product__quote-form .button-disabled._submit, .product__quote-form .carousel-style-light .carousel-item-info .button-disabled._submit,
  .carousel-style-light .carousel-item-info .product__request-virtual-form .button-disabled._submit, .product__request-virtual-form .carousel-style-light .carousel-item-info .button-disabled._submit,
  .carousel-style-dark .carousel-item-info .button:disabled,
  .carousel-style-dark .carousel-item-info .product__quote-form ._submit:disabled,
  .product__quote-form .carousel-style-dark .carousel-item-info ._submit:disabled,
  .carousel-style-dark .carousel-item-info .product__request-virtual-form ._submit:disabled,
  .product__request-virtual-form .carousel-style-dark .carousel-item-info ._submit:disabled,
  .carousel-style-dark .carousel-item-info .button.button-disabled,
  .carousel-style-dark .carousel-item-info .product__quote-form .button-disabled._submit,
  .product__quote-form .carousel-style-dark .carousel-item-info .button-disabled._submit,
  .carousel-style-dark .carousel-item-info .product__request-virtual-form .button-disabled._submit,
  .product__request-virtual-form .carousel-style-dark .carousel-item-info .button-disabled._submit {
    cursor: not-allowed;
    opacity: 0.8; }
  .carousel-style-light .carousel-item-info .button::before, .carousel-style-light .carousel-item-info .product__quote-form ._submit::before, .product__quote-form .carousel-style-light .carousel-item-info ._submit::before,
  .carousel-style-light .carousel-item-info .product__request-virtual-form ._submit::before, .product__request-virtual-form .carousel-style-light .carousel-item-info ._submit::before,
  .carousel-style-dark .carousel-item-info .button::before,
  .carousel-style-dark .carousel-item-info .product__quote-form ._submit::before,
  .product__quote-form .carousel-style-dark .carousel-item-info ._submit::before,
  .carousel-style-dark .carousel-item-info .product__request-virtual-form ._submit::before,
  .product__request-virtual-form .carousel-style-dark .carousel-item-info ._submit::before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    pointer-events: none;
    background-image: radial-gradient(circle, #000 10%, transparent 10.01%);
    background-position: 50%;
    background-repeat: no-repeat;
    content: "";
    opacity: 0;
    transform: scale(10, 10);
    transition: transform 0.2s, opacity 0.4s; }
  .carousel-style-light .carousel-item-info .button:hover, .carousel-style-light .carousel-item-info .product__quote-form ._submit:hover, .product__quote-form .carousel-style-light .carousel-item-info ._submit:hover,
  .carousel-style-light .carousel-item-info .product__request-virtual-form ._submit:hover, .product__request-virtual-form .carousel-style-light .carousel-item-info ._submit:hover,
  .carousel-style-dark .carousel-item-info .button:hover,
  .carousel-style-dark .carousel-item-info .product__quote-form ._submit:hover,
  .product__quote-form .carousel-style-dark .carousel-item-info ._submit:hover,
  .carousel-style-dark .carousel-item-info .product__request-virtual-form ._submit:hover,
  .product__request-virtual-form .carousel-style-dark .carousel-item-info ._submit:hover {
    background-color: #242424; }

.carousel-style-dark .carousel-item-info {
  color: #fff;
  background-color: #000; }

.carousel-style-accent .carousel-item-info {
  color: #fff;
  background-color: #2d2d2d; }
  .carousel-style-accent .carousel-item-info .button, .carousel-style-accent .carousel-item-info .product__quote-form ._submit, .product__quote-form .carousel-style-accent .carousel-item-info ._submit,
  .carousel-style-accent .carousel-item-info .product__request-virtual-form ._submit, .product__request-virtual-form .carousel-style-accent .carousel-item-info ._submit {
    font-family: "Typo Grotesk Regular";
    font-size: 0.75rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    padding: 0;
    font-family: inherit;
    background: transparent;
    border: 0;
    border-radius: 0;
    position: relative;
    display: inline-block;
    height: 3.5rem;
    min-width: 16.875rem;
    padding-right: 1.5em;
    padding-left: 1.5em;
    overflow: hidden;
    font-size: 1rem;
    line-height: 3.5rem;
    text-align: center;
    transition: all 0.2s ease-out;
    color: #000;
    background-color: #fff;
    border-bottom: 1px solid #2d2d2d; }
    @media screen and (max-width: 33.6875em) {
      .carousel-style-accent .carousel-item-info .button, .carousel-style-accent .carousel-item-info .product__quote-form ._submit, .product__quote-form .carousel-style-accent .carousel-item-info ._submit,
      .carousel-style-accent .carousel-item-info .product__request-virtual-form ._submit, .product__request-virtual-form .carousel-style-accent .carousel-item-info ._submit {
        font-size: 0.875rem; } }
    .carousel-style-accent .carousel-item-info .button:hover, .carousel-style-accent .carousel-item-info .product__quote-form ._submit:hover, .product__quote-form .carousel-style-accent .carousel-item-info ._submit:hover,
    .carousel-style-accent .carousel-item-info .product__request-virtual-form ._submit:hover, .product__request-virtual-form .carousel-style-accent .carousel-item-info ._submit:hover {
      opacity: 1; }
    .carousel-style-accent .carousel-item-info .button:active::before, .carousel-style-accent .carousel-item-info .product__quote-form ._submit:active::before, .product__quote-form .carousel-style-accent .carousel-item-info ._submit:active::before,
    .carousel-style-accent .carousel-item-info .product__request-virtual-form ._submit:active::before, .product__request-virtual-form .carousel-style-accent .carousel-item-info ._submit:active::before {
      opacity: 0.1;
      transform: scale(0, 0);
      transition-duration: 0s; }
    .carousel-style-accent .carousel-item-info .button:disabled, .carousel-style-accent .carousel-item-info .product__quote-form ._submit:disabled, .product__quote-form .carousel-style-accent .carousel-item-info ._submit:disabled,
    .carousel-style-accent .carousel-item-info .product__request-virtual-form ._submit:disabled, .product__request-virtual-form .carousel-style-accent .carousel-item-info ._submit:disabled, .carousel-style-accent .carousel-item-info .button.button-disabled, .carousel-style-accent .carousel-item-info .product__quote-form .button-disabled._submit, .product__quote-form .carousel-style-accent .carousel-item-info .button-disabled._submit,
    .carousel-style-accent .carousel-item-info .product__request-virtual-form .button-disabled._submit, .product__request-virtual-form .carousel-style-accent .carousel-item-info .button-disabled._submit {
      cursor: not-allowed;
      opacity: 0.8; }
    .carousel-style-accent .carousel-item-info .button::before, .carousel-style-accent .carousel-item-info .product__quote-form ._submit::before, .product__quote-form .carousel-style-accent .carousel-item-info ._submit::before,
    .carousel-style-accent .carousel-item-info .product__request-virtual-form ._submit::before, .product__request-virtual-form .carousel-style-accent .carousel-item-info ._submit::before {
      position: absolute;
      top: 0;
      left: 0;
      display: block;
      width: 100%;
      height: 100%;
      pointer-events: none;
      background-image: radial-gradient(circle, #000 10%, transparent 10.01%);
      background-position: 50%;
      background-repeat: no-repeat;
      content: "";
      opacity: 0;
      transform: scale(10, 10);
      transition: transform 0.2s, opacity 0.4s; }
    .carousel-style-accent .carousel-item-info .button:hover, .carousel-style-accent .carousel-item-info .product__quote-form ._submit:hover, .product__quote-form .carousel-style-accent .carousel-item-info ._submit:hover,
    .carousel-style-accent .carousel-item-info .product__request-virtual-form ._submit:hover, .product__request-virtual-form .carousel-style-accent .carousel-item-info ._submit:hover {
      color: #2d2d2d; }

.carousel-item-title {
  font-family: "Typo Grotesk Regular";
  font-size: 1.5rem;
  line-height: 1.4em;
  color: #333333;
  margin-bottom: 0.5rem;
  color: white !important;
  font-size: 2rem;
  opacity: 0.9; }
  @media screen and (max-width: 63.875em) {
    .carousel-item-title {
      font-size: 1.8rem; } }
  @media screen and (min-width: 33.75em) {
    .carousel-item-title {
      font-family: "Typo Grotesk Regular";
      font-size: 3rem;
      line-height: 1.2em;
      color: #333333; } }

.carousel-item-text {
  margin-bottom: 2.5rem;
  font-family: "Raleway";
  line-height: 1.6em; }

.carousel-style-dark .carousel-item-text {
  opacity: 0.9; }

.carousel-button-wrapper {
  line-height: 0; }

.currency-selector {
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
  cursor: pointer; }
  .currency-selector .currencies {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0; }
  .currency-selector .currency-selected {
    margin-right: 0.3125rem; }
  .currency-selector:hover {
    color: #2d2d2d; }

.dropdown {
  position: relative;
  display: inline-block; }

@media screen and (max-width: 47.9375em) {
  .dropdown-toggle::after {
    display: none;
    content: "slideToggle"; } }

.dropdown-panel {
  position: absolute;
  z-index: 4;
  display: none;
  max-height: calc(99vh - (5.875rem + 3.8125rem));
  background-color: white;
  overflow-y: auto; }
  .dropdown-panel.share-dropdown-panel {
    z-index: 13; }
  .dropdown-panel.dropdown-fullwidth {
    width: 100%; }
    @media screen and (min-width: 64em) {
      .dropdown-panel.dropdown-fullwidth {
        width: calc(100% - 17.5rem); } }
  .dropdown-panel.animating, .dropdown-panel.visible {
    display: block !important; }
  .dropdown-panel.animating-in, .dropdown-panel.animating-out {
    margin-top: -0.625rem;
    opacity: 0;
    transition: opacity 0.2s ease, margin 0.2s ease; }
  .dropdown-panel.visible {
    margin-top: 0;
    opacity: 1; }

.link-list-title {
  margin-bottom: 0.5rem;
  font-weight: 500; }
  .dark .link-list-title {
    color: #fff; }

.link-list-item a {
  color: #7b7b7b; }
  .dark .link-list-item a {
    color: rgba(255, 255, 255, 0.8); }

.site-footer .link-list-item {
  font-family: "Raleway";
  font-weight: 300; }

.site-main-sidebar .link-list-item {
  line-height: 2.25; }
  @media screen and (min-width: 33.75em) {
    .site-main-sidebar .link-list-item {
      line-height: 2.5; } }

.site-main-sidebar .link-list-wrapper {
  margin-bottom: 4rem; }
  @media screen and (min-width: 33.75em) {
    .site-main-sidebar .link-list-wrapper {
      margin-bottom: 2.5rem; } }
  .site-main-sidebar .link-list-wrapper::before {
    display: block;
    width: 100%;
    height: 0.0625rem;
    background-color: #fff;
    content: ""; }
    @media screen and (min-width: 33.75em) {
      .site-main-sidebar .link-list-wrapper::before {
        width: 4.6875rem;
        background-color: #dfdfdf; } }

.site-main-sidebar .link-list {
  padding-top: 2rem; }

.site-main-sidebar .link-list-title {
  padding-top: 1rem;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3); }
  @media screen and (min-width: 64em) {
    .site-main-sidebar .link-list-title {
      color: #333333;
      border-color: #dfdfdf; } }

.site-main-sidebar .link-list-item a {
  color: #fff; }
  @media screen and (min-width: 64em) {
    .site-main-sidebar .link-list-item a {
      color: #333333; } }

.mini-cart {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
  position: fixed;
  top: 0;
  left: 100%;
  z-index: 14;
  flex: 0 0 auto;
  height: 100%;
  max-width: 30rem;
  overflow: auto;
  background-color: white;
  border-left: 1px solid #dfdfdf;
  transition: transform 0.2s ease-out; }
  @media screen and (min-width: 48em) {
    .mini-cart {
      padding-right: 1.5rem;
      padding-left: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .mini-cart {
      padding-right: 2.5rem;
      padding-left: 2.5rem; } }
  .mini-cart-is-visible .mini-cart {
    display: flex;
    transform: translate3d(-100%, 0, 0); }
  @media screen and (min-width: 64em) {
    .logo-position-right.mini-cart-is-visible .mini-cart {
      transform: translate3d(100%, 0, 0); } }
  @media screen and (min-width: 64em) {
    .logo-position-right .mini-cart {
      right: 100%;
      left: auto; } }
  @media screen and (max-width: 63.9375em) and (min-width: 33.75em) {
    .mini-cart::after {
      display: none;
      content: "sidebarToggle"; } }

.off-canvas-screen {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  background: rgba(51, 51, 51, 0.75);
  content: "";
  opacity: 0;
  transition: opacity 0.3s ease-out; }
  .mini-cart-is-visible .off-canvas-screen {
    bottom: 0;
    z-index: 12;
    opacity: 1; }

.mini-cart-inner {
  width: 100%; }

.mini-cart-header {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  justify-content: space-between;
  padding-top: 2rem;
  padding-bottom: 2rem;
  margin-bottom: 2rem;
  border-bottom: 1px solid #dfdfdf; }

.mini-cart-title,
.button-cart-close {
  flex: 0 1 auto;
  margin-right: 0.5rem;
  margin-left: 0.5rem;
  width: calc(50% - 1rem); }
  @media screen and (min-width: 48em) {
    .mini-cart-title,
    .button-cart-close {
      margin-right: 0.75rem;
      margin-left: 0.75rem; } }
  @media screen and (min-width: 64em) {
    .mini-cart-title,
    .button-cart-close {
      margin-right: 1.25rem;
      margin-left: 1.25rem; } }
  @media screen and (min-width: 48em) {
    .mini-cart-title,
    .button-cart-close {
      width: calc(50% - 1.5rem); } }
  @media screen and (min-width: 64em) {
    .mini-cart-title,
    .button-cart-close {
      width: calc(50% - 2.5rem); } }

.mini-cart-title {
  font-family: "Typo Grotesk Regular";
  font-size: 1.5rem;
  line-height: 1.4em;
  color: #333333;
  margin-left: 0; }

.button-cart-close {
  height: auto;
  min-width: auto;
  padding: 0;
  margin-right: 0;
  font-size: 0.75rem;
  color: rgba(51, 51, 51, 0.5);
  text-align: right; }

.mini-cart-contents {
  position: relative; }

.mini-cart-item {
  position: relative;
  padding: 2rem 0;
  border-bottom: 1px solid #dfdfdf; }
  .mini-cart-item:first-child {
    padding-top: 0; }
  .mini-cart-item:last-of-type {
    border-bottom: 0; }
  .mini-cart-item.removing {
    pointer-events: none; }

.mini-cart-item-overlay {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.8); }
  .mini-cart-item-overlay .spinner {
    border: 3px solid #2d2d2d;
    border-bottom-color: transparent; }

.mini-cart-item-wrap {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.5rem;
  margin-left: -0.5rem; }
  @media screen and (min-width: 48em) {
    .mini-cart-item-wrap {
      margin-right: -0.75rem;
      margin-left: -0.75rem; } }
  @media screen and (min-width: 64em) {
    .mini-cart-item-wrap {
      margin-right: -1.25rem;
      margin-left: -1.25rem; } }
  .mini-cart-item-wrap .mini-cart-item-info,
  .mini-cart-item-wrap .mini-cart-item-actions {
    flex: 0 1 auto;
    margin-right: 0.5rem;
    margin-left: 0.5rem; }
    @media screen and (min-width: 48em) {
      .mini-cart-item-wrap .mini-cart-item-info,
      .mini-cart-item-wrap .mini-cart-item-actions {
        margin-right: 0.75rem;
        margin-left: 0.75rem; } }
    @media screen and (min-width: 64em) {
      .mini-cart-item-wrap .mini-cart-item-info,
      .mini-cart-item-wrap .mini-cart-item-actions {
        margin-right: 1.25rem;
        margin-left: 1.25rem; } }
  .mini-cart-item-wrap .mini-cart-item-actions {
    width: calc(25% - 1rem); }
    @media screen and (min-width: 48em) {
      .mini-cart-item-wrap .mini-cart-item-actions {
        width: calc(25% - 1.5rem); } }
    @media screen and (min-width: 64em) {
      .mini-cart-item-wrap .mini-cart-item-actions {
        width: calc(25% - 2.5rem); } }

.mini-cart-item-info {
  width: calc(50% - 1rem); }
  @media screen and (min-width: 48em) {
    .mini-cart-item-info {
      width: calc(50% - 1.5rem); } }
  @media screen and (min-width: 64em) {
    .mini-cart-item-info {
      width: calc(50% - 2.5rem); } }

.mini-cart-item-title {
  display: block;
  margin-bottom: 0.25rem;
  text-transform: uppercase; }

.mini-cart-item-options {
  color: rgba(51, 51, 51, 0.8);
  margin-bottom: 0.25rem; }
  .mini-cart-item-options .option-value:not(:last-child):after {
    content: ","; }

.mini-cart-item-price {
  color: rgba(51, 51, 51, 0.5); }

.mini-cart-item-actions {
  text-align: right; }

.mini-cart-footer {
  margin-top: 1.5rem; }

.mini-cart-footer-title {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.5rem;
  margin-left: -0.5rem;
  margin-bottom: 1.5rem;
  color: rgba(51, 51, 51, 0.5);
  text-transform: uppercase; }
  @media screen and (min-width: 48em) {
    .mini-cart-footer-title {
      margin-right: -0.75rem;
      margin-left: -0.75rem; } }
  @media screen and (min-width: 64em) {
    .mini-cart-footer-title {
      margin-right: -1.25rem;
      margin-left: -1.25rem; } }

.mini-cart-subtotal-title,
.mini-cart-subtotal-amount {
  flex: 0 1 auto;
  margin-right: 0.5rem;
  margin-left: 0.5rem;
  width: calc(50% - 1rem); }
  @media screen and (min-width: 48em) {
    .mini-cart-subtotal-title,
    .mini-cart-subtotal-amount {
      margin-right: 0.75rem;
      margin-left: 0.75rem; } }
  @media screen and (min-width: 64em) {
    .mini-cart-subtotal-title,
    .mini-cart-subtotal-amount {
      margin-right: 1.25rem;
      margin-left: 1.25rem; } }
  @media screen and (min-width: 48em) {
    .mini-cart-subtotal-title,
    .mini-cart-subtotal-amount {
      width: calc(50% - 1.5rem); } }
  @media screen and (min-width: 64em) {
    .mini-cart-subtotal-title,
    .mini-cart-subtotal-amount {
      width: calc(50% - 2.5rem); } }

.mini-cart-subtotal-title {
  font-size: 0.75rem; }

.mini-cart-subtotal-amount {
  text-align: right; }

.mini-cart-actions {
  padding-bottom: 1rem; }
  @media screen and (min-width: 48em) {
    .mini-cart-actions {
      padding-bottom: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .mini-cart-actions {
      padding-bottom: 2.5rem; } }
  .mini-cart-actions .button, .mini-cart-actions .product__quote-form ._submit, .product__quote-form .mini-cart-actions ._submit,
  .mini-cart-actions .product__request-virtual-form ._submit, .product__request-virtual-form .mini-cart-actions ._submit {
    width: 100%;
    min-width: auto; }
    .mini-cart-actions .button + .button, .mini-cart-actions .product__quote-form ._submit + .button, .product__quote-form .mini-cart-actions ._submit + .button, .mini-cart-actions .product__request-virtual-form ._submit + .button, .product__request-virtual-form .mini-cart-actions ._submit + .button, .mini-cart-actions .product__quote-form .button + ._submit, .product__quote-form .mini-cart-actions .button + ._submit, .mini-cart-actions .product__quote-form ._submit + ._submit, .product__quote-form .mini-cart-actions ._submit + ._submit,
    .mini-cart-actions .product__request-virtual-form .button + ._submit, .product__request-virtual-form .mini-cart-actions .button + ._submit,
    .mini-cart-actions .product__request-virtual-form ._submit + ._submit, .product__request-virtual-form .mini-cart-actions ._submit + ._submit {
      margin-top: 1rem;
      margin-left: 0; }

.mini-cart-empty {
  font-family: "Typo Grotesk Regular";
  font-size: 1.5rem;
  line-height: 1.4em;
  color: #333333;
  text-align: center; }

.modal-container {
  display: none; }

.modal-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 12;
  display: none;
  background-color: rgba(51, 51, 51, 0.75);
  opacity: 0; }
  .modal-overlay.animating, .modal-overlay.visible {
    display: block;
    transition: opacity 0.3s ease; }
  .modal-overlay.visible {
    opacity: 1; }

.modal-wrapper {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 13;
  display: none;
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  outline: 0;
  opacity: 0; }
  .modal-wrapper.animating, .modal-wrapper.visible {
    display: block;
    transition: opacity 0.2s ease; }
  .modal-wrapper.animating-in {
    transition-delay: 0.1s; }
  .modal-wrapper.visible {
    overflow-x: hidden;
    overflow-y: auto;
    opacity: 1; }

.modal {
  position: relative;
  max-width: 39.375rem;
  margin-right: auto;
  margin-left: auto; }
  .modal.modal-quick-view, .modal.modal-quick-add {
    width: calc(100% - 1rem); }
  .modal.modal-quick-view {
    max-width: 73.125rem; }

.modal-content {
  position: relative;
  padding: 2.5rem 2rem;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  background: white; }
  @media screen and (min-width: 64em) {
    .modal-content {
      margin-top: 2rem;
      margin-bottom: 2rem; } }
  @media screen and (min-width: 64em) {
    .modal-content {
      padding: 4rem; } }
  .modal-content .modal-close {
    position: absolute;
    top: 1.5rem;
    right: 1.5rem; }
    .modal-content .modal-close svg {
      width: 0.875rem;
      height: 0.875rem; }

.js .main-navigation {
  visibility: hidden; }
  .js .main-navigation.loaded {
    visibility: visible; }

.main-navigation-container {
  padding-right: 1rem;
  padding-left: 1rem;
  position: relative;
  margin-top: 1rem;
  margin-bottom: 4rem;
  overflow: hidden; }
  @media screen and (min-width: 48em) {
    .main-navigation-container {
      padding-right: 1.5rem;
      padding-left: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .main-navigation-container {
      padding-right: 2.5rem;
      padding-left: 2.5rem; } }
  @media screen and (min-width: 33.75em) {
    .main-navigation-container {
      margin-top: 0;
      margin-bottom: 2.5rem; } }

.main-navigation-breadcrumbs {
  margin-right: 1rem;
  margin-left: 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 1.5rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  transition: transform 0.3s ease-out;
  height: 3.125rem;
  padding-top: 1rem; }
  @media screen and (min-width: 48em) {
    .main-navigation-breadcrumbs {
      margin-right: 1.5rem;
      margin-left: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .main-navigation-breadcrumbs {
      margin-right: 2.5rem;
      margin-left: 2.5rem; } }
  @media screen and (min-width: 64em) {
    .main-navigation-breadcrumbs {
      border-color: #dfdfdf; } }
  .main-navigation-breadcrumbs.is-active .navigation-go-back {
    position: static;
    opacity: 1;
    visibility: visible; }
  .main-navigation-breadcrumbs.is-active .main-navigation-panel-title {
    display: none; }
  .main-navigation-breadcrumbs.no-transition {
    transition-duration: 0s; }
  .main-navigation-breadcrumbs .navigation-go-back {
    position: absolute;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease-out; }
  .main-navigation-breadcrumbs .main-navigation-panel-title {
    margin-bottom: 1rem; }

.main-navigation-breadcrumb {
  margin-bottom: 1.5rem;
  color: #fff; }
  @media screen and (min-width: 33.75em) {
    .main-navigation-breadcrumb {
      margin-bottom: 1rem; } }
  @media screen and (min-width: 64em) {
    .main-navigation-breadcrumb {
      color: #333333; } }
  .main-navigation-breadcrumb:focus {
    border-bottom: 1px solid;
    outline: 0; }
  .main-navigation-breadcrumb.reset-all {
    display: inline-block;
    order: 2;
    text-align: right;
    opacity: 0;
    visibility: hidden;
    transition: all 0.2s ease-out; }
    .main-navigation-breadcrumb.reset-all.is-active {
      opacity: 1;
      visibility: visible; }
    .no-transition .main-navigation-breadcrumb.reset-all {
      transition-duration: 0s; }
  .main-navigation-breadcrumb .navigation-go-back-desktop {
    display: inline-block;
    margin-right: 0.5rem; }
  .main-navigation-breadcrumb .navigation-go-back-mobile {
    position: relative;
    top: 0.125rem;
    left: -0.5625rem;
    display: inline-block;
    transform: rotate(90deg); }
    @media screen and (min-width: 33.75em) {
      .main-navigation-breadcrumb .navigation-go-back-mobile {
        display: none; } }

.main-navigation-panel {
  width: 100%;
  color: #fff;
  transform: translate3d(0, 0, 0);
  transition: transform 0.3s ease-out, height 0.3s ease-out; }
  @media screen and (min-width: 33.75em) {
    .main-navigation-panel {
      padding-top: 1rem; } }
  @media screen and (min-width: 64em) {
    .main-navigation-panel {
      color: #333333; } }
  .main-navigation-panel.is-right, .main-navigation-panel.is-left {
    position: absolute;
    top: 0;
    visibility: hidden; }
  .main-navigation-panel.is-right {
    transform: translateX(calc(100% + 2.5rem)); }
  .main-navigation-panel.is-left {
    transform: translateX(calc(-100% - 2.5rem)); }
  .main-navigation-panel.is-hidden {
    opacity: 0; }
  .main-navigation-panel.no-transition {
    transition-duration: 0s; }
  .main-navigation-panel a {
    display: block;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
    transition: all 0.3s ease-out; }
    @media screen and (min-width: 33.75em) {
      .main-navigation-panel a:hover {
        background-color: whitesmoke; } }

.main-navigation-panel-title {
  padding-top: 0;
  padding-bottom: 0;
  color: rgba(255, 255, 255, 0.8); }
  @media screen and (min-width: 33.75em) {
    .main-navigation-panel-title {
      padding: 1rem 0; } }
  @media screen and (min-width: 64em) {
    .main-navigation-panel-title {
      color: inherit; } }
  @media screen and (max-width: 33.6875em) {
    .main-navigation-panel-child .main-navigation-panel-title {
      padding-top: 2rem;
      padding-bottom: 1rem;
      margin-top: 0; } }

.main-navigation-item {
  position: relative;
  margin-right: -0.5rem;
  margin-left: -0.5rem;
  line-height: 1.9; }
  @media screen and (min-width: 33.75em) {
    .main-navigation-item {
      line-height: 1.9; } }
  .main-navigation-item.is-active a,
  .main-navigation-item.is-active a:hover {
    background-color: rgba(255, 255, 255, 0.1); }
    @media screen and (min-width: 33.75em) {
      .main-navigation-item.is-active a,
      .main-navigation-item.is-active a:hover {
        color: #2d2d2d;
        background-color: rgba(45, 45, 45, 0.08); } }
  .main-navigation-item:first-child {
    margin-top: 0; }
  .main-navigation-item svg {
    position: absolute;
    top: 50%;
    right: 0.5rem;
    transform: translateY(-50%); }

.main-navigation-item-count {
  font-size: 0.75rem;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.7); }
  @media screen and (min-width: 64em) {
    .main-navigation-item-count {
      color: #dfdfdf; } }

.shortcuts-section.collapsed .shortcuts-content {
  display: none; }

.toggle-button {
  background: none;
  border: none;
  cursor: pointer;
  font-size: 1rem;
  margin-left: 10px; }

.newsletter-heading {
  display: inline-block;
  margin-bottom: calc(1rem - 0.125rem);
  font-weight: 500; }
  .dark .newsletter-heading {
    color: #fff; }

.newsletter-subheading {
  margin: 0 auto 1rem;
  color: #7b7b7b; }
  .dark .newsletter-subheading {
    color: rgba(255, 255, 255, 0.8); }
  .site-footer .newsletter-subheading {
    font-family: "Raleway";
    font-weight: 300; }

.newsletter-subscription-form .form-inline {
  justify-content: center; }
  @media screen and (max-width: 63.9375em) and (min-width: 48em) {
    .newsletter-subscription-form .form-inline {
      justify-content: flex-start; } }

.newsletter-subscription-form .newsletter-input {
  width: 50%;
  max-width: 15.625rem; }

.newsletter-subscription-form .newsletter-button-wrapper .button-small, .newsletter-subscription-form .newsletter-button-wrapper .account-forgot-form .account-button-primary, .account-forgot-form .newsletter-subscription-form .newsletter-button-wrapper .account-button-primary, .newsletter-subscription-form .newsletter-button-wrapper .compare-wishlist .button-secondary, .compare-wishlist .newsletter-subscription-form .newsletter-button-wrapper .button-secondary, .newsletter-subscription-form .newsletter-button-wrapper .compare-wishlist .account-button-secondary, .compare-wishlist .newsletter-subscription-form .newsletter-button-wrapper .account-button-secondary, .newsletter-subscription-form .newsletter-button-wrapper .compare-wishlist [data-payment-method-form] .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist [data-payment-method-form] .newsletter-subscription-form .newsletter-button-wrapper .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .newsletter-subscription-form .newsletter-button-wrapper [data-payment-method-form] .compare-wishlist .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .compare-wishlist .newsletter-subscription-form .newsletter-button-wrapper .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .newsletter-subscription-form .newsletter-button-wrapper .compare-wishlist [data-payment-method-form] .product__quote-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist [data-payment-method-form] .product__quote-form .newsletter-subscription-form .newsletter-button-wrapper ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .newsletter-subscription-form .newsletter-button-wrapper [data-payment-method-form] .product__quote-form .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .product__quote-form .compare-wishlist .newsletter-subscription-form .newsletter-button-wrapper ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .newsletter-subscription-form .newsletter-button-wrapper .compare-wishlist .product__quote-form [data-payment-method-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist .product__quote-form [data-payment-method-form] .newsletter-subscription-form .newsletter-button-wrapper ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .newsletter-subscription-form .newsletter-button-wrapper .product__quote-form [data-payment-method-form] .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__quote-form [data-payment-method-form] .compare-wishlist .newsletter-subscription-form .newsletter-button-wrapper ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
.newsletter-subscription-form .newsletter-button-wrapper .compare-wishlist [data-payment-method-form] .product__request-virtual-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist [data-payment-method-form] .product__request-virtual-form .newsletter-subscription-form .newsletter-button-wrapper ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .newsletter-subscription-form .newsletter-button-wrapper [data-payment-method-form] .product__request-virtual-form .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .product__request-virtual-form .compare-wishlist .newsletter-subscription-form .newsletter-button-wrapper ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .newsletter-subscription-form .newsletter-button-wrapper .compare-wishlist .product__request-virtual-form [data-payment-method-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist .product__request-virtual-form [data-payment-method-form] .newsletter-subscription-form .newsletter-button-wrapper ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .newsletter-subscription-form .newsletter-button-wrapper .product__request-virtual-form [data-payment-method-form] .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__request-virtual-form [data-payment-method-form] .compare-wishlist .newsletter-subscription-form .newsletter-button-wrapper ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
.newsletter-subscription-form .newsletter-button-wrapper .compare-wishlist [data-address-form] .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist [data-address-form] .newsletter-subscription-form .newsletter-button-wrapper .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .newsletter-subscription-form .newsletter-button-wrapper [data-address-form] .compare-wishlist .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .compare-wishlist .newsletter-subscription-form .newsletter-button-wrapper .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .newsletter-subscription-form .newsletter-button-wrapper .compare-wishlist [data-address-form] .product__quote-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist [data-address-form] .product__quote-form .newsletter-subscription-form .newsletter-button-wrapper ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .newsletter-subscription-form .newsletter-button-wrapper [data-address-form] .product__quote-form .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .product__quote-form .compare-wishlist .newsletter-subscription-form .newsletter-button-wrapper ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .newsletter-subscription-form .newsletter-button-wrapper .compare-wishlist .product__quote-form [data-address-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist .product__quote-form [data-address-form] .newsletter-subscription-form .newsletter-button-wrapper ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .newsletter-subscription-form .newsletter-button-wrapper .product__quote-form [data-address-form] .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__quote-form [data-address-form] .compare-wishlist .newsletter-subscription-form .newsletter-button-wrapper ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
.newsletter-subscription-form .newsletter-button-wrapper .compare-wishlist [data-address-form] .product__request-virtual-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist [data-address-form] .product__request-virtual-form .newsletter-subscription-form .newsletter-button-wrapper ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .newsletter-subscription-form .newsletter-button-wrapper [data-address-form] .product__request-virtual-form .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .product__request-virtual-form .compare-wishlist .newsletter-subscription-form .newsletter-button-wrapper ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .newsletter-subscription-form .newsletter-button-wrapper .compare-wishlist .product__request-virtual-form [data-address-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist .product__request-virtual-form [data-address-form] .newsletter-subscription-form .newsletter-button-wrapper ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .newsletter-subscription-form .newsletter-button-wrapper .product__request-virtual-form [data-address-form] .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__request-virtual-form [data-address-form] .compare-wishlist .newsletter-subscription-form .newsletter-button-wrapper ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .newsletter-subscription-form .newsletter-button-wrapper .giftcard-balance-container .button-primary, .giftcard-balance-container .newsletter-subscription-form .newsletter-button-wrapper .button-primary, .newsletter-subscription-form .newsletter-button-wrapper .giftcard-balance-container .account-button-primary, .giftcard-balance-container .newsletter-subscription-form .newsletter-button-wrapper .account-button-primary, .newsletter-subscription-form .newsletter-button-wrapper .giftcard-balance-container .button-contact-submit, .giftcard-balance-container .newsletter-subscription-form .newsletter-button-wrapper .button-contact-submit, .newsletter-subscription-form .newsletter-button-wrapper .giftcard-balance-container .product__quote-form ._submit, .giftcard-balance-container .product__quote-form .newsletter-subscription-form .newsletter-button-wrapper ._submit, .newsletter-subscription-form .newsletter-button-wrapper .product__quote-form .giftcard-balance-container ._submit, .product__quote-form .giftcard-balance-container .newsletter-subscription-form .newsletter-button-wrapper ._submit,
.newsletter-subscription-form .newsletter-button-wrapper .giftcard-balance-container .product__request-virtual-form ._submit, .giftcard-balance-container .product__request-virtual-form .newsletter-subscription-form .newsletter-button-wrapper ._submit, .newsletter-subscription-form .newsletter-button-wrapper .product__request-virtual-form .giftcard-balance-container ._submit, .product__request-virtual-form .giftcard-balance-container .newsletter-subscription-form .newsletter-button-wrapper ._submit {
  min-width: auto; }

.newsletter-summary {
  font-family: "Raleway";
  font-weight: 300;
  color: #7b7b7b; }
  .dark .newsletter-summary {
    color: rgba(255, 255, 255, 0.8); }

.pagination {
  position: relative;
  display: flex;
  justify-content: center;
  margin-top: 2.5rem;
  margin-bottom: 2rem; }

.pagination-item {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  margin-right: 0.5rem;
  margin-left: 0.5rem;
  border: 1px solid #dfdfdf;
  color: rgba(51, 51, 51, 0.5);
  transition: all 0.3s ease; }
  .pagination-item:hover {
    border-color: #2d2d2d;
    color: #2d2d2d;
    opacity: 1; }
  .pagination-item.pagination-current {
    background-color: #2d2d2d;
    border-color: transparent;
    color: white; }
  .infinite-scroll-enabled .pagination-item {
    visibility: hidden; }
  .account-body .pagination-item {
    width: auto;
    height: auto;
    border: 0; }
    .account-body .pagination-item .pagination-page {
      margin-left: 0.5rem; }
    .infinite-scroll-enabled .account-body .pagination-item {
      visibility: visible; }

.form-field-quantity-control {
  position: relative;
  display: block; }
  .form-field-quantity-control .form-input, .form-field-quantity-control .modal-leave-review .product-item-rating, .modal-leave-review .form-field-quantity-control .product-item-rating {
    width: 100%;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
    text-align: center; }
    .cart-item-quantity .form-field-quantity-control .form-input, .cart-item-quantity .form-field-quantity-control .modal-leave-review .product-item-rating, .modal-leave-review .cart-item-quantity .form-field-quantity-control .product-item-rating {
      padding-right: 2rem;
      padding-left: 2rem; }
  .form-field-quantity-control .quantity-control-action {
    position: absolute;
    top: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 2.5rem;
    height: 2.5rem;
    margin-top: -1.25rem;
    cursor: pointer; }
    .form-field-quantity-control .quantity-control-action:hover {
      color: #2d2d2d; }
  .form-field-quantity-control .quantity-decrement {
    left: 0.5rem; }
  .form-field-quantity-control .quantity-increment {
    right: 0.5rem; }

.quick-search {
  position: absolute;
  top: 100%;
  left: 0;
  display: none;
  width: 100%;
  min-height: 6.25rem;
  overflow: hidden;
  background: white;
  border: 1px solid #dfdfdf; }
  .quick-search.animating, .quick-search.visible {
    display: flex; }
  .quick-search.animating-in, .quick-search.animating-out {
    opacity: 0;
    transform: translateY(-10px);
    transition: all 0.3s ease; }
  .quick-search.visible {
    opacity: 1;
    transform: translateY(0); }

.quick-search-inner {
  position: relative;
  display: flex;
  width: 100%; }

.quick-search-list {
  width: 50%;
  max-height: 21.5625rem;
  margin-bottom: 5.3125rem;
  overflow: scroll; }
  .quick-search-list:first-child {
    border-right: 1px solid #dfdfdf; }

.quick-search-loading {
  padding: 1.5rem;
  color: rgba(51, 51, 51, 0.5); }

.quick-search-loader {
  display: block;
  padding-bottom: 1rem; }
  .quick-search-loader:last-child {
    padding-bottom: 0; }

.quick-search-item {
  padding: 1rem; }
  .quick-search-item:hover {
    background: whitesmoke; }

.quick-search-item-link {
  display: block; }

.quick-search-item-image {
  height: 6.25rem;
  background-position: 0 50%;
  background-repeat: no-repeat;
  background-size: contain; }
  .thumbnail-cover .quick-search-item-image {
    background-size: cover; }

.quick-search-item-info {
  margin-top: 1rem; }

.quick-search-link-wrapper {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding-top: 2rem;
  padding-bottom: 2rem;
  text-align: center; }
  .quick-search-link-wrapper a {
    color: #2d2d2d;
    text-transform: uppercase; }
  .quick-search-link-wrapper.no-results {
    display: none; }

.quick-search-section-title {
  font-size: 0.875rem;
  letter-spacing: 0.125rem;
  color: rgba(51, 51, 51, 0.5);
  text-align: center;
  text-transform: uppercase;
  background: whitesmoke; }

.quick-search-item-content-title {
  display: block;
  font-size: 0.75rem;
  text-transform: uppercase; }
  @media screen and (min-width: 33.75em) {
    .quick-search-item-content-title {
      font-size: 1rem; } }

.quick-search-item-content-summary {
  font-size: 0.75rem;
  color: rgba(51, 51, 51, 0.5); }

.quick-search-no-results {
  width: 100%;
  padding: 1.5rem;
  text-align: center; }

.header-section-search {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  flex: 1 1 auto;
  position: relative;
  padding: 1rem 0;
  width: 100%; }
  @media screen and (max-width: 33.6875em) {
    .header-section-search {
      padding: 0.1rem;
      margin-top: 0.2rem;
      width: 100%; } }
  .header-section-search .search-row {
    display: flex;
    align-items: center;
    width: 100%;
    gap: 0.625rem; }
    @media screen and (max-width: 33.6875em) {
      .header-section-search .search-row {
        flex-direction: column;
        align-items: stretch;
        gap: 0.5rem; } }
    .header-section-search .search-row form.search-form {
      flex: 1 1 auto;
      width: 100%; }
    .header-section-search .search-row #learnMoreBtn {
      flex-shrink: 0;
      white-space: nowrap; }
      @media screen and (max-width: 33.6875em) {
        .header-section-search .search-row #learnMoreBtn {
          display: none; } }

.search-input, .form-input, .modal-leave-review .product-item-rating {
  color: black !important;
  background: white !important; }

.search-input::placeholder, .form-input::placeholder, .modal-leave-review .product-item-rating::placeholder {
  color: black !important;
  opacity: 1 !important; }

.search-form {
  display: flex;
  align-items: center;
  width: 100%; }
  .search-form .form-field {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%; }
  .search-form .form-input, .search-form .modal-leave-review .product-item-rating, .modal-leave-review .search-form .product-item-rating {
    flex: 1 1 auto;
    height: 3rem;
    background: white !important;
    font-family: "Raleway";
    letter-spacing: 0.06em;
    border: 1px solid #ddd;
    font-size: 1rem;
    box-sizing: border-box;
    transition: box-shadow 0.3s ease; }
    .search-form .form-input:focus, .search-form .modal-leave-review .product-item-rating:focus, .modal-leave-review .search-form .product-item-rating:focus {
      box-shadow: 0 0 10px rgba(71, 0, 179, 0.3); }
    @media screen and (max-width: 33.6875em) {
      .search-form .form-input, .search-form .modal-leave-review .product-item-rating, .modal-leave-review .search-form .product-item-rating {
        line-height: 2.5rem;
        font-size: 0.75rem; } }
  .search-form .button-search-submit {
    padding: 0;
    font-family: inherit;
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0.85rem 1.4rem;
    background: #4700b3;
    color: white;
    border: none;
    cursor: pointer;
    transition: background 0.3s ease;
    border-radius: 0; }
    .search-form .button-search-submit:hover {
      background: #7b2ff7; }
    .search-form .button-search-submit svg {
      fill: white; }

.share-links {
  margin: 1rem 0;
  background: transparent; }

.share-link {
  display: inline-block;
  padding-right: 0.5rem;
  color: rgba(51, 51, 51, 0.8); }
  .share-link:last-child {
    padding-right: 0; }
  .share-link:hover {
    color: #2d2d2d; }

.blog-item {
  flex: 0 1 auto;
  margin-right: 0.5rem;
  margin-left: 0.5rem;
  width: calc(33.33333% - 1rem); }
  @media screen and (min-width: 48em) {
    .blog-item {
      margin-right: 0.75rem;
      margin-left: 0.75rem; } }
  @media screen and (min-width: 64em) {
    .blog-item {
      margin-right: 1.25rem;
      margin-left: 1.25rem; } }
  @media screen and (min-width: 48em) {
    .blog-item {
      width: calc(33.33333% - 1.5rem); } }
  @media screen and (min-width: 64em) {
    .blog-item {
      width: calc(33.33333% - 2.5rem); } }
  .blog-index-grid .blog-item {
    margin-bottom: 1rem; }
    @media screen and (min-width: 48em) {
      .blog-index-grid .blog-item {
        margin-bottom: 1.5rem; } }
    @media screen and (min-width: 64em) {
      .blog-index-grid .blog-item {
        margin-bottom: 2.5rem; } }
    @media screen and (max-width: 33.6875em) {
      .blog-index-grid .blog-item {
        width: calc(100% - 1rem); } }
  @media screen and (max-width: 33.6875em) and (min-width: 48em) {
    .blog-index-grid .blog-item {
      width: calc(100% - 1.5rem); } }
  @media screen and (max-width: 33.6875em) and (min-width: 64em) {
    .blog-index-grid .blog-item {
      width: calc(100% - 2.5rem); } }
    @media screen and (max-width: 47.9375em) {
      .blog-index-grid .blog-item {
        width: calc(50% - 1rem); } }
  @media screen and (max-width: 47.9375em) and (min-width: 48em) {
    .blog-index-grid .blog-item {
      width: calc(50% - 1.5rem); } }
  @media screen and (max-width: 47.9375em) and (min-width: 64em) {
    .blog-index-grid .blog-item {
      width: calc(50% - 2.5rem); } }
    @media screen and (max-width: 74.9375em) and (min-width: 64em) {
      .blog-index-grid .blog-item {
        width: calc(50% - 1rem); } }
  @media screen and (max-width: 74.9375em) and (min-width: 64em) and (min-width: 48em) {
    .blog-index-grid .blog-item {
      width: calc(50% - 1.5rem); } }
  @media screen and (max-width: 74.9375em) and (min-width: 64em) and (min-width: 64em) {
    .blog-index-grid .blog-item {
      width: calc(50% - 2.5rem); } }

.blog-item-thumbnail {
  position: relative;
  overflow: hidden;
  margin: 0;
  border: 0.5px solid #898989; }
  .blog-item-thumbnail:hover img {
    transform: translate3d(0, 0, 0) scale(1.1); }
  .blog-item-thumbnail img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    height: auto;
    width: 95%;
    transition: all 0.2s ease; }

.blog-item-content {
  margin-top: 1.25rem; }
  @media screen and (min-width: 75em) {
    .blog-item-content {
      margin-top: 2rem; } }
  .blog-item-content.no-thumbnail {
    margin-top: 0; }
    .blog-item-content.no-thumbnail::before {
      display: block;
      width: 100%;
      height: 0.0625rem;
      background-color: #dfdfdf;
      content: ""; }
      @media screen and (min-width: 33.75em) {
        .blog-item-content.no-thumbnail::before {
          width: 4.6875rem; } }

.blog-item-title {
  font-family: "Typo Grotesk Regular";
  font-size: 1.5rem;
  line-height: 1.4em;
  color: #333333;
  text-transform: none; }
  @media screen and (min-width: 75em) {
    .blog-item-title {
      margin-bottom: 0.5rem; } }
  .no-thumbnail .blog-item-title {
    padding-top: 1rem; }

.blog-item-summary {
  margin-top: 0;
  margin-bottom: 1rem;
  font-family: "Raleway";
  color: rgba(51, 51, 51, 0.8); }
  @media screen and (min-width: 75em) {
    .blog-item-summary {
      margin-bottom: 1.5rem; } }

.account-wrapper {
  font-size: 15px; }

.account-nav,
.account-body {
  vertical-align: top; }

@media screen and (min-width: 620px) {
  .account-body {
    float: right;
    width: 65%;
    padding-left: 15px; } }

@media screen and (min-width: 900px) {
  .account-body {
    width: 75%; } }

.account-body > :first-child {
  margin-top: 0; }

.account-nav-hidden .account-body {
  float: none;
  width: 100%;
  padding-left: 0;
  margin-left: 0; }

@media screen and (max-width: 619px) {
  .account-nav {
    margin-bottom: 30px; } }

@media screen and (min-width: 620px) {
  .account-nav {
    float: left;
    width: 35%;
    padding-right: 15px; } }

@media screen and (min-width: 900px) {
  .account-nav {
    width: 25%; } }

.account-wrapper .form-label-text, .account-wrapper .shipping-calculator .form-field-radio span, .shipping-calculator .form-field-radio .account-wrapper span {
  display: inline-block;
  width: 100%;
  margin-bottom: 5px; }

.account-wrapper .form-field-checkbox .form-label-text, .account-wrapper .form-field-checkbox .shipping-calculator .form-field-radio span, .shipping-calculator .form-field-radio .account-wrapper .form-field-checkbox span,
.account-wrapper .form-field-radio .form-label-text,
.account-wrapper .shipping-calculator .form-field-radio span,
.shipping-calculator .account-wrapper .form-field-radio span {
  width: auto; }

.account-wrapper .form-field {
  margin-bottom: 15px; }

.account-wrapper .form-input, .account-wrapper .modal-leave-review .product-item-rating, .modal-leave-review .account-wrapper .product-item-rating {
  width: 100%; }
  .account-wrapper .form-input.account-form-half, .account-wrapper .modal-leave-review .account-form-half.product-item-rating, .modal-leave-review .account-wrapper .account-form-half.product-item-rating {
    width: 50%; }

.account-wrapper .form-actions {
  clear: both; }

@media screen and (min-width: 480px) {
  .account-form-column-container .form-field {
    float: left;
    width: 50%; }
    .account-form-column-container .form-field:nth-child(odd) {
      padding-right: 15px; }
    .account-form-column-container .form-field:nth-child(even) {
      padding-left: 15px; } }

.account-wrapper table {
  width: 100%;
  margin-top: 15px;
  margin-bottom: 15px; }

.account-wrapper td,
.account-wrapper th {
  padding: 15px; }

.account-table-tight th,
.account-table-tight td {
  padding: 10px 0;
  border-bottom: 1px solid #dfdfdf; }

.account-items {
  margin-bottom: 30px; }

.account-item {
  position: relative;
  display: table;
  width: 100%;
  border-bottom: 1px solid #dfdfdf; }
  .account-item:first-of-type {
    border-top: 1px solid #dfdfdf; }

.account-item-thumbnail,
.account-item-body,
.account-item-badge,
.account-item-actions {
  padding-top: 15px;
  padding-bottom: 15px; }
  @media screen and (min-width: 400px) {
    .account-item-thumbnail,
    .account-item-body,
    .account-item-badge,
    .account-item-actions {
      display: table-cell;
      vertical-align: top; } }

.account-item-checkbox {
  display: table-cell;
  min-width: 30px;
  margin-bottom: 0;
  vertical-align: middle; }

.account-item-link {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100; }

.account-item-thumbnail {
  min-width: 100px; }
  .account-item-thumbnail img {
    height: auto;
    max-width: 100px; }

.account-item-body {
  width: 100%; }
  @media screen and (min-width: 400px) {
    .account-item-thumbnail + .account-item-body {
      padding-left: 15px; } }

.account-item-title {
  margin-top: 3px;
  font-size: 15px; }
  .account-item-title a {
    color: inherit; }

.account-item-title-large {
  font-size: 18px; }

.account-item-description {
  margin-top: 0;
  margin-bottom: 5px;
  color: #333333; }

.account-item-details {
  font-size: 15px;
  color: #333333; }

.account-item-detail {
  float: left;
  margin-top: 15px;
  margin-right: 30px; }

.account-item-detail-title {
  display: block;
  margin-top: 0;
  margin-bottom: 3px;
  font-size: 12px;
  font-weight: normal;
  letter-spacing: 1px;
  color: #adadad;
  text-transform: uppercase; }

.account-item-actions {
  white-space: nowrap; }

.account-header {
  display: table;
  width: 100%;
  margin-bottom: 15px; }

.account-heading,
.account-toolbar {
  display: table-cell;
  vertical-align: baseline; }
  .account-heading .alert-error,
  .account-toolbar .alert-error {
    display: none; }

.account-toolbar {
  text-align: right; }
  .account-toolbar * {
    display: inline; }

.account-tool {
  position: relative;
  z-index: 10;
  display: inline-block;
  padding: 0;
  background: transparent;
  margin-left: 10px;
  cursor: pointer;
  color: inherit;
  border: 0; }
  .account-tool:hover {
    color: #333333; }
  .account-tool:focus {
    outline: 0; }

.account-nav-list {
  padding: 0;
  margin-bottom: 15px;
  list-style: none;
  border: 1px solid #dfdfdf;
  border-radius: 0; }

.account-nav-item {
  color: #333333;
  border-top: 1px solid #dfdfdf; }
  .account-nav-item:first-child {
    border-top: 0; }
  .account-nav-item.is-active {
    color: #2d2d2d;
    border-left: 3px solid #2d2d2d; }

.account-nav-link {
  display: block;
  padding: 15px;
  color: inherit; }

.account-nav-badge {
  float: right; }

.account-wrapper .pagination {
  margin-top: 15px; }

.account-card, .payment-method-details, .payment-method-edit-form {
  background: #f5f5f5; }
  .account-card .form-input, .payment-method-details .form-input, .payment-method-edit-form .form-input, .account-card .modal-leave-review .product-item-rating, .modal-leave-review .account-card .product-item-rating, .payment-method-details .modal-leave-review .product-item-rating, .modal-leave-review .payment-method-details .product-item-rating, .payment-method-edit-form .modal-leave-review .product-item-rating, .modal-leave-review .payment-method-edit-form .product-item-rating {
    background-color: #fff; }

.account-card {
  padding: 15px;
  margin: 15px 0;
  border-radius: 0; }

.account-toggle-hidden {
  display: none; }

.account-status {
  padding: 6px 10px 5px;
  margin: 0;
  font-size: 12px;
  font-weight: normal;
  letter-spacing: 1px;
  color: #fff;
  text-align: center;
  text-transform: uppercase;
  background: #8e8e8e; }

.account-shipments {
  margin-bottom: 30px; }

.account-shipments-table th,
.account-shipments-table td {
  padding: 10px 0;
  text-align: left; }

.account-shipments-table th {
  padding: 15px 0 0;
  border-top: 1px solid #dfdfdf; }

.account-wrapper .account-shipments-table {
  margin-top: 0;
  margin-bottom: 0; }

.payment-method-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }

.payment-method-name {
  width: 100%; }

.payment-method {
  display: flex;
  align-content: center;
  justify-content: center;
  min-height: 250px;
  margin-bottom: 30px;
  text-align: center;
  border: 1px solid #dfdfdf; }
  @media screen and (min-width: 400px) {
    .payment-method {
      width: calc(50% - 15px); } }
  .payment-method .panel-payment-method {
    display: block; }
    .payment-method .panel-payment-method:hover .payment-method-title {
      color: #2d2d2d; }
  .payment-method .panel-new-payment-method {
    position: relative;
    width: 100%;
    min-width: 305px; }
    .payment-method .panel-new-payment-method .panel-body {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%); }
  .payment-method .payment-method-new-icon {
    width: 30px;
    height: 30px; }

.payment-method-card {
  display: flex;
  justify-content: space-between;
  padding: 0 20px;
  margin-top: 20px; }

.payment-method-brand-contianer {
  display: flex; }

.payment-method-icon-card {
  width: 40px;
  height: 30px; }

.payment-method-brand {
  padding-top: 2px;
  padding-left: 10px; }

.payment-method-default-icon {
  width: 24px;
  height: 24px;
  padding-left: 5px; }

.payment-method-expiry {
  display: flex; }

.payment-method-details {
  display: flex;
  justify-content: space-between;
  padding: 20px;
  margin-top: 30px; }
  .payment-method-details .payment-methods-label {
    width: calc(50% - 20px); }
    @media screen and (min-width: 400px) {
      .payment-method-details .payment-methods-label {
        width: calc(40% - 20px); } }
  .payment-method-details .payment-method-description {
    width: calc(50% - 20px);
    text-align: right; }
    @media screen and (min-width: 400px) {
      .payment-method-details .payment-method-description {
        width: calc(60% - 20px); } }

.payment-method-edit-form {
  padding: 30px 20px 20px; }
  .payment-method-edit-form .form-actions {
    text-align: left; }

.account-page-add-address .account-content {
  padding-top: 15px;
  border-top: 1px solid #dfdfdf; }

.account-address-detail {
  display: block; }

.account-address-form {
  padding-top: 15px; }
  @media screen and (min-width: 900px) {
    .account-address-form .form-field {
      float: left;
      width: 50%;
      padding-right: 15px; }
      .account-address-form .form-field:nth-of-type(2n) {
        padding-right: 0;
        padding-left: 15px; }
      .account-address-form .form-field:nth-of-type(2n + 1) {
        clear: left; } }
  .account-address-form .form-actions {
    padding-top: 15px; }

.account-page-orders-receipt .account-content {
  padding-top: 15px;
  border-top: 1px solid #dfdfdf; }

.account-receipt-summary {
  float: left;
  width: 33%;
  padding-right: 30px; }
  @media screen and (max-width: 900px) {
    .account-receipt-summary {
      width: 100%;
      padding-right: 0;
      padding-bottom: 30px; } }

.account-receipt-summary-title {
  margin-top: 5px;
  margin-bottom: 10px;
  font-size: 15px; }

.account-receipt-summary-address {
  line-height: 1.5; }

.account-receipt-detail {
  margin-bottom: 5px; }

.account-receipt-detail-title {
  color: #666666; }

.account-receipt-comments {
  white-space: pre-line; }

.account-receipt-items {
  padding-top: 15px; }

.account-receipt-download {
  margin: 10px 0; }

.account-receipt-totals {
  display: table;
  width: 50%;
  margin-left: 50%; }
  @media screen and (max-width: 620px) {
    .account-receipt-totals {
      width: 100%;
      margin-left: 0; } }

.account-receipt-total {
  display: table-row;
  margin-bottom: 15px; }

.account-receipt-total-title,
.account-receipt-total-value {
  display: table-cell;
  padding-top: 15px;
  padding-bottom: 15px;
  border-top: 1px solid #dfdfdf; }
  .account-receipt-total:first-of-type .account-receipt-total-title, .account-receipt-total:first-of-type
  .account-receipt-total-value {
    border-top: 0; }

.account-receipt-total-title {
  font-weight: normal;
  letter-spacing: 1px;
  color: #666666; }

.account-receipt-total-value {
  text-align: right; }

.account-return-table th {
  text-align: left; }
  .account-return-table th:last-of-type {
    text-align: right; }

.account-return-table .form-field {
  margin-bottom: 0; }

.account-return-fields {
  margin-top: 30px; }
  .account-return-fields .form-field-select {
    width: 50%; }

.account-wishlists {
  margin-bottom: 30px; }

.account-messages-table.table-clean {
  border-bottom: 1px solid #dfdfdf; }
  .account-messages-table.table-clean td {
    padding-right: 0;
    padding-left: 0;
    vertical-align: top;
    border-top: 1px solid #dfdfdf; }

.account-messages-table-date {
  width: 22%;
  text-align: right; }

.account-message-subject {
  margin-top: 0;
  margin-bottom: 10px;
  font-size: 17px;
  font-weight: 500; }
  .account-message-is-reply .account-message-subject:before {
    padding-right: 5px;
    content: "\21c9"; }
  .account-message-is-read .account-message-subject {
    color: #666666; }

.account-message-content {
  padding-right: 30px;
  font-size: 15px;
  line-height: 1.5;
  color: #333333;
  white-space: pre-line; }
  .account-message-is-read .account-message-content {
    color: gray; }

.account-message-date {
  color: #666666; }

.account-messages-form-subject {
  width: 50%; }

.account-download {
  padding: 15px 0 0;
  margin: 15px 0;
  border-top: 1px solid #dfdfdf; }

.account-download-title {
  margin: 0;
  font-size: 1em; }

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

.account-download-filename {
  font-size: 1.2em; }

.account-download-filesize {
  padding-left: 5px;
  font-weight: normal;
  color: #666666; }

.account-download-description {
  padding-top: 10px;
  padding-bottom: 10px; }

.account-download-expiry {
  font-size: 0.9em;
  color: #666666; }

.account-download-expiry-item {
  display: block;
  padding-bottom: 5px; }
  .account-download-expiry-item:last-of-type {
    padding-bottom: 0; }

.account-downloads-gallery-image {
  text-align: center; }

.account-downloads-gallery-thumbs {
  text-align: center; }

.account-downloads-gallery-thumb {
  display: inline-block;
  width: 10%;
  height: 10%;
  padding: 0 2px;
  vertical-align: middle;
  cursor: pointer; }
  .account-downloads-gallery-thumb img {
    width: 100%;
    height: auto; }

.account-invoice-date {
  margin-top: -20px;
  font-size: 15px; }

.account-invoice-addresses {
  margin-top: 30px;
  margin-bottom: 30px; }

.account-invoice-address {
  float: left;
  margin-right: 30px; }

.account-invoice-address-title {
  margin-top: 5px;
  margin-bottom: 10px;
  font-size: 15px; }

.account-invoice-address-body {
  line-height: 1.5; }

.account-wrapper .account-invoice-table {
  margin-bottom: 0; }

.account-invoice-table th,
.account-invoice-table td {
  padding-right: 15px;
  text-align: left;
  vertical-align: top; }
  .account-invoice-table th:nth-of-type(0n+3),
  .account-invoice-table td:nth-of-type(0n+3) {
    width: 10%; }
  .account-invoice-table th:last-of-type,
  .account-invoice-table td:last-of-type {
    width: 160px;
    padding-right: 0;
    text-align: right; }

.account-invoice-table td:first-of-type {
  width: 85px; }

.account-invoice-item-thumbnail {
  width: 60px;
  height: auto; }

.account-invoice-item-name {
  margin-bottom: 5px;
  font-weight: bold; }

.account-invoice-total-title {
  font-weight: bold; }

.account-wrapper .account-invoice-totals {
  width: auto;
  margin-top: 0;
  margin-left: auto; }

.account-invoice-totals th,
.account-invoice-totals td {
  padding-right: 15px; }
  .account-invoice-totals th:last-of-type,
  .account-invoice-totals td:last-of-type {
    width: 160px;
    padding-right: 0;
    text-align: right; }

.account-page-settings .alert:first-of-type {
  margin-top: 0; }

.account-page-settings .account-content {
  padding-top: 15px;
  border-top: 1px solid #dfdfdf; }

.account-settings-form {
  padding-top: 15px; }
  .account-settings-form .form-field {
    float: left;
    width: 50%;
    padding-right: 7.5px;
    vertical-align: top; }
    .account-settings-form .form-field:nth-of-type(2n+0) {
      padding-right: 0;
      padding-left: 7.5px; }
  .account-settings-form .form-actions {
    padding-top: 15px; }

.account-page-payment .account-content {
  padding-top: 15px;
  border-top: 1px solid #dfdfdf; }

@media screen and (min-width: 400px) {
  .payment-method-form {
    max-width: 60%; } }

.payment-method-form .payment-method-form-column {
  display: flex; }
  .payment-method-form .payment-method-form-column .payment-method-form-inputs {
    width: 70%; }
    .payment-method-form .payment-method-form-column .payment-method-form-inputs:last-child {
      width: 30%;
      padding-left: 10px; }
    .payment-method-form .payment-method-form-column .payment-method-form-inputs.payment-card-number, .payment-method-form .payment-method-form-column .payment-method-form-inputs.payment-cvv {
      position: relative; }
    .payment-method-form .payment-method-form-column .payment-method-form-inputs .payment-method-form-inputs-icon {
      position: absolute;
      top: 50px;
      right: 10px;
      width: 24px;
      height: 24px;
      fill: currentColor; }

.payment-method-form .form-field-checkbox {
  display: flex;
  align-content: center; }
  .payment-method-form .form-field-checkbox .form-field-title {
    position: relative;
    top: 1px;
    margin-bottom: 0; }

.payment-method-form .form-field-control {
  width: 20px; }

.payment-method-form .payment-method-form-details {
  display: inline-block;
  margin-bottom: 30px; }
  .payment-method-form .payment-method-form-details:first-child {
    margin-right: 30px; }

.payment-method-form .payment-method-form-details-description {
  margin-left: 0;
  font-weight: 700; }

.payment-method-form-subheading {
  margin: 0; }

.payment-method-form-cards-icon {
  width: 40px;
  margin-right: 5px; }

.billing-heading {
  margin: 0; }

.billing-addess-form {
  padding-top: 15px;
  border-top: 1px solid #dfdfdf; }
  .billing-addess-form .form-field {
    width: 100%; }
    @media screen and (min-width: 400px) {
      .billing-addess-form .form-field {
        float: left;
        width: 50%;
        padding-right: 7.5px; }
        .billing-addess-form .form-field:nth-of-type(2n + 1) {
          clear: left; } }

.billing-actions .button + .button, .billing-actions .product__quote-form ._submit + .button, .product__quote-form .billing-actions ._submit + .button, .billing-actions .product__request-virtual-form ._submit + .button, .product__request-virtual-form .billing-actions ._submit + .button, .billing-actions .product__quote-form .button + ._submit, .product__quote-form .billing-actions .button + ._submit, .billing-actions .product__quote-form ._submit + ._submit, .product__quote-form .billing-actions ._submit + ._submit,
.billing-actions .product__request-virtual-form .button + ._submit, .product__request-virtual-form .billing-actions .button + ._submit,
.billing-actions .product__request-virtual-form ._submit + ._submit, .product__request-virtual-form .billing-actions ._submit + ._submit {
  margin-top: 20px; }
  @media screen and (min-width: 400px) {
    .billing-actions .button + .button, .billing-actions .product__quote-form ._submit + .button, .product__quote-form .billing-actions ._submit + .button, .billing-actions .product__request-virtual-form ._submit + .button, .product__request-virtual-form .billing-actions ._submit + .button, .billing-actions .product__quote-form .button + ._submit, .product__quote-form .billing-actions .button + ._submit, .billing-actions .product__quote-form ._submit + ._submit, .product__quote-form .billing-actions ._submit + ._submit,
    .billing-actions .product__request-virtual-form .button + ._submit, .product__request-virtual-form .billing-actions .button + ._submit,
    .billing-actions .product__request-virtual-form ._submit + ._submit, .product__request-virtual-form .billing-actions ._submit + ._submit {
      margin-top: 0;
      margin-left: 5px; } }

.account-page-login .alert {
  max-width: 860px;
  margin-top: 0;
  margin-right: auto;
  margin-bottom: 30px;
  margin-left: auto; }

.account-login-wrapper {
  max-width: 860px;
  margin-right: auto;
  margin-left: auto; }
  @media screen and (min-width: 620px) {
    .account-login-wrapper {
      display: table;
      width: 100%;
      table-layout: fixed; } }

.account-page-login .account-sub-heading {
  margin: 0 0 20px; }

@media screen and (min-width: 620px) {
  .account-login,
  .account-create {
    display: table-cell;
    vertical-align: top; } }

@media screen and (max-width: 619px) {
  .account-login {
    margin-bottom: 30px; } }

@media screen and (min-width: 620px) {
  .account-login {
    padding: 15px 45px 15px 0; } }

.account-login-button {
  margin-right: 15px; }

.account-create {
  padding: 15px;
  background: #f5f5f5; }

.account-create-intro:empty {
  display: none; }

.account-create-facts {
  padding-left: 20px;
  margin-bottom: 30px;
  list-style: disc; }
  .account-create-facts li:empty {
    display: none; }

.account-page-forgot .account-body {
  width: 100%;
  max-width: 600px;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
  float: none; }

.account-forgot-form {
  display: table;
  width: 100%;
  margin-top: 30px; }
  .account-forgot-form .form-field,
  .account-forgot-form .form-actions {
    display: table-cell;
    text-align: left;
    vertical-align: bottom; }
  .account-forgot-form .form-actions {
    width: 1px;
    padding-left: 10px; }

.account-page-create .account-header {
  padding-bottom: 15px;
  margin-bottom: 30px;
  border-bottom: 1px solid #dfdfdf; }

.account-page-create .account-body {
  max-width: 860px;
  margin-right: auto;
  margin-left: auto; }

.account-create-form .g-recaptcha > div {
  margin: 0 auto; }

@media screen and (min-width: 620px) {
  .account-create-form .form-field {
    float: left;
    width: 50%;
    padding-right: 15px; }
    .account-create-form .form-field:nth-of-type(2n) {
      padding-right: 0;
      padding-left: 15px; }
    .account-create-form .form-field:nth-of-type(2n + 1) {
      clear: left; } }

.account-create-details,
.account-create-address {
  padding-bottom: 15px;
  margin-bottom: 30px;
  border-bottom: 1px solid #dfdfdf; }

.account-create-form-actions {
  text-align: center; }

.account-create-captcha {
  display: inline-block;
  vertical-align: middle; }
  @media screen and (max-width: 619px) {
    .account-create-captcha {
      margin-bottom: 15px; } }
  @media screen and (min-width: 620px) {
    .account-create-captcha {
      margin-right: 15px; } }

.account-page-created .account-body {
  float: none;
  width: 100%;
  max-width: 600px;
  margin-right: auto;
  margin-left: auto;
  text-align: center; }
  .account-page-created .account-body p {
    margin-bottom: 30px;
    line-height: 1.5; }
  .account-page-created .account-body em {
    font-family: monospace;
    font-style: normal;
    font-weight: bold;
    background: #f5f5f5; }

.account-page-new-password .account-content {
  width: 100%;
  max-width: 400px;
  margin-right: auto;
  margin-left: auto; }

.new-password-requirements {
  margin-bottom: 30px;
  text-align: center; }

.giftcard-nav {
  padding: 60px;
  margin-bottom: 60px;
  text-align: center; }

.giftcard-nav-item {
  display: inline-block;
  margin: 0 1em;
  color: #333333; }
  .giftcard-nav-item.is-active {
    color: #333333; }

.giftcard-heading-container {
  margin-bottom: 60px;
  text-align: center; }

.giftcard-form-help-message {
  display: block;
  margin-top: 6px; }

.giftcard-form-preview iframe {
  width: 100%; }

.giftcard-single-theme {
  display: none; }

.giftcard-balance-container {
  max-width: 600px;
  margin: 0 auto; }

.form-giftcard-balance {
  position: relative; }
  .form-giftcard-balance .form-field-title {
    position: absolute;
    left: -9999px; }
  .form-giftcard-balance .form-field-control {
    display: block; }
    @media screen and (min-width: 630px) {
      .form-giftcard-balance .form-field-control {
        margin-right: calc(30% + 15px); } }
  @media screen and (min-width: 630px) {
    .form-giftcard-balance .form-actions {
      position: absolute;
      top: 0;
      right: 0;
      width: 30%; } }
  .form-giftcard-balance .button, .form-giftcard-balance .product__quote-form ._submit, .product__quote-form .form-giftcard-balance ._submit,
  .form-giftcard-balance .product__request-virtual-form ._submit, .product__request-virtual-form .form-giftcard-balance ._submit {
    width: 100%; }

.giftcard-redeem-steps {
  line-height: 1.5; }
  .giftcard-redeem-steps li {
    margin-bottom: 0.75em; }

.form-field-swatch .swatch-none .swatch {
  overflow: hidden;
  border: 1px solid rgba(0, 0, 0, 0.15); }
  .form-field-swatch .swatch-none .swatch svg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }

.price-ns-label,
.price-value-label,
.price-rrp-label {
  word-break: break-word; }

.price-rrp,
.price-ns {
  text-decoration: line-through; }

.cookie-message {
  text-align: center;
  margin-bottom: 15px; }

.cookie-message-container {
  padding: 0 15px;
  margin: 0 auto; }

.account-tool {
  z-index: 3; }

.account-nav {
  width: 100%; }

.account-nav-list {
  margin-bottom: 0.5rem;
  text-align: center;
  border: 0; }

.account-nav-item {
  display: inline-block;
  padding: 1rem 1rem 1rem 0;
  border-top: 0; }
  .account-nav-item.is-active {
    border-left: 0; }
  .account-nav-item:last-child {
    padding-right: 0; }

.account-nav-link {
  padding: 0; }

@media screen and (max-width: 47.9375em) {
  .account-toolbar,
  .account-heading {
    display: block; } }

.account-toolbar {
  padding-top: 10px; }
  @media screen and (max-width: 47.9375em) {
    .account-toolbar {
      text-align: center; } }
  .account-toolbar .alert-error {
    margin-top: 10px;
    margin-bottom: 10px;
    text-align: left;
    line-height: 34px; }

.account-body {
  float: none;
  width: 100%;
  padding-left: 0; }
  .account-body .account-heading {
    padding-top: 1rem; }

.account-wrapper {
  margin-top: 2rem;
  margin-bottom: 2rem; }
  .account-wrapper .pagination-next {
    color: #2d2d2d; }

.account-heading {
  font-family: "Typo Grotesk Regular";
  font-size: 2rem;
  line-height: 1.4em;
  color: #333333; }

.account-button-primary.account-login-button, .account-button-primary.account-button-small {
  min-width: auto; }

.account-button-secondary {
  margin-top: 1rem; }
  @media screen and (min-width: 48em) {
    .account-button-secondary {
      margin-top: 0;
      margin-left: 1.25em; } }

.account-forgot-password-link {
  color: #2d2d2d; }

.account-content .form-actions .button, .account-content .form-actions .product__quote-form ._submit, .product__quote-form .account-content .form-actions ._submit,
.account-content .form-actions .product__request-virtual-form ._submit, .product__request-virtual-form .account-content .form-actions ._submit,
.account-content .account-item-actions .button,
.account-content .account-item-actions .product__quote-form ._submit,
.product__quote-form .account-content .account-item-actions ._submit,
.account-content .account-item-actions .product__request-virtual-form ._submit,
.product__request-virtual-form .account-content .account-item-actions ._submit {
  overflow: visible; }

.account-content .alert {
  height: auto;
  padding: 0.5rem 0;
  line-height: 1.25rem; }

.account-product-wrapper {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.5rem;
  margin-left: -0.5rem; }
  @media screen and (min-width: 48em) {
    .account-product-wrapper {
      margin-right: -0.75rem;
      margin-left: -0.75rem; } }
  @media screen and (min-width: 64em) {
    .account-product-wrapper {
      margin-right: -1.25rem;
      margin-left: -1.25rem; } }

.account-product-item {
  flex: 0 1 auto;
  margin-right: 0.5rem;
  margin-left: 0.5rem;
  width: calc(50% - 1rem);
  margin-bottom: 1rem;
  position: relative;
  text-align: center; }
  @media screen and (min-width: 48em) {
    .account-product-item {
      margin-right: 0.75rem;
      margin-left: 0.75rem; } }
  @media screen and (min-width: 64em) {
    .account-product-item {
      margin-right: 1.25rem;
      margin-left: 1.25rem; } }
  @media screen and (min-width: 48em) {
    .account-product-item {
      width: calc(50% - 1.5rem); } }
  @media screen and (min-width: 64em) {
    .account-product-item {
      width: calc(50% - 2.5rem); } }
  @media screen and (min-width: 48em) {
    .account-product-item {
      margin-bottom: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .account-product-item {
      margin-bottom: 2.5rem; } }
  .account-product-item figure {
    margin: 0; }

.account-product-item-remove input {
  position: absolute;
  top: 0;
  right: 0;
  width: 2rem;
  height: 2rem;
  font-size: 1.5rem;
  background: #fff;
  border: 0; }

.account-product-item-brand {
  display: none; }

.account-product-item-price {
  display: block;
  margin-top: 0.5rem; }

.account-create {
  background: white;
  border: 1px solid #dfdfdf; }

.account-create-details,
.account-create-address {
  display: inline-block;
  width: 100%; }

.account-forgot-form .form-label {
  padding-bottom: 0; }

.payment-method-form .form-checkbox {
  position: relative !important;
  top: 3px;
  width: 18px !important;
  height: 18px !important;
  clip: auto;
  -webkit-appearance: checkbox; }

[data-payment-method-form] .payment-method-form-inputs .form-field-control,
[data-address-form] .payment-method-form-inputs .form-field-control {
  width: 100%; }

[data-payment-method-form] .payment-method-form-inputs-icon,
[data-address-form] .payment-method-form-inputs-icon {
  top: 43px !important; }

[data-payment-method-form] .payment-method-form-subheading,
[data-address-form] .payment-method-form-subheading {
  margin: 0.5rem 0; }

.payment-method .payment-method-details {
  margin-bottom: 0; }

@media screen and (max-width: 47.9375em) {
  .payment-method {
    width: 100%; } }

.payment-method-edit-form .button, .payment-method-edit-form .product__quote-form ._submit, .product__quote-form .payment-method-edit-form ._submit,
.payment-method-edit-form .product__request-virtual-form ._submit, .product__request-virtual-form .payment-method-edit-form ._submit {
  min-width: auto; }

.brand-item {
  width: calc(50% - 1rem);
  margin-bottom: 1rem;
  position: relative;
  height: 100%;
  overflow: hidden;
  border: 1px solid #dfdfdf; }
  @media screen and (min-width: 48em) {
    .brand-item {
      width: calc(50% - 1.5rem); } }
  @media screen and (min-width: 64em) {
    .brand-item {
      width: calc(50% - 2.5rem); } }
  @media screen and (min-width: 48em) {
    .brand-item {
      margin-bottom: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .brand-item {
      margin-bottom: 2.5rem; } }
  @media screen and (min-width: 48em) {
    .brand-item {
      width: calc(33.33333% - 1rem); } }
  @media screen and (min-width: 48em) and (min-width: 48em) {
    .brand-item {
      width: calc(33.33333% - 1.5rem); } }
  @media screen and (min-width: 48em) and (min-width: 64em) {
    .brand-item {
      width: calc(33.33333% - 2.5rem); } }
  .brand-item a:hover {
    opacity: 1; }
  .brand-item:hover img {
    transform: translate3d(0, 0, 0) scale(1.1); }
  .brand-item .brand-item-image {
    width: 100%;
    padding-bottom: 100%;
    position: relative;
    overflow: hidden; }
  .brand-item img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    transition: all 0.2s ease-out; }
  .brand-item.no-brand-image {
    height: auto; }
    .brand-item.no-brand-image:hover {
      background: #2d2d2d;
      border-color: #2d2d2d;
      transition: all 0.2s ease-out; }
      .brand-item.no-brand-image:hover a {
        color: #fff; }
      .brand-item.no-brand-image:hover:active::before {
        opacity: 0.1;
        transform: scale(0, 0);
        transition-duration: 0s; }
    .brand-item.no-brand-image .brand-name {
      background-color: transparent; }
  .brand-item .brand-name {
    position: absolute;
    top: 50%;
    width: 100%;
    text-align: center;
    background: rgba(255, 255, 255, 0.8);
    transform: translateY(-50%); }

.brand-item-title {
  font-family: "Typo Grotesk Regular";
  font-size: 1rem;
  line-height: 1.4em;
  color: #333333;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 45% 0; }

.compare-grid-wrapper {
  position: relative;
  padding-top: 1rem;
  padding-bottom: 5rem; }

.compare-grid:not(.flickity-enabled) {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.5rem;
  margin-left: -0.5rem; }
  @media screen and (min-width: 48em) {
    .compare-grid:not(.flickity-enabled) {
      margin-right: -0.75rem;
      margin-left: -0.75rem; } }
  @media screen and (min-width: 64em) {
    .compare-grid:not(.flickity-enabled) {
      margin-right: -1.25rem;
      margin-left: -1.25rem; } }

.compare-grid::after {
  display: none;
  content: "flickity"; }
  @media screen and (min-width: 112.5em) {
    .compare-grid::after {
      content: ""; } }

.compare-grid .flickity-page-dots {
  bottom: calc(100% + 1rem); }

.compare-grid-item {
  flex: 0 1 auto;
  margin-right: 0.5rem;
  margin-left: 0.5rem;
  flex: 1 0 auto;
  width: 80vw;
  max-width: 19.375rem; }
  @media screen and (min-width: 48em) {
    .compare-grid-item {
      margin-right: 0.75rem;
      margin-left: 0.75rem; } }
  @media screen and (min-width: 64em) {
    .compare-grid-item {
      margin-right: 1.25rem;
      margin-left: 1.25rem; } }
  .compare-grid-item:not(:first-child) .compare-grid-item-label {
    visibility: hidden; }
  .compare-grid-item .price,
  .compare-grid-item .product-grid-item-brand {
    margin-top: 0.5rem; }

.compare-grid-item-top {
  display: flex;
  flex-direction: column;
  text-align: center; }
  .compare-grid-item-top .button, .compare-grid-item-top .product__quote-form ._submit, .product__quote-form .compare-grid-item-top ._submit,
  .compare-grid-item-top .product__request-virtual-form ._submit, .product__request-virtual-form .compare-grid-item-top ._submit {
    width: 100%; }
    .compare-grid-item-top .button + .button, .compare-grid-item-top .product__quote-form ._submit + .button, .product__quote-form .compare-grid-item-top ._submit + .button, .compare-grid-item-top .product__request-virtual-form ._submit + .button, .product__request-virtual-form .compare-grid-item-top ._submit + .button, .compare-grid-item-top .product__quote-form .button + ._submit, .product__quote-form .compare-grid-item-top .button + ._submit, .compare-grid-item-top .product__quote-form ._submit + ._submit, .product__quote-form .compare-grid-item-top ._submit + ._submit,
    .compare-grid-item-top .product__request-virtual-form .button + ._submit, .product__request-virtual-form .compare-grid-item-top .button + ._submit,
    .compare-grid-item-top .product__request-virtual-form ._submit + ._submit, .product__request-virtual-form .compare-grid-item-top ._submit + ._submit {
      margin-top: 1rem;
      margin-left: 0; }

.compare-grid-item-image {
  position: relative;
  overflow: hidden; }
  .compare-grid-item-image img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    height: 100%; }

.compare-grid-item-header {
  display: flex;
  align-items: flex-start;
  justify-content: center; }
  .compare-grid-item-header .product-grid-item-name, .compare-grid-item-header .account-product-item-title {
    order: 1; }

.product-grid-item-brand {
  font-family: "Raleway";
  color: rgba(51, 51, 51, 0.5); }

.compare-grid-item-remove {
  order: 2;
  margin-top: 1rem;
  color: rgba(51, 51, 51, 0.5); }
  .compare-grid-item-remove + .product-grid-item-name, .compare-grid-item-remove + .account-product-item-title {
    padding-left: 1rem;
    margin-left: auto;
    margin-right: auto; }
  .compare-grid-item-remove svg {
    pointer-events: none; }

.compare-grid-item-actions {
  padding-top: 1.5rem;
  margin-top: auto; }

.compare-grid-item-label {
  position: relative;
  margin-bottom: 1rem; }
  .compare-grid-item-label.label-rating {
    margin-top: 4rem; }

.compare-grid-item-bottom {
  position: relative;
  padding-top: 4rem;
  margin-top: 4rem; }
  .compare-grid-item-bottom:before {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100% + 2.5rem);
    display: block;
    border-top: 1px solid #dfdfdf;
    content: ""; }

.compare-wishlist .button-secondary, .compare-wishlist .account-button-secondary, .compare-wishlist [data-payment-method-form] .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .compare-wishlist .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist [data-payment-method-form] .product__quote-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .product__quote-form .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist .product__quote-form [data-payment-method-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__quote-form [data-payment-method-form] .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
.compare-wishlist [data-payment-method-form] .product__request-virtual-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .product__request-virtual-form .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist .product__request-virtual-form [data-payment-method-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__request-virtual-form [data-payment-method-form] .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
.compare-wishlist [data-address-form] .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .compare-wishlist .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist [data-address-form] .product__quote-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .product__quote-form .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist .product__quote-form [data-address-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__quote-form [data-address-form] .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
.compare-wishlist [data-address-form] .product__request-virtual-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .product__request-virtual-form .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .compare-wishlist .product__request-virtual-form [data-address-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__request-virtual-form [data-address-form] .compare-wishlist ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit) {
  margin-bottom: 0.75rem; }

.contact-form-container .form {
  display: flex;
  flex-wrap: wrap; }

@media screen and (min-width: 48em) {
  .contact-form-container .form-field-text,
  .contact-form-container .form-field-email {
    width: calc(50% - 1rem); } }
  @media screen and (min-width: 48em) and (min-width: 48em) {
    .contact-form-container .form-field-text,
    .contact-form-container .form-field-email {
      width: calc(50% - 1.5rem); } }
  @media screen and (min-width: 48em) and (min-width: 64em) {
    .contact-form-container .form-field-text,
    .contact-form-container .form-field-email {
      width: calc(50% - 2.5rem); } }

@media screen and (min-width: 48em) {
    .contact-form-container .form-field-text:nth-child(even),
    .contact-form-container .form-field-email:nth-child(even) {
      margin-right: 1.5rem; } }

.contact-form-container .form-field-multiline {
  width: calc(100% - 1rem);
  margin-right: 3rem; }
  @media screen and (min-width: 48em) {
    .contact-form-container .form-field-multiline {
      width: calc(100% - 1.5rem); } }
  @media screen and (min-width: 64em) {
    .contact-form-container .form-field-multiline {
      width: calc(100% - 2.5rem); } }

.button-contact-submit {
  margin-top: 2.5rem; }

#form-contact-us .g-recaptcha {
  margin-top: 2rem; }
  @media screen and (min-width: 33.75em) {
    #form-contact-us .g-recaptcha {
      transform: scale(0.9);
      transform-origin: 0 0; } }

blockquote {
  font-family: "Typo Grotesk Regular";
  font-size: 1.5rem;
  line-height: 1.4em;
  color: #333333;
  position: relative;
  padding: 1.25rem 2.5rem;
  margin: 4rem 0;
  color: rgba(51, 51, 51, 0.8);
  text-align: center;
  background-color: whitesmoke; }
  @media screen and (min-width: 48em) {
    blockquote {
      font-family: "Typo Grotesk Regular";
      font-size: 2rem;
      line-height: 1.4em;
      color: #333333;
      padding: 2.5rem 5rem;
      margin-top: 2rem;
      margin-bottom: 2rem; } }
  blockquote::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 2.5rem;
    height: 2.5rem;
    background-color: #2d2d2d;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 18 18'%3E%3Cpath fill='%23fff' d='M4.483 14.5a2.987 2.987 0 0 0 2.983-2.983 2.987 2.987 0 0 0-2.983-2.983c-.41 0-.81.084-1.181.245L2.12 9.29l.527-1.174C3.295 6.67 4.29 5.49 5.433 4.869a.197.197 0 0 0-.188-.345C3.092 5.695 1.5 8.649 1.5 11.517A2.987 2.987 0 0 0 4.483 14.5zm0-6.966a3.987 3.987 0 0 1 3.983 3.983A3.987 3.987 0 0 1 4.483 15.5 3.987 3.987 0 0 1 .5 11.517C.5 8.297 2.277 5 4.767 3.645a1.195 1.195 0 0 1 1.623.48c.316.58.101 1.307-.48 1.623-.679.37-1.315 1.004-1.828 1.806.133-.013.267-.02.401-.02zm8.708 6.966a2.987 2.987 0 0 0 2.983-2.983 2.987 2.987 0 0 0-2.983-2.983c-.41 0-.81.084-1.181.245l-1.183.512.528-1.176c.648-1.445 1.643-2.624 2.786-3.246a.197.197 0 1 0-.188-.345c-2.153 1.171-3.745 4.125-3.745 6.993A2.987 2.987 0 0 0 13.19 14.5zm0-6.966a3.987 3.987 0 0 1 3.983 3.983 3.987 3.987 0 0 1-3.983 3.983 3.987 3.987 0 0 1-3.983-3.983c0-3.22 1.777-6.517 4.267-7.872a1.194 1.194 0 0 1 1.623.48c.316.58.101 1.307-.48 1.623-.679.37-1.314 1.004-1.828 1.806a3.98 3.98 0 0 1 .4-.02z'/%3E%3C/svg%3E");
    background-position: center center;
    background-repeat: no-repeat;
    content: ""; }
    @media screen and (min-width: 48em) {
      blockquote::before {
        width: 4rem;
        height: 4rem;
        line-height: 4rem; } }

.error-container {
  text-align: center; }

.error-header .error-title {
  margin-top: 5rem;
  font-weight: 300;
  color: rgba(51, 51, 51, 0.8); }

.page-error {
  font-weight: 300;
  color: rgba(51, 51, 51, 0.8); }
  .page-error .error-button {
    margin-top: 2.5rem; }
    .page-error .error-button.button-primary, .page-error .error-button.account-button-primary, .page-error .error-button.button-contact-submit, .page-error .product__quote-form .error-button._submit, .product__quote-form .page-error .error-button._submit,
    .page-error .product__request-virtual-form .error-button._submit, .product__request-virtual-form .page-error .error-button._submit {
      background-color: #333333; }
      .page-error .error-button.button-primary:hover, .page-error .error-button.account-button-primary:hover, .page-error .error-button.button-contact-submit:hover, .page-error .product__quote-form .error-button._submit:hover, .product__quote-form .page-error .error-button._submit:hover,
      .page-error .product__request-virtual-form .error-button._submit:hover, .product__request-virtual-form .page-error .error-button._submit:hover {
        background-color: #292929; }

.giftcard-nav {
  margin-bottom: 0; }

.giftcard-nav-item.is-active {
  color: #2d2d2d; }

.giftcard-form-preview.has-preview {
  padding: 1rem 0; }

.giftcard-heading-container {
  text-align: left; }

.giftcard-heading {
  font-family: "Typo Grotesk Regular";
  font-size: 2rem;
  line-height: 1.4em;
  color: #333333; }

.giftcard-header,
.giftcard-subheading {
  display: none; }
  .giftcard-heading-container .giftcard-header, .giftcard-heading-container
  .giftcard-subheading {
    display: block; }

.giftcard-balance-container h2,
.giftcard-balance-container h3 {
  margin: 0.625rem 0; }

.home-section {
  padding-top: 1rem;
  padding-bottom: 1rem;
  margin-top: 1rem;
  margin-bottom: 1rem;
  overflow: hidden; }
  @media screen and (min-width: 48em) {
    .home-section {
      padding-top: 1.5rem;
      padding-bottom: 1.5rem;
      margin-top: 1.5rem;
      margin-bottom: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .home-section {
      padding-top: 2.5rem;
      padding-bottom: 2.5rem;
      margin-top: 2.5rem;
      margin-bottom: 2.5rem; } }
  .home-section + .home-section {
    border-top: 1px solid #dfdfdf; }
  .home-section:first-child {
    padding-top: 0;
    margin-top: 0; }

.home-section-title, .related-products-title {
  font-family: "Typo Grotesk Regular";
  font-size: 1.5rem;
  line-height: 1.4em;
  color: #333333;
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
  text-align: center; }

/*----------  Featured Grid & Blog  ----------*/
.home-section-grid-blog .home-section-grid-container:after,
.home-section-grid-featured .home-section-grid-container:after {
  display: none;
  content: "flickity"; }

@media screen and (min-width: 48em) {
  .home-section-grid-blog .home-section-grid-container:after,
  .home-section-grid-featured .home-section-grid-container:after {
    display: none;
    content: "flickity"; } }

.home-section-grid-featured-item {
  flex: 0 1 auto;
  margin-right: 0.5rem;
  margin-left: 0.5rem;
  margin-bottom: 1rem;
  position: relative;
  width: 100%; }
  @media screen and (min-width: 48em) {
    .home-section-grid-featured-item {
      margin-right: 0.75rem;
      margin-left: 0.75rem; } }
  @media screen and (min-width: 64em) {
    .home-section-grid-featured-item {
      margin-right: 1.25rem;
      margin-left: 1.25rem; } }
  @media screen and (min-width: 48em) {
    .home-section-grid-featured-item {
      margin-bottom: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .home-section-grid-featured-item {
      margin-bottom: 2.5rem; } }
  @media screen and (min-width: 33.75em) {
    .home-section-grid-featured-item {
      width: 100%; } }
  .home-section-grid-featured-item img {
    width: 100%;
    height: 100%; }
    @media screen and (min-width: 48em) {
      .home-section-grid-featured-item img {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto; } }
  @media screen and (min-width: 48em) {
    .home-section-grid-featured-item:only-child .home-section-grid-featured-item-image {
      width: 100%;
      padding-bottom: 56.25%; }
    .home-section-grid-featured-item:not(:only-child):first-child, .home-section-grid-featured-item:not(:only-child):nth-child(2) {
      width: calc(50% - 1rem); } }
  @media screen and (min-width: 48em) and (min-width: 48em) {
    .home-section-grid-featured-item:not(:only-child):first-child, .home-section-grid-featured-item:not(:only-child):nth-child(2) {
      width: calc(50% - 1.5rem); } }
  @media screen and (min-width: 48em) and (min-width: 64em) {
    .home-section-grid-featured-item:not(:only-child):first-child, .home-section-grid-featured-item:not(:only-child):nth-child(2) {
      width: calc(50% - 2.5rem); } }
  @media screen and (min-width: 48em) {
      .home-section-grid-featured-item:not(:only-child):first-child .home-section-grid-featured-item-image, .home-section-grid-featured-item:not(:only-child):nth-child(2) .home-section-grid-featured-item-image {
        width: 100%;
        padding-bottom: 80.61856%;
        position: relative;
        overflow: hidden; }
    .home-section-grid-featured-item:not(:only-child):nth-child(n+3) {
      width: calc(33.33333% - 1rem); } }
  @media screen and (min-width: 48em) and (min-width: 48em) {
    .home-section-grid-featured-item:not(:only-child):nth-child(n+3) {
      width: calc(33.33333% - 1.5rem); } }
  @media screen and (min-width: 48em) and (min-width: 64em) {
    .home-section-grid-featured-item:not(:only-child):nth-child(n+3) {
      width: calc(33.33333% - 2.5rem); } }
  @media screen and (min-width: 48em) {
      .home-section-grid-featured-item:not(:only-child):nth-child(n+3) .home-section-grid-featured-item-image {
        width: 100%;
        padding-bottom: 100%; } }
  .home-section-grid-featured-item .item-info {
    padding-top: 1rem;
    padding-right: 1rem;
    margin-right: 1rem;
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: white; }
    @media screen and (min-width: 48em) {
      .home-section-grid-featured-item .item-info {
        padding-top: 1.5rem;
        padding-right: 1.5rem;
        margin-right: 1.5rem; } }
    @media screen and (min-width: 64em) {
      .home-section-grid-featured-item .item-info {
        padding-top: 2.5rem;
        padding-right: 2.5rem;
        margin-right: 2.5rem; } }
  .home-section-grid-featured-item .item-info-name {
    font-family: "Typo Grotesk Regular";
    font-size: 1rem;
    line-height: 1.4em;
    color: #333333;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis; }
  .home-section-grid-featured-item .item-info-cta {
    margin-top: 0.5rem;
    font-family: "Raleway";
    color: #2d2d2d; }

/*----------  Simple Grid  ----------*/
.home-section-grid .home-section-grid-container {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.5rem;
  margin-left: -0.5rem; }
  @media screen and (min-width: 48em) {
    .home-section-grid .home-section-grid-container {
      margin-right: -0.75rem;
      margin-left: -0.75rem; } }
  @media screen and (min-width: 64em) {
    .home-section-grid .home-section-grid-container {
      margin-right: -1.25rem;
      margin-left: -1.25rem; } }

.home-section-grid .product-grid-item {
  width: calc(50% - 1rem);
  margin-bottom: 1rem; }
  @media screen and (min-width: 48em) {
    .home-section-grid .product-grid-item {
      width: calc(50% - 1.5rem); } }
  @media screen and (min-width: 64em) {
    .home-section-grid .product-grid-item {
      width: calc(50% - 2.5rem); } }
  @media screen and (min-width: 33.75em) {
    .home-section-grid .product-grid-item {
      width: calc(33.33333% - 1rem); } }
  @media screen and (min-width: 33.75em) and (min-width: 48em) {
    .home-section-grid .product-grid-item {
      width: calc(33.33333% - 1.5rem); } }
  @media screen and (min-width: 33.75em) and (min-width: 64em) {
    .home-section-grid .product-grid-item {
      width: calc(33.33333% - 2.5rem); } }
  @media screen and (min-width: 64em) {
    .home-section-grid .product-grid-item {
      width: calc(50% - 1rem); } }
  @media screen and (min-width: 64em) and (min-width: 48em) {
    .home-section-grid .product-grid-item {
      width: calc(50% - 1.5rem); } }
  @media screen and (min-width: 64em) and (min-width: 64em) {
    .home-section-grid .product-grid-item {
      width: calc(50% - 2.5rem); } }
  @media screen and (min-width: 75em) {
    .home-section-grid .product-grid-item {
      width: calc(33.33333% - 1rem); } }
  @media screen and (min-width: 75em) and (min-width: 48em) {
    .home-section-grid .product-grid-item {
      width: calc(33.33333% - 1.5rem); } }
  @media screen and (min-width: 75em) and (min-width: 64em) {
    .home-section-grid .product-grid-item {
      width: calc(33.33333% - 2.5rem); } }
  @media screen and (min-width: 87.5em) {
    .home-section-grid .product-grid-item {
      width: calc(25% - 1rem); } }
  @media screen and (min-width: 87.5em) and (min-width: 48em) {
    .home-section-grid .product-grid-item {
      width: calc(25% - 1.5rem); } }
  @media screen and (min-width: 87.5em) and (min-width: 64em) {
    .home-section-grid .product-grid-item {
      width: calc(25% - 2.5rem); } }
  @media screen and (min-width: 112.5em) {
    .home-section-grid .product-grid-item {
      width: calc(16.66667% - 1rem); } }
  @media screen and (min-width: 112.5em) and (min-width: 48em) {
    .home-section-grid .product-grid-item {
      width: calc(16.66667% - 1.5rem); } }
  @media screen and (min-width: 112.5em) and (min-width: 64em) {
    .home-section-grid .product-grid-item {
      width: calc(16.66667% - 2.5rem); } }
  @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .home-section-grid .product-grid-item {
      width: calc(50% - 1.5rem); } }
  @media all and (-ms-high-contrast: none) and (min-width: 540px), (-ms-high-contrast: active) and (min-width: 540px) {
    .home-section-grid .product-grid-item {
      width: calc(25% - 1.5rem); } }
  @media all and (-ms-high-contrast: none) and (min-width: 1024px), (-ms-high-contrast: active) and (min-width: 1024px) {
    .home-section-grid .product-grid-item {
      width: calc(50% - 2.5rem); } }
  @media all and (-ms-high-contrast: none) and (min-width: 1200px), (-ms-high-contrast: active) and (min-width: 1200px) {
    .home-section-grid .product-grid-item {
      width: calc(33.33333% - 2.5rem); } }
  @media all and (-ms-high-contrast: none) and (min-width: 1400px), (-ms-high-contrast: active) and (min-width: 1400px) {
    .home-section-grid .product-grid-item {
      width: calc(25% - 2.5rem); } }
  @media all and (-ms-high-contrast: none) and (min-width: 1800px), (-ms-high-contrast: active) and (min-width: 1800px) {
    .home-section-grid .product-grid-item {
      width: calc(16.6667% - 2.5rem); } }
  @media screen and (min-width: 48em) {
    .home-section-grid .product-grid-item {
      margin-bottom: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .home-section-grid .product-grid-item {
      margin-bottom: 2.5rem; } }
  .home-section-grid .product-grid-item:only-child {
    flex-grow: 1; }
  @media screen and (max-width: 63.9375em) and (min-width: 33.75em) {
    .home-section-grid .product-grid-item:first-child:nth-last-child(2),
    .home-section-grid .product-grid-item:first-child:nth-last-child(2) ~ .product-grid-item {
      flex-grow: 1; } }
  @media screen and (min-width: 75em) {
    .home-section-grid .product-grid-item:first-child:nth-last-child(2),
    .home-section-grid .product-grid-item:first-child:nth-last-child(2) ~ .product-grid-item {
      flex-grow: 1; } }
  @media screen and (min-width: 87.5em) {
    .home-section-grid .product-grid-item:first-child:nth-last-child(2),
    .home-section-grid .product-grid-item:first-child:nth-last-child(2) ~ .product-grid-item {
      flex-grow: 1; }
    .home-section-grid .product-grid-item:first-child:nth-last-child(3),
    .home-section-grid .product-grid-item:first-child:nth-last-child(3) ~ .product-grid-item {
      flex-grow: 1; } }
  @media screen and (min-width: 112.5em) {
    .home-section-grid .product-grid-item:first-child:nth-last-child(2),
    .home-section-grid .product-grid-item:first-child:nth-last-child(2) ~ .product-grid-item {
      flex-grow: 1; }
    .home-section-grid .product-grid-item:first-child:nth-last-child(3),
    .home-section-grid .product-grid-item:first-child:nth-last-child(3) ~ .product-grid-item {
      flex-grow: 1; }
    .home-section-grid .product-grid-item:first-child:nth-last-child(4),
    .home-section-grid .product-grid-item:first-child:nth-last-child(4) ~ .product-grid-item {
      flex-grow: 1; }
    .home-section-grid .product-grid-item:first-child:nth-last-child(5),
    .home-section-grid .product-grid-item:first-child:nth-last-child(5) ~ .product-grid-item {
      flex-grow: 1; } }

/*----------  Carousel  ----------*/
.home-section-carousel .home-section-grid-container {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.5rem;
  margin-left: -0.5rem;
  display: block; }
  @media screen and (min-width: 48em) {
    .home-section-carousel .home-section-grid-container {
      margin-right: -0.75rem;
      margin-left: -0.75rem; } }
  @media screen and (min-width: 64em) {
    .home-section-carousel .home-section-grid-container {
      margin-right: -1.25rem;
      margin-left: -1.25rem; } }

.home-section-carousel .product-grid-item {
  width: calc(50% - 1rem); }
  @media screen and (min-width: 48em) {
    .home-section-carousel .product-grid-item {
      width: calc(50% - 1.5rem); } }
  @media screen and (min-width: 64em) {
    .home-section-carousel .product-grid-item {
      width: calc(50% - 2.5rem); } }
  @media screen and (min-width: 33.75em) {
    .home-section-carousel .product-grid-item {
      width: calc(33.33333% - 1rem); } }
  @media screen and (min-width: 33.75em) and (min-width: 48em) {
    .home-section-carousel .product-grid-item {
      width: calc(33.33333% - 1.5rem); } }
  @media screen and (min-width: 33.75em) and (min-width: 64em) {
    .home-section-carousel .product-grid-item {
      width: calc(33.33333% - 2.5rem); } }
  @media screen and (min-width: 64em) {
    .home-section-carousel .product-grid-item {
      width: calc(50% - 1rem); } }
  @media screen and (min-width: 64em) and (min-width: 48em) {
    .home-section-carousel .product-grid-item {
      width: calc(50% - 1.5rem); } }
  @media screen and (min-width: 64em) and (min-width: 64em) {
    .home-section-carousel .product-grid-item {
      width: calc(50% - 2.5rem); } }
  @media screen and (min-width: 75em) {
    .home-section-carousel .product-grid-item {
      width: calc(33.33333% - 1rem); } }
  @media screen and (min-width: 75em) and (min-width: 48em) {
    .home-section-carousel .product-grid-item {
      width: calc(33.33333% - 1.5rem); } }
  @media screen and (min-width: 75em) and (min-width: 64em) {
    .home-section-carousel .product-grid-item {
      width: calc(33.33333% - 2.5rem); } }
  @media screen and (min-width: 87.5em) {
    .home-section-carousel .product-grid-item {
      width: calc(25% - 1rem); } }
  @media screen and (min-width: 87.5em) and (min-width: 48em) {
    .home-section-carousel .product-grid-item {
      width: calc(25% - 1.5rem); } }
  @media screen and (min-width: 87.5em) and (min-width: 64em) {
    .home-section-carousel .product-grid-item {
      width: calc(25% - 2.5rem); } }
  @media screen and (min-width: 112.5em) {
    .home-section-carousel .product-grid-item {
      width: calc(16.66667% - 1rem); } }
  @media screen and (min-width: 112.5em) and (min-width: 48em) {
    .home-section-carousel .product-grid-item {
      width: calc(16.66667% - 1.5rem); } }
  @media screen and (min-width: 112.5em) and (min-width: 64em) {
    .home-section-carousel .product-grid-item {
      width: calc(16.66667% - 2.5rem); } }
  @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .home-section-carousel .product-grid-item {
      width: calc(50% - 1.5rem); } }
  @media all and (-ms-high-contrast: none) and (min-width: 540px), (-ms-high-contrast: active) and (min-width: 540px) {
    .home-section-carousel .product-grid-item {
      width: calc(25% - 1.5rem); } }
  @media all and (-ms-high-contrast: none) and (min-width: 1024px), (-ms-high-contrast: active) and (min-width: 1024px) {
    .home-section-carousel .product-grid-item {
      width: calc(50% - 2.5rem); } }
  @media all and (-ms-high-contrast: none) and (min-width: 1200px), (-ms-high-contrast: active) and (min-width: 1200px) {
    .home-section-carousel .product-grid-item {
      width: calc(33.33333% - 2.5rem); } }
  @media all and (-ms-high-contrast: none) and (min-width: 1400px), (-ms-high-contrast: active) and (min-width: 1400px) {
    .home-section-carousel .product-grid-item {
      width: calc(25% - 2.5rem); } }
  @media all and (-ms-high-contrast: none) and (min-width: 1800px), (-ms-high-contrast: active) and (min-width: 1800px) {
    .home-section-carousel .product-grid-item {
      width: calc(16.6667% - 2.5rem); } }

/*----------  Recent Blog Posts  ----------*/
.recent-blog-posts.home-section-grid-container {
  display: block;
  margin-right: 0;
  margin-left: 0; }

.recent-blog-posts .blog-item {
  width: calc(100% - 2.5rem); }
  @media screen and (min-width: 33.75em) {
    .recent-blog-posts .blog-item {
      width: 100%; } }
  @media screen and (min-width: 48em) {
    .recent-blog-posts .blog-item {
      width: calc(33.33333% - 1rem); } }
  @media screen and (min-width: 48em) and (min-width: 48em) {
    .recent-blog-posts .blog-item {
      width: calc(33.33333% - 1.5rem); } }
  @media screen and (min-width: 48em) and (min-width: 64em) {
    .recent-blog-posts .blog-item {
      width: calc(33.33333% - 2.5rem); } }

.page-title {
  font-family: "Typo Grotesk Regular";
  font-size: 2.25rem;
  line-height: 1.4em;
  color: #333333;
  margin-top: 2rem;
  margin-bottom: 2.5rem;
  text-align: center; }

.page-subtitle {
  font-size: 1.5rem;
  margin-top: 1.5rem;
  margin-bottom: 2rem;
  text-align: center; }

.page-rss-group {
  margin-bottom: 1.5rem; }
  .page-rss-group:last-child {
    margin-bottom: 0; }
  .page-rss-group h2 {
    font-family: "Typo Grotesk Regular";
    font-size: 1.5rem;
    line-height: 1.4em;
    color: #333333; }

.page-search .product-catalog-header {
  padding-top: 10px; }
  .page-search .product-catalog-header .page-title {
    font-family: "Typo Grotesk Regular";
    font-size: 3rem;
    line-height: 1.2em;
    color: #333333; }

.search-tabs .tabs {
  display: flex;
  justify-content: center; }

.search-tabs .tab-title {
  padding-right: 3.875rem;
  padding-left: 3.875rem; }

.search-tab-title {
  font-family: "Typo Grotesk Regular";
  font-size: 1.5rem;
  line-height: 1.4em;
  color: #333333;
  margin-top: 4rem;
  margin-bottom: 2.5rem;
  text-align: center; }

.content-result {
  max-width: 48.5rem;
  padding-bottom: 2rem;
  margin: 0 auto 2rem; }
  .content-result:not(:last-child) {
    border-bottom: 1px solid #dfdfdf; }

.content-result-type {
  float: right; }

.content-result-title {
  margin-bottom: 1.5rem;
  font-size: 2rem; }

.content-result-summary {
  margin-bottom: 1.5rem; }

.search-results-suggestion {
  padding: 2rem 0;
  text-align: center; }

.search-result-group-wrapper {
  padding: 2rem;
  margin-bottom: 2.5rem;
  background: whitesmoke; }
  .search-result-group-wrapper .search-results-title {
    font-family: "Typo Grotesk Regular";
    font-size: 1rem;
    line-height: 1.4em;
    color: #333333;
    padding-bottom: 1rem; }
  .search-result-group-wrapper .search-result {
    padding-bottom: 1rem; }
    .search-result-group-wrapper .search-result:last-child {
      padding-bottom: 0; }
  .search-result-group-wrapper .search-result-brand::after {
    content: ","; }
  .search-result-group-wrapper .search-result-brand:last-child::after {
    content: ""; }

@media (max-width: 768px) {
  .search-tabs .tabs {
    flex-direction: column;
    align-items: stretch; }
  .search-tabs .tab-title {
    padding-left: 1rem;
    padding-right: 1rem;
    text-align: center; }
  .content-result-type {
    float: none;
    text-align: right;
    display: block;
    margin-top: 0.5rem; }
  .content-result-title {
    font-size: 1.5rem; }
  .page-search .product-catalog-header {
    padding-top: 0.5rem;
    text-align: center; }
  .search-result-group-wrapper {
    padding: 1.5rem; }
  .search-tab-title {
    font-size: 1rem;
    margin-top: 2rem;
    margin-bottom: 1.5rem; } }

.single-blog-post {
  max-width: 48.5rem;
  margin: 0 auto; }

.single-blog-post-header {
  margin-bottom: 4rem;
  text-align: center; }
  .single-blog-post-header .page-title {
    margin-bottom: 1.25rem; }
  .single-blog-post-header .timestamp {
    color: rgba(51, 51, 51, 0.5); }

.single-blog-post-image-container {
  margin: 0 0 4rem; }
  .single-blog-post-image-container img {
    width: 100%; }

.single-blog-post-content {
  font-family: "Raleway"; }

.single-blog-post-footer {
  padding-top: 4rem;
  margin-top: 4rem;
  color: rgba(51, 51, 51, 0.5);
  text-align: center;
  border-top: 1px solid #dfdfdf; }
  @media screen and (min-width: 33.75em) {
    .single-blog-post-footer {
      padding-top: 5rem;
      margin-top: 5rem; } }

.single-blog-post-author {
  margin-bottom: 0.5rem; }

.single-blog-post-tags-container {
  font-weight: 300; }

.single-blog-post-tags-content {
  color: #2d2d2d; }

.sitemap-content {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  justify-content: space-between; }

.sitemap-group {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
  flex-basis: auto;
  width: 100%;
  text-align: left; }
  @media screen and (min-width: 48em) {
    .sitemap-group {
      padding-right: 1.5rem;
      padding-left: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .sitemap-group {
      padding-right: 2.5rem;
      padding-left: 2.5rem; } }
  @media screen and (min-width: 33.75em) {
    .sitemap-group {
      width: calc(50% - 1rem); } }
  @media screen and (min-width: 33.75em) and (min-width: 48em) {
    .sitemap-group {
      width: calc(50% - 1.5rem); } }
  @media screen and (min-width: 33.75em) and (min-width: 64em) {
    .sitemap-group {
      width: calc(50% - 2.5rem); } }
  @media screen and (min-width: 64em) {
    .sitemap-group {
      width: calc(33.33333% - 1rem); } }
  @media screen and (min-width: 64em) and (min-width: 48em) {
    .sitemap-group {
      width: calc(33.33333% - 1.5rem); } }
  @media screen and (min-width: 64em) and (min-width: 64em) {
    .sitemap-group {
      width: calc(33.33333% - 2.5rem); } }
  .sitemap-group ul {
    padding-left: 1rem;
    list-style: disc; }
    .sitemap-group ul li {
      margin-bottom: 1rem; }
      .sitemap-group ul li a {
        color: #333333; }

.sitemap-title {
  font-family: "Typo Grotesk Regular";
  font-size: 1rem;
  line-height: 1.4em;
  color: #333333;
  margin-bottom: 1rem; }

.sitemap-showall {
  display: block;
  margin-top: 1rem;
  font-weight: 600; }

/*----------  Catalog Header  ----------*/
.product-catalog-header {
  margin-bottom: 2.5rem; }
  .product-catalog-header .page-title {
    font-family: "Typo Grotesk Regular";
    font-size: 1.5rem;
    line-height: 1.4em;
    color: #333333;
    margin-top: 2.5rem;
    margin-bottom: 0; }

.product-catalog-banner {
  margin-top: 1rem;
  position: relative;
  overflow: hidden; }
  @media screen and (min-width: 48em) {
    .product-catalog-banner {
      margin-top: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .product-catalog-banner {
      margin-top: 2.5rem; } }

.product-catalog-banner-image {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%; }

.product-catalog-description {
  margin: 1rem auto 0;
  max-width: 48.5rem;
  font-family: "Raleway";
  font-size: 1.25rem;
  line-height: 1.6em;
  color: rgba(51, 51, 51, 0.8);
  text-align: center; }
  .product-catalog-description p:first-child {
    margin-top: 0; }
  .product-catalog-description p:last-child {
    margin-bottom: 0; }

/*----------  Catalog Grid  ----------*/
.product-grid .product-grid-item {
  width: calc(50% - 1rem);
  margin-bottom: 1rem; }
  @media screen and (min-width: 48em) {
    .product-grid .product-grid-item {
      width: calc(50% - 1.5rem); } }
  @media screen and (min-width: 64em) {
    .product-grid .product-grid-item {
      width: calc(50% - 2.5rem); } }
  @media screen and (min-width: 33.75em) {
    .product-grid .product-grid-item {
      width: calc(33.33333% - 1rem); } }
  @media screen and (min-width: 33.75em) and (min-width: 48em) {
    .product-grid .product-grid-item {
      width: calc(33.33333% - 1.5rem); } }
  @media screen and (min-width: 33.75em) and (min-width: 64em) {
    .product-grid .product-grid-item {
      width: calc(33.33333% - 2.5rem); } }
  @media screen and (min-width: 64em) {
    .product-grid .product-grid-item {
      width: calc(50% - 1rem); } }
  @media screen and (min-width: 64em) and (min-width: 48em) {
    .product-grid .product-grid-item {
      width: calc(50% - 1.5rem); } }
  @media screen and (min-width: 64em) and (min-width: 64em) {
    .product-grid .product-grid-item {
      width: calc(50% - 2.5rem); } }
  @media screen and (min-width: 75em) {
    .product-grid .product-grid-item {
      width: calc(33.33333% - 1rem); } }
  @media screen and (min-width: 75em) and (min-width: 48em) {
    .product-grid .product-grid-item {
      width: calc(33.33333% - 1.5rem); } }
  @media screen and (min-width: 75em) and (min-width: 64em) {
    .product-grid .product-grid-item {
      width: calc(33.33333% - 2.5rem); } }
  @media screen and (min-width: 87.5em) {
    .product-grid .product-grid-item {
      width: calc(25% - 1rem); } }
  @media screen and (min-width: 87.5em) and (min-width: 48em) {
    .product-grid .product-grid-item {
      width: calc(25% - 1.5rem); } }
  @media screen and (min-width: 87.5em) and (min-width: 64em) {
    .product-grid .product-grid-item {
      width: calc(25% - 2.5rem); } }
  @media screen and (min-width: 112.5em) {
    .product-grid .product-grid-item {
      width: calc(16.66667% - 1rem); } }
  @media screen and (min-width: 112.5em) and (min-width: 48em) {
    .product-grid .product-grid-item {
      width: calc(16.66667% - 1.5rem); } }
  @media screen and (min-width: 112.5em) and (min-width: 64em) {
    .product-grid .product-grid-item {
      width: calc(16.66667% - 2.5rem); } }
  @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .product-grid .product-grid-item {
      width: calc(50% - 1.5rem); } }
  @media all and (-ms-high-contrast: none) and (min-width: 540px), (-ms-high-contrast: active) and (min-width: 540px) {
    .product-grid .product-grid-item {
      width: calc(25% - 1.5rem); } }
  @media all and (-ms-high-contrast: none) and (min-width: 1024px), (-ms-high-contrast: active) and (min-width: 1024px) {
    .product-grid .product-grid-item {
      width: calc(50% - 2.5rem); } }
  @media all and (-ms-high-contrast: none) and (min-width: 1200px), (-ms-high-contrast: active) and (min-width: 1200px) {
    .product-grid .product-grid-item {
      width: calc(33.33333% - 2.5rem); } }
  @media all and (-ms-high-contrast: none) and (min-width: 1400px), (-ms-high-contrast: active) and (min-width: 1400px) {
    .product-grid .product-grid-item {
      width: calc(25% - 2.5rem); } }
  @media all and (-ms-high-contrast: none) and (min-width: 1800px), (-ms-high-contrast: active) and (min-width: 1800px) {
    .product-grid .product-grid-item {
      width: calc(16.6667% - 2.5rem); } }
  @media screen and (min-width: 48em) {
    .product-grid .product-grid-item {
      margin-bottom: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .product-grid .product-grid-item {
      margin-bottom: 2.5rem; } }

.facet-content > .loading-overlay .loading {
  margin-top: 12.5rem; }

.compare-widget {
  position: fixed;
  right: 0;
  bottom: 0;
  z-index: 10;
  display: none;
  width: 100%;
  padding: 0.5rem 1.5rem 0;
  background: whitesmoke;
  border-top: 1px solid #dfdfdf;
  transition: all 0.3s ease-out; }
  @media screen and (min-width: 48em) {
    .compare-widget {
      right: 1rem;
      margin-left: 1rem;
      width: auto;
      padding-top: 1.5rem;
      border-right: 1px solid #dfdfdf;
      border-left: 1px solid #dfdfdf; } }
  @media screen and (min-width: 48em) and (min-width: 48em) {
    .compare-widget {
      right: 1.5rem;
      margin-left: 1.5rem; } }
  @media screen and (min-width: 48em) and (min-width: 64em) {
    .compare-widget {
      right: 2.5rem;
      margin-left: 2.5rem; } }
  .compare-widget.animating, .compare-widget.visible {
    display: block; }
  .compare-widget.animating-in, .compare-widget.animating-out {
    transform: translateY(100%); }
  .compare-widget.visible {
    transform: translateY(0);
    opacity: 1; }
    @media screen and (max-width: 47.9375em) {
      .util-active .compare-widget.visible {
        transform: translateY(-3.5rem); } }
  .compare-widget[data-compare-count="1"] .compare-multiple {
    display: none; }
  .compare-widget:not([data-compare-count="1"]) .compare-one {
    display: none; }

.compare-widget-header {
  text-align: center;
  margin-bottom: 1.5rem; }
  @media screen and (min-width: 48em) {
    .compare-widget-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      text-align: left; } }

@media screen and (min-width: 48em) {
  .compare-widget-toggle {
    display: none; } }

.compare-widget-toggle.is-open svg {
  transform: rotate(180deg); }

.compare-widget-toggle .compare-one,
.compare-widget-toggle .compare-multiple {
  display: block;
  margin-top: 0.5rem; }

@media screen and (min-width: 48em) {
  .compare-widget-content {
    display: flex;
    align-items: center;
    justify-content: space-between; } }

.compare-widget-cancel {
  color: rgba(51, 51, 51, 0.8); }
  @media screen and (min-width: 48em) {
    .compare-widget-cancel {
      display: none; } }

@media screen and (max-width: 47.9375em) {
  .compare-widget-action {
    font-family: "Typo Grotesk Regular";
    font-size: 0.75rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-left: 2rem;
    color: #2d2d2d; } }

@media screen and (min-width: 48em) {
  .compare-widget-action {
    font-family: "Typo Grotesk Regular";
    font-size: 0.75rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    padding: 0;
    font-family: inherit;
    background: transparent;
    border: 0;
    border-radius: 0;
    position: relative;
    display: inline-block;
    height: 3.5rem;
    min-width: 16.875rem;
    padding-right: 1.5em;
    padding-left: 1.5em;
    overflow: hidden;
    font-size: 1rem;
    line-height: 3.5rem;
    text-align: center;
    transition: all 0.2s ease-out;
    height: 2.5rem;
    font-size: 0.875rem;
    line-height: 2.5rem;
    color: #2d2d2d;
    border: 1px solid #2d2d2d;
    background-color: transparent;
    min-width: 0; } }
  @media screen and (min-width: 48em) and (max-width: 33.6875em) {
    .compare-widget-action {
      font-size: 0.875rem; } }

@media screen and (min-width: 48em) {
    .compare-widget-action:hover {
      opacity: 1; }
    .compare-widget-action:active::before {
      opacity: 0.1;
      transform: scale(0, 0);
      transition-duration: 0s; }
    .compare-widget-action:disabled, .compare-widget-action.button-disabled {
      cursor: not-allowed;
      opacity: 0.8; }
    .compare-widget-action::before {
      position: absolute;
      top: 0;
      left: 0;
      display: block;
      width: 100%;
      height: 100%;
      pointer-events: none;
      background-image: radial-gradient(circle, #000 10%, transparent 10.01%);
      background-position: 50%;
      background-repeat: no-repeat;
      content: "";
      opacity: 0;
      transform: scale(10, 10);
      transition: transform 0.2s, opacity 0.4s; }
    .compare-widget-action:hover {
      color: white;
      background-color: #2d2d2d; } }

.compare-widget-cta {
  margin-right: 1.5rem;
  color: rgba(51, 51, 51, 0.5); }
  @media screen and (max-width: 47.9375em) {
    .compare-widget-cta {
      display: none; } }

.compare-widget-remove-all {
  color: #2d2d2d;
  font-size: 0.875rem; }
  @media screen and (max-width: 47.9375em) {
    .compare-widget-remove-all {
      display: none; } }

@media screen and (max-width: 47.9375em) {
  .compare-widget-items-wrap {
    display: none;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem; } }

@media screen and (min-width: 48em) {
  .compare-widget-items-wrap {
    display: block !important; } }

.compare-widget-items {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  vertical-align: middle; }
  @media screen and (min-width: 48em) {
    .compare-widget-items {
      margin-left: -0.75rem; } }

.compare-widget-item {
  position: relative;
  display: none;
  margin-right: 0.75rem;
  margin-bottom: 1.5rem;
  margin-left: 0.75rem;
  transition: all 0.2s ease; }
  .compare-widget-item.animating, .compare-widget-item.visible {
    display: block; }
  .compare-widget-item.animating-in, .compare-widget-item.animating-out {
    transform: scale(0);
    opacity: 0; }
  @media screen and (max-width: 33.6875em) {
    .compare-widget-item:first-child:nth-last-child(3) .compare-widget-item-image,
    .compare-widget-item:first-child:nth-last-child(3) ~ .compare-widget-item .compare-widget-item-image {
      width: calc(33.3333vw - 2.5rem);
      height: calc(33.3333vw - 2.5rem); } }

.compare-widget-item-image {
  width: calc(50vw - 4rem);
  height: calc(50vw - 4rem);
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-color: #fff; }
  @media screen and (min-width: 33.75em) {
    .compare-widget-item-image {
      width: 5.75rem;
      height: 5.75rem; } }

.compare-widget-item-remove {
  width: 100%;
  color: rgba(51, 51, 51, 0.5);
  text-align: center; }
  @media screen and (min-width: 48em) {
    .compare-widget-item-remove {
      position: absolute;
      top: 0;
      height: 100%;
      color: transparent; }
      .compare-widget-item-remove:before {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100%;
        font-size: 1.25rem;
        color: #000;
        background-color: rgba(255, 255, 255, 0.7);
        opacity: 0;
        transition: opacity 0.2s ease-out;
        content: '\00d7'; }
      .compare-widget-item-remove:hover:before {
        opacity: 1; } }

.compare-widget-footer {
  flex: 0 0 auto;
  padding-bottom: 1.5rem;
  vertical-align: middle; }
  @media screen and (max-width: 47.9375em) {
    .compare-widget-footer {
      text-align: center; } }
  @media screen and (min-width: 48em) {
    .compare-widget-footer {
      margin-left: 1.75rem; } }

@media screen and (max-width: 56.1875em) {
  .facet-block-container {
    display: none; }
    .facet-block-container.is-visible {
      display: block; } }

@media screen and (max-width: 83.0625em) and (min-width: 64em) {
  .facet-block-container {
    display: none; }
    .facet-block-container.is-visible {
      display: block;
      border-left: 1px solid #dfdfdf; } }

@media screen and (min-width: 83.125em) {
  .facet-block-container {
    display: flex;
    flex: 0 1 auto;
    height: 100%; } }

@media screen and (max-width: 63.9375em) and (min-width: 56.25em) {
  .facet-block-container {
    display: flex;
    flex: 0 1 auto;
    height: 100%; } }

@media screen and (min-width: 83.125em) {
  .facet-block-container .catalog-util-label {
    display: inline-flex;
    align-items: center; } }

@media screen and (max-width: 63.9375em) and (min-width: 56.25em) {
  .facet-block-container .catalog-util-label {
    display: inline-flex;
    align-items: center; } }

@media screen and (max-width: 74.9375em) and (min-width: 83.125em) {
  .facet-block-container .catalog-util-label {
    display: none; } }

.facet-block.is-overflowing {
  visibility: hidden; }

.facet-block-title {
  display: none;
  font-family: "Raleway"; }
  .dropdown-more-menu .facet-block-title {
    display: block;
    margin-bottom: 1rem; }

.more-menu .dropdown-toggle {
  color: #2d2d2d;
  transform: translateX(0); }

.dropdown-more-menu {
  padding-top: 1rem;
  padding-right: 1rem;
  padding-bottom: 1rem;
  padding-left: 1rem;
  flex-wrap: wrap;
  border-top: 1px solid #dfdfdf;
  border-bottom: 1px solid #dfdfdf; }
  @media screen and (min-width: 48em) {
    .dropdown-more-menu {
      padding-top: 1.5rem;
      padding-right: 1.5rem;
      padding-bottom: 1.5rem;
      padding-left: 1.5rem; } }
  @media screen and (min-width: 64em) {
    .dropdown-more-menu {
      padding-top: 2.5rem;
      padding-right: 2.5rem;
      padding-bottom: 2.5rem;
      padding-left: 2.5rem; } }
  .dropdown-more-menu.visible {
    display: flex !important; }
  .dropdown-more-menu .facet-block-content {
    flex-grow: 1;
    padding-left: 0;
    margin-bottom: 2rem; }

.facet-block-content {
  padding-right: 1.5rem;
  padding-left: 1.5rem; }

.facet-item-link {
  display: flex;
  align-items: center;
  color: rgba(51, 51, 51, 0.8);
  transition: color 0.2s ease; }
  .facet-item-link:hover {
    opacity: 1;
    color: #2d2d2d; }

.facet-item-count,
.rating-and-up-text {
  margin-left: 0.5rem;
  font-size: 0.75rem; }

.facet-control-range {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 14.375rem; }
  .facet-control-range .form-field {
    width: calc(50% - 0.5rem); }
  .facet-control-range .form-actions {
    margin-top: 1rem; }

.facet-control-hierarchy .facet-item:not(:last-child),
.facet-control-multi .facet-item:not(:last-child) {
  margin-bottom: 0.5rem; }

.facet-control-hierarchy .checkbox-box,
.facet-control-multi .checkbox-box {
  margin-right: 0.5rem;
  text-align: center;
  color: white; }
  .facet-control-hierarchy .checkbox-box svg,
  .facet-control-multi .checkbox-box svg {
    width: 0.625rem; }

.facet-toggle-more {
  margin-top: 1rem;
  color: #2d2d2d; }
  .facet-toggle-more::before {
    margin-right: 0.3125rem;
    content: "+"; }

.product-grid-item {
  position: relative;
  overflow: hidden;
  text-align: center; }
  .product-grid-item:hover .grid-item-overlay {
    opacity: 1; }
  .product-grid-item:hover .button, .product-grid-item:hover .product__quote-form ._submit, .product__quote-form .product-grid-item:hover ._submit,
  .product-grid-item:hover .product__request-virtual-form ._submit, .product__request-virtual-form .product-grid-item:hover ._submit {
    bottom: 0; }
  .product-grid-item:hover .product-badge {
    color: #fff;
    background-color: #000;
    transform: scale(0.66);
    z-index: 2; }
  @media (any-hover: none), (any-hover: on-demand) {
    .product-grid-item .has-quickshop .grid-item-overlay {
      bottom: -112px; }
    .product-grid-item .no-options .grid-item-overlay {
      bottom: auto; }
    .product-grid-item .grid-item-overlay {
      width: 100%;
      top: auto;
      right: auto;
      bottom: -55px;
      left: auto;
      position: absolute;
      padding: 0;
      margin-top: 1rem;
      background-color: transparent;
      opacity: 1; }
      .product-grid-item .grid-item-overlay .button, .product-grid-item .grid-item-overlay .product__quote-form ._submit, .product__quote-form .product-grid-item .grid-item-overlay ._submit,
      .product-grid-item .grid-item-overlay .product__request-virtual-form ._submit, .product__request-virtual-form .product-grid-item .grid-item-overlay ._submit {
        height: 2.5rem;
        font-size: 0.875rem;
        line-height: 2.5rem;
        color: white;
        background-color: #2d2d2d;
        bottom: auto;
        padding-right: 0.5rem;
        padding-left: 0.5rem; }
        .product-grid-item .grid-item-overlay .button:hover, .product-grid-item .grid-item-overlay .product__quote-form ._submit:hover, .product__quote-form .product-grid-item .grid-item-overlay ._submit:hover,
        .product-grid-item .grid-item-overlay .product__request-virtual-form ._submit:hover, .product__request-virtual-form .product-grid-item .grid-item-overlay ._submit:hover {
          background-color: #242424; }
        .product-grid-item .grid-item-overlay .button + .button, .product-grid-item .grid-item-overlay .product__quote-form ._submit + .button, .product__quote-form .product-grid-item .grid-item-overlay ._submit + .button, .product-grid-item .grid-item-overlay .product__request-virtual-form ._submit + .button, .product__request-virtual-form .product-grid-item .grid-item-overlay ._submit + .button, .product-grid-item .grid-item-overlay .product__quote-form .button + ._submit, .product__quote-form .product-grid-item .grid-item-overlay .button + ._submit, .product-grid-item .grid-item-overlay .product__quote-form ._submit + ._submit, .product__quote-form .product-grid-item .grid-item-overlay ._submit + ._submit,
        .product-grid-item .grid-item-overlay .product__request-virtual-form .button + ._submit, .product__request-virtual-form .product-grid-item .grid-item-overlay .button + ._submit,
        .product-grid-item .grid-item-overlay .product__request-virtual-form ._submit + ._submit, .product__request-virtual-form .product-grid-item .grid-item-overlay ._submit + ._submit {
          height: 2.5rem;
          font-size: 0.875rem;
          line-height: 2.5rem;
          color: #2d2d2d;
          border: 1px solid #2d2d2d;
          background-color: transparent; }
          .product-grid-item .grid-item-overlay .button + .button:hover, .product-grid-item .grid-item-overlay .product__quote-form ._submit + .button:hover, .product__quote-form .product-grid-item .grid-item-overlay ._submit + .button:hover, .product-grid-item .grid-item-overlay .product__request-virtual-form ._submit + .button:hover, .product__request-virtual-form .product-grid-item .grid-item-overlay ._submit + .button:hover, .product-grid-item .grid-item-overlay .product__quote-form .button + ._submit:hover, .product__quote-form .product-grid-item .grid-item-overlay .button + ._submit:hover, .product-grid-item .grid-item-overlay .product__quote-form ._submit + ._submit:hover, .product__quote-form .product-grid-item .grid-item-overlay ._submit + ._submit:hover,
          .product-grid-item .grid-item-overlay .product__request-virtual-form .button + ._submit:hover, .product__request-virtual-form .product-grid-item .grid-item-overlay .button + ._submit:hover,
          .product-grid-item .grid-item-overlay .product__request-virtual-form ._submit + ._submit:hover, .product__request-virtual-form .product-grid-item .grid-item-overlay ._submit + ._submit:hover {
            color: white;
            background-color: #2d2d2d; } }
      @media (any-hover: none) and (any-hover: none), (any-hover: on-demand) and (any-hover: none), (any-hover: none) and (any-hover: on-demand), (any-hover: on-demand) and (any-hover: on-demand) {
        .product-grid-item .grid-item-overlay .button + .button, .product-grid-item .grid-item-overlay .product__quote-form ._submit + .button, .product__quote-form .product-grid-item .grid-item-overlay ._submit + .button, .product-grid-item .grid-item-overlay .product__request-virtual-form ._submit + .button, .product__request-virtual-form .product-grid-item .grid-item-overlay ._submit + .button, .product-grid-item .grid-item-overlay .product__quote-form .button + ._submit, .product__quote-form .product-grid-item .grid-item-overlay .button + ._submit, .product-grid-item .grid-item-overlay .product__quote-form ._submit + ._submit, .product__quote-form .product-grid-item .grid-item-overlay ._submit + ._submit,
        .product-grid-item .grid-item-overlay .product__request-virtual-form .button + ._submit, .product__request-virtual-form .product-grid-item .grid-item-overlay .button + ._submit,
        .product-grid-item .grid-item-overlay .product__request-virtual-form ._submit + ._submit, .product__request-virtual-form .product-grid-item .grid-item-overlay ._submit + ._submit {
          background-color: white; } }
  .product-grid-item .rating-stars {
    margin-top: 1rem; }
  .product-grid-item .price {
    display: block;
    margin-top: 0.5rem; }
  .product-grid-item .product-badge {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    transition: all 0.2s ease-out;
    transform-origin: top right; }
  .product-grid-item .flickity-page-dots {
    bottom: 10px; }

.grid-item-image-container {
  position: relative;
  overflow: hidden; }
  @media (any-hover: none), (any-hover: on-demand) {
    .grid-item-image-container {
      overflow: visible;
      margin-bottom: 62px; }
      .grid-item-image-container.no-options {
        margin-bottom: 0; }
      .grid-item-image-container.has-quickshop {
        margin-bottom: 125px; } }

.grid-item-image {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto; }

.grid-item-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  padding-right: 1.5rem;
  padding-left: 1.5rem;
  background-color: rgba(255, 255, 255, 0.5);
  opacity: 0;
  transition: opacity 0.2s ease-out; }
  .grid-item-overlay .button, .grid-item-overlay .product__quote-form ._submit, .product__quote-form .grid-item-overlay ._submit,
  .grid-item-overlay .product__request-virtual-form ._submit, .product__request-virtual-form .grid-item-overlay ._submit {
    position: relative;
    bottom: 2rem;
    width: 100%;
    max-width: 13.75rem;
    min-width: 0;
    font-size: 0.75rem;
    transition: bottom 0.2s ease-out; }
    .grid-item-overlay .button + .button, .grid-item-overlay .product__quote-form ._submit + .button, .product__quote-form .grid-item-overlay ._submit + .button, .grid-item-overlay .product__request-virtual-form ._submit + .button, .product__request-virtual-form .grid-item-overlay ._submit + .button, .grid-item-overlay .product__quote-form .button + ._submit, .product__quote-form .grid-item-overlay .button + ._submit, .grid-item-overlay .product__quote-form ._submit + ._submit, .product__quote-form .grid-item-overlay ._submit + ._submit,
    .grid-item-overlay .product__request-virtual-form .button + ._submit, .product__request-virtual-form .grid-item-overlay .button + ._submit,
    .grid-item-overlay .product__request-virtual-form ._submit + ._submit, .product__request-virtual-form .grid-item-overlay ._submit + ._submit {
      margin-top: 1rem;
      margin-left: 0; }

.grid-item-overlay-link {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }

.product-grid-item-name, .account-product-item-title {
  font-family: "Typo Grotesk Regular";
  font-size: 1rem;
  line-height: 1.4em;
  color: #333333;
  margin-top: 1rem;
  transition: color 0.2s ease-out; }
  .product-grid-item-name:hover, .account-product-item-title:hover {
    color: #2d2d2d; }

.product-grid-item-out-of-stock-message {
  margin-top: 0.5rem;
  margin-bottom: 0;
  font-family: "Raleway";
  font-size: 0.875rem; }

.product-badge {
  height: 2.5rem;
  padding-right: 1.25em;
  padding-left: 1.25em;
  line-height: 2.5rem;
  color: white;
  background-color: #2d2d2d; }
  .product-badge.product-badge-sold-out {
    background-color: #000; }

.compare-checkbox:focus ~ .compare-checkbox-label .compare-checkbox-box {
  outline: #2d2d2d auto 3px;
  outline-offset: 2px; }

.compare-checkbox-label {
  position: relative;
  display: inline-flex;
  margin-top: 1rem;
  font-size: 0.875rem;
  color: rgba(51, 51, 51, 0.5);
  cursor: pointer; }
  .compare-checkbox-label .compare-checkbox-box {
    margin-right: 0.5rem;
    overflow: hidden;
    color: white; }
  .compare-checkbox-label svg {
    width: 0.625rem; }

.flickity-prev-next-button {
  width: 3.125rem;
  height: 3.125rem;
  color: #999999;
  background-color: #e6e6e6;
  border-radius: 0;
  transition: background-color 0.2s ease-out; }
  .flickity-prev-next-button.previous {
    left: 0.5rem; }
    @media screen and (min-width: 48em) {
      .flickity-prev-next-button.previous {
        left: 0.75rem; } }
    @media screen and (min-width: 64em) {
      .flickity-prev-next-button.previous {
        left: 1.25rem; } }
  .flickity-prev-next-button.next {
    right: 0.5rem; }
    @media screen and (min-width: 48em) {
      .flickity-prev-next-button.next {
        right: 0.75rem; } }
    @media screen and (min-width: 64em) {
      .flickity-prev-next-button.next {
        right: 1.25rem; } }
  .flickity-prev-next-button:hover {
    background-color: #d9d9d9; }
  .flickity-prev-next-button svg {
    transform: scale(0.5); }
  .flickity-prev-next-button .arrow {
    fill: currentColor; }

.product-card__logo {
  z-index: 2; }

.quick-view-link {
  letter-spacing: 0.125rem;
  color: #2d2d2d;
  text-transform: uppercase; }

.modal-quick-add .modal-content,
.modal-quick-view .modal-content {
  opacity: 0; }
  .loaded .modal-quick-add .modal-content, .loaded
  .modal-quick-view .modal-content {
    opacity: 1; }

.modal-quick-add .product-actions,
.modal-quick-view .product-actions {
  padding-top: 0;
  border-top: 0; }
  .modal-quick-add .product-actions .button + .button, .modal-quick-add .product-actions .product__quote-form ._submit + .button, .product__quote-form .modal-quick-add .product-actions ._submit + .button, .modal-quick-add .product-actions .product__request-virtual-form ._submit + .button, .product__request-virtual-form .modal-quick-add .product-actions ._submit + .button, .modal-quick-add .product-actions .product__quote-form .button + ._submit, .product__quote-form .modal-quick-add .product-actions .button + ._submit, .modal-quick-add .product-actions .product__quote-form ._submit + ._submit, .product__quote-form .modal-quick-add .product-actions ._submit + ._submit,
  .modal-quick-add .product-actions .product__request-virtual-form .button + ._submit, .product__request-virtual-form .modal-quick-add .product-actions .button + ._submit,
  .modal-quick-add .product-actions .product__request-virtual-form ._submit + ._submit, .product__request-virtual-form .modal-quick-add .product-actions ._submit + ._submit,
  .modal-quick-view .product-actions .button + .button,
  .modal-quick-view .product-actions .product__quote-form ._submit + .button,
  .product__quote-form .modal-quick-view .product-actions ._submit + .button,
  .modal-quick-view .product-actions .product__request-virtual-form ._submit + .button,
  .product__request-virtual-form .modal-quick-view .product-actions ._submit + .button,
  .modal-quick-view .product-actions .product__quote-form .button + ._submit,
  .product__quote-form .modal-quick-view .product-actions .button + ._submit,
  .modal-quick-view .product-actions .product__quote-form ._submit + ._submit,
  .product__quote-form .modal-quick-view .product-actions ._submit + ._submit,
  .modal-quick-view .product-actions .product__request-virtual-form .button + ._submit,
  .product__request-virtual-form .modal-quick-view .product-actions .button + ._submit,
  .modal-quick-view .product-actions .product__request-virtual-form ._submit + ._submit,
  .product__request-virtual-form .modal-quick-view .product-actions ._submit + ._submit {
    margin-top: 1.25em; }
    @media screen and (min-width: 39.6875em) {
      .modal-quick-add .product-actions .button + .button, .modal-quick-add .product-actions .product__quote-form ._submit + .button, .product__quote-form .modal-quick-add .product-actions ._submit + .button, .modal-quick-add .product-actions .product__request-virtual-form ._submit + .button, .product__request-virtual-form .modal-quick-add .product-actions ._submit + .button, .modal-quick-add .product-actions .product__quote-form .button + ._submit, .product__quote-form .modal-quick-add .product-actions .button + ._submit, .modal-quick-add .product-actions .product__quote-form ._submit + ._submit, .product__quote-form .modal-quick-add .product-actions ._submit + ._submit,
      .modal-quick-add .product-actions .product__request-virtual-form .button + ._submit, .product__request-virtual-form .modal-quick-add .product-actions .button + ._submit,
      .modal-quick-add .product-actions .product__request-virtual-form ._submit + ._submit, .product__request-virtual-form .modal-quick-add .product-actions ._submit + ._submit,
      .modal-quick-view .product-actions .button + .button,
      .modal-quick-view .product-actions .product__quote-form ._submit + .button,
      .product__quote-form .modal-quick-view .product-actions ._submit + .button,
      .modal-quick-view .product-actions .product__request-virtual-form ._submit + .button,
      .product__request-virtual-form .modal-quick-view .product-actions ._submit + .button,
      .modal-quick-view .product-actions .product__quote-form .button + ._submit,
      .product__quote-form .modal-quick-view .product-actions .button + ._submit,
      .modal-quick-view .product-actions .product__quote-form ._submit + ._submit,
      .product__quote-form .modal-quick-view .product-actions ._submit + ._submit,
      .modal-quick-view .product-actions .product__request-virtual-form .button + ._submit,
      .product__request-virtual-form .modal-quick-view .product-actions .button + ._submit,
      .modal-quick-view .product-actions .product__request-virtual-form ._submit + ._submit,
      .product__request-virtual-form .modal-quick-view .product-actions ._submit + ._submit {
        margin-top: 0; } }

.modal-quick-add .dropdown-panel,
.modal-quick-view .dropdown-panel {
  z-index: 13; }

@media screen and (min-width: 64em) {
  .modal-quick-view .product-image-slides-wrap {
    top: 2.5rem; } }

.modal-quick-add .product-title {
  width: 100%;
  margin-bottom: 1.5rem; }
  @media screen and (min-width: 48em) {
    .modal-quick-add .product-title {
      margin-bottom: 2.5rem; } }

.modal-quick-add .quick-view-link {
  display: inline-block;
  margin-top: 2rem; }

@media screen and (max-width: 56.1875em) {
  .catalog-util-bar-wrapper {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 11;
    width: 100%;
    transition: transform 0.3s ease-out; }
    .compare-active .catalog-util-bar-wrapper {
      transform: translateY(100%); }
    .util-active .catalog-util-bar-wrapper {
      transform: none; } }

@media screen and (max-width: 83.0625em) and (min-width: 64em) {
  .catalog-util-bar-wrapper {
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 11;
    width: calc(100% - 17.5rem);
    transition: transform 0.3s ease-out; }
    .compare-active .catalog-util-bar-wrapper {
      transform: translateY(100%); }
    .util-active .catalog-util-bar-wrapper {
      transform: none; } }

@media screen and (min-width: 83.125em) {
  .catalog-util-bar-wrapper {
    margin-bottom: 1rem;
    position: sticky;
    top: calc(7.5rem - 1px);
    z-index: 3;
    background-color: white; } }
  @media screen and (min-width: 83.125em) and (min-width: 48em) {
    .catalog-util-bar-wrapper {
      margin-bottom: 1.5rem; } }
  @media screen and (min-width: 83.125em) and (min-width: 64em) {
    .catalog-util-bar-wrapper {
      margin-bottom: 2.5rem; } }

@media screen and (max-width: 63.9375em) and (min-width: 56.25em) {
  .catalog-util-bar-wrapper {
    margin-bottom: 1rem;
    position: sticky;
    top: calc(7.5rem - 1px);
    z-index: 3;
    background-color: white; } }
  @media screen and (max-width: 63.9375em) and (min-width: 56.25em) and (min-width: 48em) {
    .catalog-util-bar-wrapper {
      margin-bottom: 1.5rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 56.25em) and (min-width: 64em) {
    .catalog-util-bar-wrapper {
      margin-bottom: 2.5rem; } }

.catalog-util-bar-toggle {
  position: absolute;
  bottom: 100%;
  display: none;
  width: 100%;
  border-top: 4px solid #2d2d2d; }
  .compare-active .catalog-util-bar-toggle {
    display: block; }
  .catalog-util-bar-toggle .button, .catalog-util-bar-toggle .product__quote-form ._submit, .product__quote-form .catalog-util-bar-toggle ._submit,
  .catalog-util-bar-toggle .product__request-virtual-form ._submit, .product__request-virtual-form .catalog-util-bar-toggle ._submit {
    right: 1rem;
    position: absolute;
    bottom: 4px;
    height: 2.5rem;
    min-width: 0;
    padding: 0 0.625rem; }
    @media screen and (min-width: 48em) {
      .catalog-util-bar-toggle .button, .catalog-util-bar-toggle .product__quote-form ._submit, .product__quote-form .catalog-util-bar-toggle ._submit,
      .catalog-util-bar-toggle .product__request-virtual-form ._submit, .product__request-virtual-form .catalog-util-bar-toggle ._submit {
        right: 1.5rem; } }
    @media screen and (min-width: 64em) {
      .catalog-util-bar-toggle .button, .catalog-util-bar-toggle .product__quote-form ._submit, .product__quote-form .catalog-util-bar-toggle ._submit,
      .catalog-util-bar-toggle .product__request-virtual-form ._submit, .product__request-virtual-form .catalog-util-bar-toggle ._submit {
        right: 2.5rem; } }

@media screen and (max-width: 56.1875em) {
  .catalog-util-bar {
    position: fixed;
    top: 0;
    bottom: 3.5rem;
    overflow-y: auto;
    width: 100%;
    background-color: white;
    transform: translateY(100%);
    transition: transform 0.2s ease; }
    .is-visible .catalog-util-bar {
      transform: translateY(0); } }

@media screen and (max-width: 83.0625em) and (min-width: 64em) {
  .catalog-util-bar {
    position: fixed;
    top: 0;
    bottom: 3.5rem;
    overflow-y: auto;
    width: calc(100% - 17.5rem);
    background-color: white;
    transform: translateY(100%);
    transition: transform 0.2s ease; }
    .is-visible .catalog-util-bar {
      transform: translateY(0); } }

@media screen and (min-width: 83.125em) {
  .catalog-util-bar {
    display: flex;
    align-items: center;
    height: 3.8125rem;
    border-top: 1px solid #dfdfdf;
    border-bottom: 1px solid #dfdfdf; } }

@media screen and (max-width: 63.9375em) and (min-width: 56.25em) {
  .catalog-util-bar {
    display: flex;
    align-items: center;
    height: 3.8125rem;
    border-top: 1px solid #dfdfdf;
    border-bottom: 1px solid #dfdfdf; } }

.catalog-util-bar .util-panel-close {
  position: absolute;
  top: 1.375rem;
  right: 1.5rem;
  z-index: 1;
  padding: 0; }
  @media screen and (min-width: 83.125em) {
    .catalog-util-bar .util-panel-close {
      display: none; } }
  @media screen and (max-width: 63.9375em) and (min-width: 56.25em) {
    .catalog-util-bar .util-panel-close {
      display: none; } }
  .catalog-util-bar .util-panel-close svg {
    width: 1.25rem;
    height: 1.25rem; }

.catalog-util-bar .dropdown {
  display: block; }
  @media screen and (max-width: 56.1875em) {
    .catalog-util-bar .dropdown {
      padding-right: 1.5rem;
      padding-left: 1.5rem; } }
  @media screen and (max-width: 83.0625em) and (min-width: 64em) {
    .catalog-util-bar .dropdown {
      padding-right: 1.5rem;
      padding-left: 1.5rem; } }
  @media screen and (min-width: 83.125em) {
    .catalog-util-bar .dropdown {
      display: flex;
      flex: 0 0 auto;
      align-items: center;
      height: 100%; } }
  @media screen and (max-width: 63.9375em) and (min-width: 56.25em) {
    .catalog-util-bar .dropdown {
      display: flex;
      flex: 0 0 auto;
      align-items: center;
      height: 100%; } }

.catalog-util-bar .dropdown-toggle {
  padding: 1.5rem 0;
  font-family: "Raleway"; }
  @media screen and (max-width: 56.1875em) {
    .catalog-util-bar .dropdown-toggle {
      position: relative;
      width: 100%;
      text-align: left;
      border-bottom: 1px solid #dfdfdf; }
      .catalog-util-bar .dropdown-toggle::before {
        position: absolute;
        right: 0.25rem;
        top: 50%;
        display: block;
        height: 0.5rem;
        width: 0.5rem;
        margin-top: -0.125rem;
        border-style: solid;
        border-color: rgba(51, 51, 51, 0.5);
        border-width: 1px 1px 0 0;
        content: "";
        transform: rotate(45deg);
        transition: all 0.1s linear; } }
  @media screen and (max-width: 83.0625em) and (min-width: 64em) {
    .catalog-util-bar .dropdown-toggle {
      position: relative;
      width: 100%;
      text-align: left;
      border-bottom: 1px solid #dfdfdf; }
      .catalog-util-bar .dropdown-toggle::before {
        position: absolute;
        right: 0.25rem;
        top: 50%;
        display: block;
        height: 0.5rem;
        width: 0.5rem;
        margin-top: -0.125rem;
        border-style: solid;
        border-color: rgba(51, 51, 51, 0.5);
        border-width: 1px 1px 0 0;
        content: "";
        transform: rotate(45deg);
        transition: all 0.1s linear; } }
  @media screen and (min-width: 83.125em) {
    .catalog-util-bar .dropdown-toggle {
      height: 100%;
      padding: 0 1.875rem 0 1.25rem;
      line-height: 0; }
      .catalog-util-bar .dropdown-toggle:hover, .catalog-util-bar .dropdown-toggle:focus, .catalog-util-bar .dropdown-toggle.tether-enabled {
        background-color: whitesmoke;
        outline: 0; } }
  @media screen and (max-width: 63.9375em) and (min-width: 56.25em) {
    .catalog-util-bar .dropdown-toggle {
      height: 100%;
      padding: 0 1.875rem 0 1.25rem;
      line-height: 0; }
      .catalog-util-bar .dropdown-toggle:hover, .catalog-util-bar .dropdown-toggle:focus, .catalog-util-bar .dropdown-toggle.tether-enabled {
        background-color: whitesmoke;
        outline: 0; } }
  .catalog-util-bar .dropdown-toggle.dropdown-visible::before {
    transform: rotate(0);
    width: 0.75rem;
    height: 0;
    margin-top: 0; }
  .catalog-util-bar .dropdown-toggle svg {
    position: absolute;
    right: 0.75rem;
    margin-bottom: 0.125rem;
    margin-left: 0.5rem; }
    @media screen and (max-width: 56.1875em) {
      .catalog-util-bar .dropdown-toggle svg {
        display: none; } }
    @media screen and (max-width: 83.0625em) and (min-width: 64em) {
      .catalog-util-bar .dropdown-toggle svg {
        display: none; } }

.catalog-util-bar .catalog-util-dropdown-panel {
  position: absolute;
  top: 100%; }

.catalog-util-bar .more-menu {
  visibility: hidden; }
  @media screen and (max-width: 56.1875em) {
    .catalog-util-bar .more-menu {
      display: none; } }
  @media screen and (max-width: 83.0625em) and (min-width: 64em) {
    .catalog-util-bar .more-menu {
      display: none; } }
  .catalog-util-bar .more-menu.is-visible {
    visibility: visible; }

@media screen and (max-width: 56.1875em) {
  .catalog-util-label {
    display: block;
    padding: 1.5rem;
    text-align: center;
    border-bottom: 1px solid #dfdfdf; } }

@media screen and (max-width: 83.0625em) and (min-width: 64em) {
  .catalog-util-label {
    display: block;
    padding: 1.5rem;
    text-align: center;
    border-bottom: 1px solid #dfdfdf; } }

@media screen and (min-width: 83.125em) {
  .catalog-util-label {
    flex: 0 0 auto;
    margin-right: 1rem; } }

@media screen and (max-width: 63.9375em) and (min-width: 56.25em) {
  .catalog-util-label {
    flex: 0 0 auto;
    margin-right: 1rem; } }

.catalog-util-dropdown-panel {
  min-width: 14.375rem;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem; }
  @media screen and (min-width: 83.125em) {
    .catalog-util-dropdown-panel {
      border: 1px solid #dfdfdf; } }
  @media screen and (max-width: 63.9375em) and (min-width: 56.25em) {
    .catalog-util-dropdown-panel {
      border: 1px solid #dfdfdf; } }
  .catalog-util-dropdown-panel .form-label {
    color: rgba(51, 51, 51, 0.8); }
    .catalog-util-dropdown-panel .form-label:last-child {
      padding-bottom: 0; }

.catalog-shop-by {
  margin-top: -0.5rem; }

.catalog-shop-by-action {
  display: block;
  padding: 0.5rem 1.5rem; }
  .catalog-shop-by-action:hover {
    background-color: whitesmoke; }

@media screen and (max-width: 56.1875em) {
  .sort-block-container {
    display: none; }
    .sort-block-container.is-visible {
      display: block; }
    .sort-block-container .dropdown-toggle {
      display: none; }
    .sort-block-container .dropdown-panel {
      display: block !important; } }

@media screen and (max-width: 83.0625em) and (min-width: 64em) {
  .sort-block-container {
    display: none; }
    .sort-block-container.is-visible {
      display: block; }
    .sort-block-container .dropdown-toggle {
      display: none; }
    .sort-block-container .dropdown-panel {
      display: block !important; } }

@media screen and (min-width: 83.125em) {
  .sort-block-container {
    flex: 0 0 auto;
    height: 100%;
    padding-left: 1rem;
    margin-left: auto; } }

@media screen and (max-width: 63.9375em) and (min-width: 56.25em) {
  .sort-block-container {
    flex: 0 0 auto;
    height: 100%;
    padding-left: 1rem;
    margin-left: auto; } }

.product-list-sort {
  padding-left: 1.5rem;
  padding-right: 1.5rem; }

.catalog-util-active-filters {
  display: flex;
  align-items: center;
  padding-top: 1.5rem; }
  @media screen and (max-width: 56.1875em) {
    .catalog-util-active-filters {
      position: relative;
      padding: 0.5rem;
      background-color: white;
      border-top: 1px solid #dfdfdf; } }
  @media screen and (max-width: 83.0625em) and (min-width: 64em) {
    .catalog-util-active-filters {
      position: relative;
      padding: 0.5rem;
      background-color: white;
      border-top: 1px solid #dfdfdf; } }
  .catalog-util-active-filters .icon-star-full:not(:first-child) {
    margin-left: 0.5rem; }
  .catalog-util-active-filters .icon-x {
    width: 0.625rem;
    margin-left: 1rem; }
  .catalog-util-active-filters .clear-all {
    color: #2d2d2d;
    font-size: 0.875rem; }

.catalog-util-active-filter {
  display: inline-flex;
  align-items: center;
  padding: 0.25rem 0.5rem;
  margin-right: 1rem;
  background-color: whitesmoke; }

.catalog-util-button-wrapper {
  display: flex;
  background-color: white; }
  @media screen and (min-width: 83.125em) {
    .catalog-util-button-wrapper {
      display: none; } }
  @media screen and (max-width: 63.9375em) and (min-width: 56.25em) {
    .catalog-util-button-wrapper {
      display: none; } }
  .catalog-util-button-wrapper .button, .catalog-util-button-wrapper .product__quote-form ._submit, .product__quote-form .catalog-util-button-wrapper ._submit,
  .catalog-util-button-wrapper .product__request-virtual-form ._submit, .product__request-virtual-form .catalog-util-button-wrapper ._submit {
    flex: 1;
    min-width: 0; }
    .catalog-util-button-wrapper .button:first-child, .catalog-util-button-wrapper .product__quote-form ._submit:first-child, .product__quote-form .catalog-util-button-wrapper ._submit:first-child,
    .catalog-util-button-wrapper .product__request-virtual-form ._submit:first-child, .product__request-virtual-form .catalog-util-button-wrapper ._submit:first-child {
      margin-right: 1px; }
    .catalog-util-button-wrapper .button + .button, .catalog-util-button-wrapper .product__quote-form ._submit + .button, .product__quote-form .catalog-util-button-wrapper ._submit + .button, .catalog-util-button-wrapper .product__request-virtual-form ._submit + .button, .product__request-virtual-form .catalog-util-button-wrapper ._submit + .button, .catalog-util-button-wrapper .product__quote-form .button + ._submit, .product__quote-form .catalog-util-button-wrapper .button + ._submit, .catalog-util-button-wrapper .product__quote-form ._submit + ._submit, .product__quote-form .catalog-util-button-wrapper ._submit + ._submit,
    .catalog-util-button-wrapper .product__request-virtual-form .button + ._submit, .product__request-virtual-form .catalog-util-button-wrapper .button + ._submit,
    .catalog-util-button-wrapper .product__request-virtual-form ._submit + ._submit, .product__request-virtual-form .catalog-util-button-wrapper ._submit + ._submit {
      margin-left: 0; }

.product-images .product-image-slide {
  display: none;
  width: 100%;
  height: auto; }

.product-images .flickity-viewport {
  margin-bottom: 0; }
  .product-images .flickity-viewport .product-image-slide {
    display: block;
    opacity: 0;
    transition: opacity 0.2s ease-out; }
    .product-images .flickity-viewport .product-image-slide.is-selected {
      opacity: 1; }
    .product-images .flickity-viewport .product-image-slide img {
      width: 100%; }

.product-images-pagination-item {
  display: inline-block;
  width: 3.5rem;
  padding-bottom: 3.5rem;
  margin-top: 2.5rem;
  margin-right: 1rem;
  cursor: pointer;
  background-color: transparent;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: contain;
  border: 1px solid transparent;
  transition: opacity 0.2s ease; }
  .product-images-pagination-item:last-child {
    margin-right: 0; }
  .product-images-pagination-item:hover {
    opacity: 0.75; }
  .product-images-pagination-item.active {
    border: 1px solid #dfdfdf;
    border-radius: 0.125rem; }

/* Modal Container - Centered */
.custom-gallery-modal {
  display: none;
  position: fixed;
  z-index: 1050;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 90%;
  /* Reduce default width slightly */
  max-width: 1000px;
  /* Reduce max-width for laptops */
  height: auto;
  background-color: rgba(0, 0, 0, 0.8);
  border-radius: 2px; }

/* Laptops: Reduce Modal Size */
@media (max-width: 1366px) {
  .custom-gallery-modal {
    width: 85%;
    max-width: 900px; } }

/* Tablet Screens: Adjust Modal Width */
@media (max-width: 992px) {
  .custom-gallery-modal {
    width: 95%;
    max-width: 750px; } }

/* Mobile Screens: Make it Fit */
@media (max-width: 768px) {
  .custom-gallery-modal {
    width: 98%;
    max-width: 95%; } }

/* Modal Content - Flexbox Layout */
.custom-gallery-content {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  background: #fff;
  padding: 20px;
  border-radius: 2px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  flex-direction: row-reverse;
  /* Thumbnails on the right (desktop) */ }

/* Close Button */
.custom-gallery-close {
  position: absolute;
  top: 5px;
  right: 10px;
  color: #333;
  font-size: 28px;
  font-weight: bold;
  cursor: pointer; }

/* Main Image Display */
.custom-gallery-main {
  flex-grow: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px; }

.custom-gallery-main img {
  max-width: 100%;
  height: auto;
  max-height: 600px;
  object-fit: contain; }

/* Laptops & Tablets: Reduce Image Size */
@media (max-width: 1366px) {
  .custom-gallery-main img {
    max-height: 400px; } }

/* Mobile Screens: Reduce Further */
@media (max-width: 768px) {
  .custom-gallery-main img {
    max-height: 300px; } }

/* Thumbnail Container */
.custom-gallery-thumbnails {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 60px;
  gap: 4px;
  width: 230px;
  padding: 10px;
  background: #f8f8f8;
  align-items: center;
  justify-items: center;
  overflow-y: auto;
  max-height: calc(100vh - 100px);
  /* Prevents exceeding modal height */ }

/* Adjust Thumbnail Grid Layout */
@media (max-width: 600px) {
  .custom-gallery-thumbnails {
    grid-template-columns: repeat(3, 1fr); } }

@media (max-width: 400px) {
  .custom-gallery-thumbnails {
    grid-template-columns: repeat(2, 1fr); } }

/* Thumbnail Images */
.custom-gallery-thumbnail {
  width: 50px;
  height: 50px;
  object-fit: cover;
  cursor: pointer;
  border: 0.5px solid transparent;
  transition: border-color 0.3s; }

.custom-gallery-thumbnail:hover {
  border-color: #0078d7; }

/* Responsive Fix: Move Thumbnails Below */
@media (max-width: 992px) {
  .custom-gallery-content {
    flex-direction: column-reverse;
    align-items: center; }
  .custom-gallery-thumbnails {
    width: 100%;
    border-left: none;
    border-top: 1px solid #ddd;
    padding-top: 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 5px; } }

.swatch-value {
  font-weight: normal;
  color: rgba(51, 51, 51, 0.5); }

.form-field-swatch .form-field-control {
  display: flex;
  flex-wrap: wrap; }

.form-field-swatch .swatch-wrap {
  position: relative;
  float: left;
  margin-right: 0.5rem;
  margin-bottom: 0.5rem;
  border: 1px solid rgba(223, 223, 223, 0.5); }

.form-field-swatch .swatch-none .swatch {
  overflow: visible;
  border: 1px solid transparent; }
  .form-field-swatch .swatch-none .swatch svg {
    width: 1.6875rem;
    height: 1.6875rem; }

.form-field-swatch .swatch {
  position: relative;
  display: block;
  width: 1.875rem;
  height: 1.875rem;
  border: 1px solid transparent; }
  .form-field-swatch .swatch::before {
    display: none; }

.form-field-swatch .swatch-wrap:hover .swatch {
  border-color: #dfdfdf; }

.form-field-swatch .swatch-color {
  position: absolute;
  top: 0.0625rem;
  right: 0.0625rem;
  bottom: 0.0625rem;
  left: 0.0625rem;
  background-size: cover; }
  .form-field-swatch .swatch-color.secondary {
    left: 50%; }
  .form-field-swatch .swatch-color.tertiary {
    top: 50%;
    left: 50%; }

.form-field-swatch .swatch-radio {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  cursor: pointer;
  opacity: 0; }
  .form-field-swatch .swatch-radio:checked + .swatch::after {
    position: absolute;
    top: -0.3125rem;
    right: -0.3125rem;
    width: 1.125rem;
    height: 1.125rem;
    background: #2d2d2d;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='7' viewBox='0 0 16 16'%3E%3Cpath class='checkmark' fill='none' stroke='%23fff' stroke-width='2' stroke-miterlimit='10' d='M1 8l5 6 9-11'/%3E%3C/svg%3E");
    background-position: center center;
    background-repeat: no-repeat;
    border: 1px solid #fff;
    border-radius: 50%;
    content: ""; }

.form-field-swatch .swatch-pattern-expanded {
  position: absolute;
  bottom: calc(100% + 10px);
  left: 50%;
  display: none;
  padding: 3px;
  background: white;
  transform: translateX(-50%); }
  .form-field-swatch .swatch-pattern-expanded img {
    display: block;
    width: 6.25rem;
    max-width: none; }

@media screen and (min-width: 48em) {
  .form-field-swatch .swatch-wrap:hover .swatch-pattern-expanded {
    display: block; } }

.form-field-rectangle .form-field-control {
  display: flex;
  flex-wrap: wrap; }

.form-field-rectangle .rectangle {
  position: relative;
  display: block;
  flex: 0 0 auto;
  margin-right: 0.75rem; }
  .form-field-rectangle .rectangle:hover .rectangle-text {
    border-color: #2d2d2d; }
  .form-field-rectangle .rectangle.form-label {
    min-width: 2rem; }

.form-field-rectangle .rectangle-text {
  display: block;
  height: 2rem;
  padding: 0 0.5rem;
  font-weight: 300;
  line-height: 2;
  text-align: center;
  border: 1px solid #dfdfdf; }
  .form-field-rectangle .rectangle-text::before {
    opacity: 0; }

.form-field-rectangle .form-input, .form-field-rectangle .modal-leave-review .product-item-rating, .modal-leave-review .form-field-rectangle .product-item-rating {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  cursor: pointer;
  opacity: 0; }
  .form-field-rectangle .form-input:checked + .rectangle-text, .form-field-rectangle .modal-leave-review .product-item-rating:checked + .rectangle-text, .modal-leave-review .form-field-rectangle .product-item-rating:checked + .rectangle-text {
    color: #fff;
    background-color: #2d2d2d;
    border-color: #2d2d2d; }

.form-field-product-list-images .form-field-control {
  border: 1px solid #dfdfdf; }

.form-field-checkbox .form-label-text, .form-field-checkbox .shipping-calculator .form-field-radio span, .shipping-calculator .form-field-radio .form-field-checkbox span,
.form-field-radio .form-label-text,
.shipping-calculator .form-field-radio span,
.form-field-product-list .form-label-text,
.form-field-product-list .shipping-calculator .form-field-radio span,
.shipping-calculator .form-field-radio .form-field-product-list span {
  display: inline-block;
  padding-left: 1.75rem;
  vertical-align: middle;
  cursor: pointer; }

.product-picklist-item {
  position: relative; }
  .product-picklist-item input[type=radio] + .product-picklist-item-body::before {
    position: absolute;
    top: 50%;
    left: 9.375rem;
    display: inline-block;
    width: 1.125rem;
    height: 1.125rem;
    border: 1px solid #dfdfdf;
    border-radius: 50%;
    transform: translateY(-50%);
    content: ""; }
  .product-picklist-item input[type=radio]:checked + .product-picklist-item-body::before {
    background-color: #2d2d2d;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='16' width='16'%3E%3Ccircle cx='8' cy='8' r='4' fill='%23fff' /%3E%3C/svg%3E ");
    background-position: 50% center;
    background-repeat: no-repeat;
    border: 1px solid #2d2d2d;
    content: ""; }

.product-picklist-item-body {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 3.75rem;
  padding: 0.625rem 1.25rem;
  cursor: pointer; }
  .product-picklist-item-body.picklist-none {
    padding-left: 9.375rem; }

.product-picklist-image-wrap {
  flex: 0 0 auto;
  width: 6.25rem;
  margin-right: 1.875rem; }

.product-picklist-image {
  vertical-align: bottom; }

.product-picklist-label-text {
  flex: 0 1 auto;
  line-height: 1.4em; }

.form-field-date {
  max-width: 100%; }
  .form-field-date .form-field-control {
    display: flex;
    align-items: center; }
  .form-field-date .form-select {
    width: 100%; }
  .form-field-date .form-date-year {
    width: 44%; }
  .form-field-date .form-date-month {
    width: 25%;
    margin-right: 3%;
    margin-left: 3%; }
  .form-field-date .form-date-day {
    width: 25%; }

.option-unavailable {
  opacity: 0.5; }
  .option-unavailable .swatch-radio {
    cursor: not-allowed; }

.price {
  font-family: "Raleway";
  color: rgba(51, 51, 51, 0.5); }
  .price .price-withtax,
  .price .price-withouttax {
    display: block; }
  .price .price-saved {
    display: block;
    margin-top: 0.5rem;
    font-size: 1.25rem; }
  .price .price-value {
    display: inline-block; }

.price-rrp {
  text-decoration: line-through; }

.prices-both .price-withouttax,
.prices-both-onsale .price-withouttax {
  display: block;
  margin-top: 0.125rem; }

.prices-both-onsale .price-rrp,
.prices-taxed-onsale .price-rrp,
.prices-notax-onsale .price-rrp {
  margin-right: 0.5rem; }

.prices-both-onsale .price-value,
.prices-taxed-onsale .price-value,
.prices-notax-onsale .price-value {
  color: #333333; }

.price-is-discounted {
  text-decoration: line-through; }

.single-product-page {
  max-width: 64rem;
  padding-top: 2.5rem;
  margin: 0 auto; }

.single-product-page-related-products {
  padding-bottom: 14.1875rem; }

.product-images,
.product-details {
  flex: 0 1 auto;
  margin-right: 0.5rem;
  margin-left: 0.5rem; }
  @media screen and (min-width: 48em) {
    .product-images,
    .product-details {
      margin-right: 0.75rem;
      margin-left: 0.75rem; } }
  @media screen and (min-width: 64em) {
    .product-images,
    .product-details {
      margin-right: 1.25rem;
      margin-left: 1.25rem; } }

.single-product-form-section {
  display: flex;
  align-items: flex-end;
  justify-content: space-between; }

.product-images {
  width: calc(100% - 1rem); }
  @media screen and (min-width: 48em) {
    .product-images {
      width: calc(100% - 1.5rem); } }
  @media screen and (min-width: 64em) {
    .product-images {
      width: calc(100% - 2.5rem); } }
  @media screen and (min-width: 64em) {
    .product-images {
      width: calc(41.66667% - 1rem); } }
  @media screen and (min-width: 64em) and (min-width: 48em) {
    .product-images {
      width: calc(41.66667% - 1.5rem); } }
  @media screen and (min-width: 64em) and (min-width: 64em) {
    .product-images {
      width: calc(41.66667% - 2.5rem); } }

@media screen and (min-width: 64em) {
  .product-image-slides-wrap {
    position: sticky;
    top: 10rem; } }

.product-details {
  width: calc(100% - 1rem);
  position: relative; }
  @media screen and (min-width: 48em) {
    .product-details {
      width: calc(100% - 1.5rem); } }
  @media screen and (min-width: 64em) {
    .product-details {
      width: calc(100% - 2.5rem); } }
  @media screen and (min-width: 64em) {
    .product-details {
      width: calc(58.33333% - 1rem); } }
  @media screen and (min-width: 64em) and (min-width: 48em) {
    .product-details {
      width: calc(58.33333% - 1.5rem); } }
  @media screen and (min-width: 64em) and (min-width: 64em) {
    .product-details {
      width: calc(58.33333% - 2.5rem); } }
  .product-details .product-badge {
    display: inline-block; }
  .product-details .price {
    margin-top: 1rem;
    font-size: 1.5rem; }

.product-details-header .rating-stars {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem; }

.product-title {
  margin-bottom: 0.5rem; }

.product-brand {
  display: inline-block;
  margin-bottom: 0.5rem;
  font-family: "Raleway";
  color: rgba(51, 51, 51, 0.5);
  padding-top: 10px; }

.product-stock {
  margin-top: 2.5rem;
  color: rgba(51, 51, 51, 0.5); }
  .product-stock.product-stock-low {
    color: #da3d00; }
  .product-stock.product-stock-hidden {
    display: none; }

.product-release-date {
  margin-top: 1rem; }

.product-description {
  margin-top: 1rem;
  font-family: "Raleway";
  opacity: 0; }
  .product-quick-view .product-description, .product-description.loaded {
    opacity: 1; }

.product-description-read-more {
  display: inline-block;
  margin-top: 1rem; }

.add-to-cart-form {
  color: rgba(51, 51, 51, 0.5); }
  .add-to-cart-form .form-field {
    margin-top: 2.5rem; }
  .add-to-cart-form .form-field-title {
    display: block;
    padding-bottom: 0.625rem; }

.product-options {
  display: inline-block;
  width: 100%; }
  .product-options .form-field:first-child {
    margin-top: 2.5rem; }

.add-to-cart-quantity-container {
  width: 50%; }
  .add-to-cart-quantity-container .form-label-text, .add-to-cart-quantity-container .shipping-calculator .form-field-radio span, .shipping-calculator .form-field-radio .add-to-cart-quantity-container span {
    display: block;
    padding-bottom: 0.625rem; }

.single-product-bulk-pricing-block {
  padding: 1.5rem 0;
  font-family: "Raleway";
  font-weight: 300; }

.bulk-pricing-title {
  font-weight: 600; }

.product-actions {
  display: flex;
  flex-wrap: wrap; }
  .product-actions .dropdown {
    max-width: 13.4375rem;
    margin-right: 1.25em; }
  .product-actions .button, .product-actions .product__quote-form ._submit, .product__quote-form .product-actions ._submit,
  .product-actions .product__request-virtual-form ._submit, .product__request-virtual-form .product-actions ._submit {
    min-width: 13.4375rem;
    padding: 0; }
    .product-actions .button:first-child, .product-actions .product__quote-form ._submit:first-child, .product__quote-form .product-actions ._submit:first-child,
    .product-actions .product__request-virtual-form ._submit:first-child, .product__request-virtual-form .product-actions ._submit:first-child {
      margin-right: 0; }
      @media screen and (max-width: 47.9375em) and (min-width: 30em) {
        .product-actions .button:first-child, .product-actions .product__quote-form ._submit:first-child, .product__quote-form .product-actions ._submit:first-child,
        .product-actions .product__request-virtual-form ._submit:first-child, .product__request-virtual-form .product-actions ._submit:first-child {
          margin-right: 1.25em; } }
      @media screen and (max-width: 79.1875em) and (min-width: 64em) {
        .product-actions .button:first-child, .product-actions .product__quote-form ._submit:first-child, .product__quote-form .product-actions ._submit:first-child,
        .product-actions .product__request-virtual-form ._submit:first-child, .product__request-virtual-form .product-actions ._submit:first-child {
          margin-right: 1.25em; } }
    @media screen and (max-width: 30.9375em) {
      .product-actions .button + .button, .product-actions .product__quote-form ._submit + .button, .product__quote-form .product-actions ._submit + .button, .product-actions .product__request-virtual-form ._submit + .button, .product__request-virtual-form .product-actions ._submit + .button, .product-actions .product__quote-form .button + ._submit, .product__quote-form .product-actions .button + ._submit, .product-actions .product__quote-form ._submit + ._submit, .product__quote-form .product-actions ._submit + ._submit,
      .product-actions .product__request-virtual-form .button + ._submit, .product__request-virtual-form .product-actions .button + ._submit,
      .product-actions .product__request-virtual-form ._submit + ._submit, .product__request-virtual-form .product-actions ._submit + ._submit {
        margin-top: 1.25em; } }
    @media screen and (max-width: 79.1875em) and (min-width: 64em) {
      .product-actions .button + .button, .product-actions .product__quote-form ._submit + .button, .product__quote-form .product-actions ._submit + .button, .product-actions .product__request-virtual-form ._submit + .button, .product__request-virtual-form .product-actions ._submit + .button, .product-actions .product__quote-form .button + ._submit, .product__quote-form .product-actions .button + ._submit, .product-actions .product__quote-form ._submit + ._submit, .product__quote-form .product-actions ._submit + ._submit,
      .product-actions .product__request-virtual-form .button + ._submit, .product__request-virtual-form .product-actions .button + ._submit,
      .product-actions .product__request-virtual-form ._submit + ._submit, .product__request-virtual-form .product-actions ._submit + ._submit {
        margin-top: 1.25em;
        margin-left: 0; } }
  .product-actions .button-primary, .product-actions .account-button-primary, .product-actions .button-contact-submit, .product-actions .product__quote-form ._submit, .product__quote-form .product-actions ._submit,
  .product-actions .product__request-virtual-form ._submit, .product__request-virtual-form .product-actions ._submit {
    background-color: #333333; }
    .product-actions .button-primary:hover, .product-actions .account-button-primary:hover, .product-actions .button-contact-submit:hover, .product-actions .product__quote-form ._submit:hover, .product__quote-form .product-actions ._submit:hover,
    .product-actions .product__request-virtual-form ._submit:hover, .product__request-virtual-form .product-actions ._submit:hover {
      background-color: #292929; }
  .product-actions .button-secondary, .product-actions .account-button-secondary, .product-actions [data-payment-method-form] .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .product-actions .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product-actions [data-payment-method-form] .product__quote-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .product__quote-form .product-actions ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product-actions .product__quote-form [data-payment-method-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__quote-form [data-payment-method-form] .product-actions ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
  .product-actions [data-payment-method-form] .product__request-virtual-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .product__request-virtual-form .product-actions ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product-actions .product__request-virtual-form [data-payment-method-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__request-virtual-form [data-payment-method-form] .product-actions ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
  .product-actions [data-address-form] .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .product-actions .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product-actions [data-address-form] .product__quote-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .product__quote-form .product-actions ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product-actions .product__quote-form [data-address-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__quote-form [data-address-form] .product-actions ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
  .product-actions [data-address-form] .product__request-virtual-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .product__request-virtual-form .product-actions ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product-actions .product__request-virtual-form [data-address-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__request-virtual-form [data-address-form] .product-actions ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit) {
    color: #333333;
    border: 1px solid #333333; }
    .product-actions .button-secondary:hover, .product-actions .account-button-secondary:hover, .product-actions [data-payment-method-form] .button:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .product-actions .button:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product-actions [data-payment-method-form] .product__quote-form ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .product__quote-form .product-actions ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product-actions .product__quote-form [data-payment-method-form] ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__quote-form [data-payment-method-form] .product-actions ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
    .product-actions [data-payment-method-form] .product__request-virtual-form ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .product__request-virtual-form .product-actions ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product-actions .product__request-virtual-form [data-payment-method-form] ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__request-virtual-form [data-payment-method-form] .product-actions ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
    .product-actions [data-address-form] .button:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .product-actions .button:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product-actions [data-address-form] .product__quote-form ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .product__quote-form .product-actions ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product-actions .product__quote-form [data-address-form] ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__quote-form [data-address-form] .product-actions ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
    .product-actions [data-address-form] .product__request-virtual-form ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .product__request-virtual-form .product-actions ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product-actions .product__request-virtual-form [data-address-form] ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__request-virtual-form [data-address-form] .product-actions ._submit:hover:not(.button-primary):not(.account-button-primary):not(.button-contact-submit) {
      color: #fff;
      background-color: #333333; }

.product-alert {
  padding-top: 1.5rem; }
  .product-alert .alert {
    height: auto;
    padding: 1rem;
    line-height: normal;
    text-align: left; }

.product-dropdown-panel {
  width: 16.25rem;
  padding: 1rem;
  margin-top: 0.1875rem;
  color: #fff;
  background: #2d2d2d; }
  .product-dropdown-panel::before {
    position: absolute;
    top: -0.625rem;
    left: 50%;
    width: 0;
    height: 0;
    border-top: 0;
    border-right: 0.625rem solid transparent;
    border-bottom: 0.625rem solid #2d2d2d;
    border-left: 0.625rem solid transparent;
    content: "";
    transform: translateX(-50%); }

.product-share-block {
  position: relative;
  top: -1.5rem;
  width: 50%;
  padding-top: 0;
  padding-left: 1.25rem; }
  @media screen and (min-width: 33.75em) {
    .product-share-block {
      padding-left: 2.5rem; } }
  .no-qty .product-share-block {
    position: static;
    padding-top: 1rem;
    padding-left: 0; }

.share-dropdown-toggle {
  display: flex; }
  .share-dropdown-toggle:hover {
    color: #2d2d2d; }
  .share-dropdown-toggle .share-icon {
    padding-right: 0.5rem; }

.related-products {
  width: 100%; }

.related-products-grid {
  display: block; }
  .related-products-grid:after {
    display: none;
    content: "flickity"; }
  @media screen and (min-width: 48em) {
    .related-products-grid {
      display: flex;
      display: flex;
      flex-wrap: wrap;
      margin-right: -0.5rem;
      margin-left: -0.5rem; } }
  @media screen and (min-width: 48em) and (min-width: 48em) {
    .related-products-grid {
      margin-right: -0.75rem;
      margin-left: -0.75rem; } }
  @media screen and (min-width: 48em) and (min-width: 64em) {
    .related-products-grid {
      margin-right: -1.25rem;
      margin-left: -1.25rem; } }
  @media screen and (min-width: 48em) {
      .related-products-grid:after {
        content: ""; } }
  .related-products-grid .product-grid-item {
    width: calc(83.33333% - 1rem); }
    @media screen and (min-width: 48em) {
      .related-products-grid .product-grid-item {
        width: calc(83.33333% - 1.5rem); } }
    @media screen and (min-width: 64em) {
      .related-products-grid .product-grid-item {
        width: calc(83.33333% - 2.5rem); } }
    @media screen and (min-width: 48em) {
      .related-products-grid .product-grid-item {
        width: calc(25% - 1rem); } }
  @media screen and (min-width: 48em) and (min-width: 48em) {
    .related-products-grid .product-grid-item {
      width: calc(25% - 1.5rem); } }
  @media screen and (min-width: 48em) and (min-width: 64em) {
    .related-products-grid .product-grid-item {
      width: calc(25% - 2.5rem); } }
    @media screen and (min-width: 48em) {
        .related-products-3 .related-products-grid .product-grid-item,
        .related-products-6 .related-products-grid .product-grid-item {
          width: calc(33.33333% - 1rem); } }
    @media screen and (min-width: 48em) and (min-width: 48em) {
      .related-products-3 .related-products-grid .product-grid-item,
      .related-products-6 .related-products-grid .product-grid-item {
        width: calc(33.33333% - 1.5rem); } }
    @media screen and (min-width: 48em) and (min-width: 64em) {
      .related-products-3 .related-products-grid .product-grid-item,
      .related-products-6 .related-products-grid .product-grid-item {
        width: calc(33.33333% - 2.5rem); } }
    @media screen and (min-width: 48em) {
        .related-products-grid .product-grid-item .button, .related-products-grid .product-grid-item .product__quote-form ._submit, .product__quote-form .related-products-grid .product-grid-item ._submit,
        .related-products-grid .product-grid-item .product__request-virtual-form ._submit, .product__request-virtual-form .related-products-grid .product-grid-item ._submit {
          padding-right: 0;
          padding-left: 0; } }

/* Default hidden modal styling RUSH SERVICES */
/* Fullscreen modal styling with unique class prefix */
.rush-service-modal {
  position: fixed;
  z-index: 10000;
  display: none;
  /* Hidden by default */
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.7);
  /* Semi-transparent background overlay */
  top: 0;
  left: 0;
  justify-content: center;
  align-items: center; }

.rush-service-modal.open {
  display: flex; }

.rush-service-modal-content {
  background-color: white;
  border-radius: 8px;
  max-width: 90vw;
  /* Increased max-width for smaller screens */
  max-height: 80vh;
  width: 100%;
  padding: 20px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  position: relative;
  overflow: auto; }

@media (min-width: 768px) {
  .rush-service-modal-content {
    max-width: 50vw;
    /* Set to 50% of viewport width for larger screens */ } }

.rush-service-content {
  overflow: auto;
  max-height: 100%; }

.rush-service-close {
  position: absolute;
  top: 10px;
  right: 10px;
  font-size: 24px;
  cursor: pointer;
  color: black; }

.modal-leave-review .form-field {
  width: 100%; }
  @media screen and (min-width: 33.75em) {
    .modal-leave-review .form-field {
      width: calc(50% - 1rem); } }
  @media screen and (min-width: 33.75em) and (min-width: 48em) {
    .modal-leave-review .form-field {
      width: calc(50% - 1.5rem); } }
  @media screen and (min-width: 33.75em) and (min-width: 64em) {
    .modal-leave-review .form-field {
      width: calc(50% - 2.5rem); } }
  .modal-leave-review .form-field.form-field-multiline {
    width: 100%; }

.modal-leave-review .g-recaptcha {
  margin-top: 2rem; }
  @media screen and (max-width: 33.6875em) {
    .modal-leave-review .g-recaptcha {
      margin-bottom: -1rem;
      transform: scale(0.66);
      transform-origin: 0 0; } }

.modal-leave-review .icon-star-wrap {
  display: none;
  color: #2d2d2d; }
  .modal-leave-review .icon-star-wrap.active {
    display: inline-block; }

.modal-leave-review .rating-stars-wrap {
  position: relative; }

.modal-leave-review .rating-stars {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  opacity: 0; }

.modal-leave-review .rating-stars-label {
  position: relative;
  top: -0.125rem;
  padding-left: 0.625rem; }

.modal-leave-review .product-item-rating {
  pointer-events: none; }

.review-form-title {
  margin-bottom: 3.125rem;
  text-align: center; }

@media screen and (min-width: 33.75em) {
  .review-form-section {
    display: flex;
    justify-content: space-between; } }

.review-form-submit {
  margin-top: 2rem;
  text-align: center; }

.product-tab-review.hidden {
  display: none; }

.product-tab-review.animating, .product-tab-review.visible {
  display: block; }

.rating-stars {
  color: #2d2d2d; }
  .compare-grid-item-bottom .rating-stars {
    position: absolute;
    bottom: 0; }

.single-product-tabs-no-reviews {
  letter-spacing: 0.125rem;
  color: #2d2d2d;
  text-align: center;
  text-transform: uppercase;
  cursor: pointer; }

.single-product-tabs {
  width: 100%;
  margin-top: 5rem;
  margin-bottom: 6.25rem;
  text-align: center; }
  .single-product-tabs::before {
    display: none;
    content: "slide"; }
    @media screen and (min-width: 48em) {
      .single-product-tabs::before {
        content: ""; } }
  .single-product-tabs .tabs {
    position: relative;
    display: none;
    align-items: flex-start;
    justify-content: center;
    text-align: left; }
    @media screen and (min-width: 48em) {
      .single-product-tabs .tabs {
        display: flex; } }

.single-product-tab-title {
  width: 25%;
  text-align: center; }

.single-product-accordion-title {
  display: block;
  width: 100%;
  padding-bottom: 0.0625rem;
  text-align: center; }
  .single-product-accordion-title:last-child {
    padding-bottom: 0; }
  @media screen and (min-width: 48em) {
    .single-product-accordion-title {
      display: none; } }

.single-product-tabs-section {
  display: none;
  margin-top: 3.125rem;
  margin-bottom: 3.125rem; }
  @media screen and (min-width: 48em) {
    .single-product-tabs-section {
      margin-top: 0;
      margin-bottom: 0; } }
  .single-product-tabs-section.active {
    display: block; }

.single-product-tabs-content {
  width: 100%;
  max-width: 48.125rem;
  margin: 0 auto;
  font-family: "Raleway";
  line-height: 1.6em;
  color: #333333;
  text-align: left;
  text-transform: none;
  background: white; }
  @media screen and (min-width: 48em) {
    .single-product-tabs-content {
      margin-top: 4rem; } }

.single-product-tabs-content ul {
  list-style: none;
  margin-left: 1rem; }

.single-product-tabs-section-title {
  margin-bottom: 1.5rem;
  font-size: 1rem;
  font-weight: 300;
  text-align: center;
  text-transform: uppercase; }
  @media screen and (min-width: 48em) {
    .single-product-tabs-section-title {
      margin-bottom: 2.5rem;
      font-size: 1.5rem; }
      .single-product-tabs-reviews .single-product-tabs-section-title {
        margin-bottom: 1rem; } }

/*
 * Reviews
 */
.review-link {
  font-family: "Typo Grotesk Regular";
  font-size: 0.75rem;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 0;
  font-family: inherit;
  background: transparent;
  border: 0;
  border-radius: 0;
  width: 100%;
  padding: 0;
  margin-bottom: 3.125rem;
  color: #333333;
  text-align: center;
  border: 0; }

.product-tab-review {
  padding-top: 2rem;
  padding-bottom: 2rem;
  border-top: 1px solid #dfdfdf; }
  @media screen and (min-width: 48em) {
    .product-tab-review {
      padding-top: 2.5rem;
      padding-bottom: 2.5rem; } }
  .product-tab-review .product-rating {
    width: calc(100% - 1rem); }
    @media screen and (min-width: 48em) {
      .product-tab-review .product-rating {
        width: calc(100% - 1.5rem); } }
    @media screen and (min-width: 64em) {
      .product-tab-review .product-rating {
        width: calc(100% - 2.5rem); } }
    @media screen and (min-width: 33.75em) {
      .product-tab-review .product-rating {
        width: calc(50% - 1rem);
        text-align: right; } }
  @media screen and (min-width: 33.75em) and (min-width: 48em) {
    .product-tab-review .product-rating {
      width: calc(50% - 1.5rem); } }
  @media screen and (min-width: 33.75em) and (min-width: 64em) {
    .product-tab-review .product-rating {
      width: calc(50% - 2.5rem); } }

.single-product-tab-review-header {
  margin-bottom: 1.25rem; }
  @media screen and (min-width: 33.75em) {
    .single-product-tab-review-header {
      display: flex;
      align-items: center; } }

.single-product-tab-review-title {
  width: calc(100% - 1rem);
  font-family: "Typo Grotesk Regular";
  font-size: 0.75rem;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 0.625rem;
  font-family: "Typo Grotesk Regular"; }
  @media screen and (min-width: 48em) {
    .single-product-tab-review-title {
      width: calc(100% - 1.5rem); } }
  @media screen and (min-width: 64em) {
    .single-product-tab-review-title {
      width: calc(100% - 2.5rem); } }
  @media screen and (min-width: 33.75em) {
    .single-product-tab-review-title {
      width: calc(50% - 1rem);
      margin-bottom: 0; } }
  @media screen and (min-width: 33.75em) and (min-width: 48em) {
    .single-product-tab-review-title {
      width: calc(50% - 1.5rem); } }
  @media screen and (min-width: 33.75em) and (min-width: 64em) {
    .single-product-tab-review-title {
      width: calc(50% - 2.5rem); } }

.single-product-tab-review-description {
  margin-bottom: 1.25rem;
  font-weight: 300;
  color: rgba(51, 51, 51, 0.8); }

.single-product-tab-review-name {
  font-family: "Typo Grotesk Regular";
  color: rgba(51, 51, 51, 0.5); }

/*
* Videos
*/
.product-video-container {
  padding-bottom: 1.25rem; }
  @media screen and (min-width: 48em) {
    .product-video-container {
      padding-bottom: 2.5rem; } }
  .product-video-container:last-child {
    padding-bottom: 0; }

/*
 * Additional info
 */
.product-tab-details-item {
  display: flex;
  align-items: center;
  margin-bottom: 1.5rem; }

.product-tab-details-item-name,
.product-tab-details-item-value {
  width: calc(50% - 1rem); }
  @media screen and (min-width: 48em) {
    .product-tab-details-item-name,
    .product-tab-details-item-value {
      width: calc(50% - 1.5rem); } }
  @media screen and (min-width: 64em) {
    .product-tab-details-item-name,
    .product-tab-details-item-value {
      width: calc(50% - 2.5rem); } }

.product-tab-details-item-name {
  font-family: "Typo Grotesk Regular";
  font-size: 0.75rem;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 500; }

.product-tab-details-item-value {
  color: rgba(51, 51, 51, 0.5); }

.cart-item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 2rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid #dfdfdf; }
  @media screen and (max-width: 47.9375em) {
    .cart-item {
      flex-wrap: wrap; } }
  .cart-item:first-child {
    border-top: 1px solid #dfdfdf; }
  .cart-item .form-field-quantity-control {
    width: 6.25rem; }
  .cart-item .quantity-decrement {
    left: 0; }
  .cart-item .quantity-increment {
    right: 0; }

@media screen and (min-width: 48em) {
  .cart-item-section {
    margin-right: 1rem; } }

.cart-item-image {
  width: 6.25rem;
  height: 6.25rem; }
  @media screen and (max-width: 47.9375em) {
    .cart-item-image {
      margin-bottom: 1rem; } }

.cart-item-title {
  font-family: "Typo Grotesk Regular";
  font-size: 1rem;
  line-height: 1.4em;
  color: #333333; }

.cart-item-details {
  flex-basis: calc(100% - 7.25rem); }
  @media screen and (max-width: 47.9375em) {
    .cart-item-details {
      margin-top: 1.5rem;
      margin-right: 0;
      margin-bottom: 1.5rem; } }
  @media screen and (min-width: 48em) {
    .cart-item-details {
      flex-basis: 30%; } }

.cart-modal-content .form-field-title {
  display: block; }

.cart-modal-content .form-field {
  margin-bottom: 1rem; }

.cart-modal-content .form-actions {
  margin-top: 2rem;
  text-align: center; }

.cart-item-giftwrap-type,
.cart-item-giftwrap-message {
  display: block; }

.cart-item-giftwrap-control,
.cart-item-giftwrap-info {
  margin-top: 0.5rem; }

.giftwrap-image {
  float: right; }

.giftwrap-toggle {
  margin-bottom: 1.5rem; }

@media screen and (min-width: 48em) {
  .cart-item-unit-price,
  .cart-item-total-price {
    flex-basis: 15%; } }

.cart-item-discount-line + .cart-item-discount-line {
  margin-top: 0.5rem; }

.cart-item-price-label {
  display: block;
  margin-right: 0.5rem; }

@media screen and (max-width: 47.9375em) {
  .cart-item-quantity {
    align-self: flex-end; } }

.cart-item-total-price {
  text-align: right; }
  @media screen and (max-width: 47.9375em) {
    .cart-item-total-price {
      flex-basis: 100%;
      margin-top: 1rem; } }

.cart-item-remove {
  margin-right: 2rem; }
  @media screen and (max-width: 47.9375em) {
    .cart-item-remove {
      position: absolute;
      top: 1.5rem;
      right: 0;
      margin-right: 0; } }
  .cart-item-remove svg {
    width: 0.875rem;
    height: 0.875rem; }

.cart-lower {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.5rem;
  margin-left: -0.5rem;
  margin-top: 2rem; }
  @media screen and (min-width: 48em) {
    .cart-lower {
      margin-right: -0.75rem;
      margin-left: -0.75rem; } }
  @media screen and (min-width: 64em) {
    .cart-lower {
      margin-right: -1.25rem;
      margin-left: -1.25rem; } }

.cart-totals-container {
  flex: 0 1 auto;
  margin-right: 0.5rem;
  margin-left: 0.5rem;
  width: calc(100% - 1rem); }
  @media screen and (min-width: 48em) {
    .cart-totals-container {
      margin-right: 0.75rem;
      margin-left: 0.75rem; } }
  @media screen and (min-width: 64em) {
    .cart-totals-container {
      margin-right: 1.25rem;
      margin-left: 1.25rem; } }
  @media screen and (min-width: 48em) {
    .cart-totals-container {
      width: calc(100% - 1.5rem); } }
  @media screen and (min-width: 64em) {
    .cart-totals-container {
      width: calc(100% - 2.5rem); } }
  @media screen and (min-width: 64em) {
    .cart-totals-container {
      width: calc(66.66667% - 1rem);
      margin-left: auto; } }
  @media screen and (min-width: 64em) and (min-width: 48em) {
    .cart-totals-container {
      width: calc(66.66667% - 1.5rem); } }
  @media screen and (min-width: 64em) and (min-width: 64em) {
    .cart-totals-container {
      width: calc(66.66667% - 2.5rem); } }
  @media screen and (min-width: 75em) {
    .cart-totals-container {
      width: calc(41.66667% - 1rem); } }
  @media screen and (min-width: 75em) and (min-width: 48em) {
    .cart-totals-container {
      width: calc(41.66667% - 1.5rem); } }
  @media screen and (min-width: 75em) and (min-width: 64em) {
    .cart-totals-container {
      width: calc(41.66667% - 2.5rem); } }

.cart-totals .form-inline .button, .cart-totals .form-inline .product__quote-form ._submit, .product__quote-form .cart-totals .form-inline ._submit,
.cart-totals .form-inline .product__request-virtual-form ._submit, .product__request-virtual-form .cart-totals .form-inline ._submit {
  min-width: 0; }

.cart-totals-block {
  margin-bottom: 1.5rem; }

.cart-total-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  color: rgba(51, 51, 51, 0.8); }

.cart-total-value {
  font-family: "Raleway";
  text-align: right; }

.cart-totals-forms {
  margin-bottom: 2rem; }

.cart-totals-checkout {
  padding-top: 1.5rem;
  margin-top: 1.5rem;
  border-top: 1px solid #dfdfdf; }
  .cart-totals-checkout .button, .cart-totals-checkout .product__quote-form ._submit, .product__quote-form .cart-totals-checkout ._submit,
  .cart-totals-checkout .product__request-virtual-form ._submit, .product__request-virtual-form .cart-totals-checkout ._submit {
    display: block;
    margin-top: 1.5rem; }

.additional-checkout-buttons {
  text-align: center; }

.shipping-quotes {
  padding-top: 2rem;
  text-align: center; }

.shipping-quote-submit {
  display: flex;
  justify-content: space-between; }
  .shipping-quote-submit .button, .shipping-quote-submit .product__quote-form ._submit, .product__quote-form .shipping-quote-submit ._submit,
  .shipping-quote-submit .product__request-virtual-form ._submit, .product__request-virtual-form .shipping-quote-submit ._submit {
    min-width: 0;
    width: calc(50% - 0.5rem); }
  .shipping-quote-submit .button-cancel {
    position: static; }

.empty-cart {
  padding-top: 2rem;
  text-align: center; }

.checkout-multiple {
  display: block;
  margin-top: 1rem;
  text-align: center;
  color: #2d2d2d; }
  .checkout-multiple:hover {
    opacity: 0.7; }

.cart-options-modal {
  opacity: 0; }
  .modal-wrapper.loaded .cart-options-modal {
    opacity: 1; }
  .cart-options-modal .reconfigure-errors {
    display: none; }
  .cart-options-modal .form-actions {
    margin-top: 2rem; }

.cart-item-edit-button {
  margin-top: 0.5rem; }

/* Consolidated .bulkPricing Styles */
.bulkPricing {
  clear: both;
  width: 100%;
  font-size: 1rem;
  text-align: center;
  font-family: Raleway; }

.bulkPricing__heading {
  margin: 0;
  padding: 8px 2px;
  font-size: 14px;
  color: #333333;
  background-color: white;
  border: 1px solid #dfdfdf;
  display: none;
  /* Hidden by default */ }

.bulkPricing__list {
  display: none;
  flex-direction: column;
  justify-content: center;
  /* Center items in list */
  margin: 0;
  padding: 0;
  font-size: 14px;
  list-style: none;
  border: 1px solid #858585; }

@media screen and (max-width: 768px) {
  .bulkPricing__list {
    display: none;
    /* Hide all by default */ }
  .bulkPricing__list.active {
    display: flex;
    /* Show only the active list */ } }

.bulkPricing__item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  /* Center content vertically */
  flex-direction: row;
  padding: 2px 5px;
  /* Adjust padding for better spacing */
  min-height: 30px;
  /* Ensure a minimum height of 30px */
  cursor: pointer;
  border-top: 1px solid #858585;
  border-bottom: 1px solid #dfdfdf;
  background-color: #ffffff;
  /* Default background color */
  transition: background-color 0.3s ease;
  /* Smooth hover effect */ }

.bulkPricing__item:hover {
  background-color: #f0f0f0;
  /* Highlight entire row */ }

.bulkPricing__item-range,
.bulkPricing__item-price {
  flex: 1;
  text-align: center;
  padding: 4px 2px;
  word-wrap: break-word;
  /* Allow text to break into multiple lines */
  white-space: normal;
  /* Enable wrapping */
  overflow: visible;
  /* Ensure text is fully visible */ }

.bulkPricing__item:first-child {
  border-top: none;
  border-bottom: none; }

.bulkPricing__item-range {
  flex: 1;
  padding: 4px 2px;
  text-align: center;
  border: none;
  font-weight: normal;
  padding-left: 0.5rem;
  order: 1;
  /* Range in the first column */ }

.bulkPricing__item-price {
  flex: 1;
  padding: 4px 2px;
  order: 2;
  /* Price in the second column */ }

.bulkPricing__item:first-child .bulkPricing__item-range {
  font-weight: bold;
  /* Makes header spans bold */ }

.bulkPricing__item:last-child .bulkPricing__item-range,
.bulkPricing__item:last-child .bulkPricing__item-price {
  font-size: 12px;
  /* Make the last row's font smaller */ }

.bulkPricing__messages {
  display: flex;
  padding: 0.5rem 0; }

.bulkPricing__messages span {
  color: black;
  padding-right: 10px;
  text-align: center; }

.bulkPricing__messages-a {
  font-size: 14px; }

.bulkPricing__messages-b {
  font-size: 10px; }

/* Responsive Styles */
@media only screen and (min-width: 801px) {
  .bulkPricing__item {
    flex-direction: row;
    border-bottom: 0; } }

@media screen and (max-width: 1300px) {
  .bulkPricing__tab-title a {
    padding: 0; } }

/* Tab Styles */
.bulkPricing__tabs {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  /* Create 3 equal-width columns */
  gap: 0px;
  /* Remove space between cells */
  width: 100%;
  /* Ensure the container takes the full width */
  background: #EEE; }

.bulkPricing__tabs > * {
  padding: 0px;
  background: #EEEEEE;
  border: 1px solid #fff;
  box-sizing: border-box;
  text-align: left;
  /* Align text to the left */
  height: 100%;
  /* Ensures consistent cell height */ }

/* Ensure content aligns evenly in each column */
.bulkPricing__tabs > *:nth-child(3n+1) {
  grid-column: 1; }

.bulkPricing__tabs > *:nth-child(3n+2) {
  grid-column: 2; }

.bulkPricing__tabs > *:nth-child(3n) {
  grid-column: 3; }

/* Handle uneven number of items */
.bulkPricing__tabs > *:last-child {
  grid-column: span 1; }

.bulkPricing__tab-title {
  max-width: 220px;
  display: flex;
  justify-content: flex-start;
  /* Align text container to the left */
  align-items: center;
  /* Vertically align text within the tab */ }

.bulkPricing__tab-title a {
  text-align: left;
  /* Ensure text inside the link is left-aligned */
  display: inline-flex;
  padding: 7px;
  margin: 0;
  color: black;
  letter-spacing: 0.03em;
  font-size: 14px;
  text-transform: capitalize; }

.bulkPricing__tab-title a.active {
  color: black;
  border-bottom: 2px solid #4700B3;
  font-weight: bold;
  padding: 7px;
  display: block;
  /* Make the link span the full width of the cell */
  width: 100%;
  /* Ensure the link takes up the full width */
  box-sizing: border-box;
  /* Include padding in the width calculation */ }

/* Alternate Table */
.productView-info-bulkPricing--custom {
  overflow-x: auto; }

.bulkPricing--custom {
  min-width: 500px; }

.bulkPricing--custom .bulkPricing__item:first-of-type {
  background: #E5E5E5; }

.bulkPricing--custom .bulkPricing__item,
.bulkPricing--custom .bulkPricing__list {
  border: none;
  border-bottom: 1px solid #dfdfdf; }

.bulkPricing--custom .bulkPricing__item-range:first-of-type {
  text-align: left;
  padding-left: 0.5rem; }

.bulkPricing--custom .bulkPricing__item-price {
  font-weight: bold;
  /* Bold prices */
  text-align: center;
  /* Center-align price columns */
  vertical-align: middle;
  /* Align prices vertically in the cell */
  white-space: nowrap;
  /* Prevent text wrapping */
  padding: 0.5rem 0;
  /* Add vertical padding for spacing */ }

/* Ensure first column content is also centered */
.bulkPricing--custom .bulkPricing__item-range {
  display: flex;
  justify-content: center;
  /* Center horizontally */
  align-items: center;
  /* Center vertically */
  text-align: center;
  /* Align text */ }

/* Flickity */
.product-images .flickity-viewport .product-image-slide img {
  padding: 2.5rem;
  border: 1px solid #C4C4C4; }

div[data-its-tab-title],
div[data-its-tab-text] {
  display: none; }

.flex-sb-container {
  display: flex;
  align-items: center;
  justify-content: space-between; }

.dropdown-toggle {
  font-size: 14px; }

.form-select-wrapper::after {
  background-image: url("/assets/img/chevron-down.png");
  right: 2rem;
  width: 0.925rem; }

.page-title {
  display: none; }

.page-page [data-content-region] ul {
  list-style-type: disc; }

.price-rrp-wrapper,
.price-ns-wrapper {
  display: none; }

.price-value-wrapper .price-value-label {
  display: none; }

._form-content input[type=radio] + span::before {
  display: none; }

.breadcrumbs {
  border: none;
  padding: 50px;
  display: flex;
  height: auto;
  align-items: baseline;
  justify-content: center;
  white-space: normal;
  line-height: 2.5rem; }
  @media only screen and (max-width: 1023px) {
    .breadcrumbs {
      display: none; } }

.breadcrumbs * {
  font-size: 30px;
  text-transform: none;
  color: #808080;
  letter-spacing: 0.06em; }

@media screen and (min-width: 1023px) {
  .breadcrumb-separator {
    margin: 0 15px; } }

.page-page .breadcrumbs {
  display: none; }

.alert-message {
  padding: 1rem; }

.page-brand .breadcrumbs {
  display: none; }

.page-search .breadcrumbs {
  display: none; }

.page-search .site-main-sidebar {
  display: none; }

.page-search .search-result-group-wrapper {
  display: none; }

.page-search .product-grid .product-grid-item {
  width: calc(50% - 1rem); }
  @media screen and (min-width: 48em) {
    .page-search .product-grid .product-grid-item {
      width: calc(33% - 1.5rem); } }
  @media screen and (min-width: 1023px) {
    .page-search .product-grid .product-grid-item {
      width: calc(20% - 2.5rem); } }

.page-search .product-catalog-header .page-title {
  font-size: 26px; }

.page-search .page-subtitle,
.page-search .search-tab-title,
.search-results-suggestion {
  display: none; }

.form-input, .modal-leave-review .product-item-rating {
  border: 1px solid #464646; }

.button.button-primary, .button.account-button-primary, .button.button-contact-submit, .product__quote-form ._submit,
.product__request-virtual-form ._submit {
  background: #4700B3;
  color: white;
  font-weight: bold;
  text-transform: none;
  height: auto;
  padding: 1.5rem 2rem;
  font-family: Raleway;
  letter-spacing: 0.06em;
  line-height: unset; }
  .button.button-primary:hover, .button.account-button-primary:hover, .button.button-contact-submit:hover, .product__quote-form ._submit:hover,
  .product__request-virtual-form ._submit:hover {
    background: #242424; }

.button.button-secondary, .button.account-button-secondary, .product__quote-form .account-button-secondary._submit,
.product__request-virtual-form .account-button-secondary._submit, [data-payment-method-form] .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .product__quote-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__quote-form [data-payment-method-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
[data-payment-method-form] .product__request-virtual-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__request-virtual-form [data-payment-method-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
[data-address-form] .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .product__quote-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__quote-form [data-address-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
[data-address-form] .product__request-virtual-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__request-virtual-form [data-address-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__quote-form .button-secondary._submit,
.product__request-virtual-form .button-secondary._submit {
  margin: 0;
  height: auto;
  padding: 1.45rem 2rem;
  text-transform: none;
  font-family: Raleway;
  font-weight: bold;
  letter-spacing: 0.06em;
  line-height: unset;
  border: 2px solid black; }

.account-forgot-form {
  display: flex;
  flex-direction: column; }

.account-forgot-form .form-actions {
  padding-left: 0; }

.bc-carousel__arrow--right,
.bc-carousel__arrow--left {
  background: none; }
  .bc-carousel__arrow--right svg,
  .bc-carousel__arrow--left svg {
    filter: drop-shadow(3px 3px 2px rgba(0, 0, 0, 0.5)); }
  .bc-carousel__arrow--right svg path,
  .bc-carousel__arrow--left svg path {
    fill: white; }

.page-blog_post .breadcrumbs {
  background: none;
  justify-content: left;
  padding: 50px 0 0 0;
  max-width: 48.5rem;
  margin: 0 auto;
  display: flex; }

.single-blog-post-header {
  max-width: 48.5rem;
  text-align: left;
  margin: 0 auto; }
  .single-blog-post-header .share-links {
    margin: 0; }

.page-blog_post .breadcrumb,
.page-blog_post .breadcrumb-separator {
  display: none; }

.page-blog_post .breadcrumb.breadcrumb-active {
  display: block; }

.page-blog .blog-item-summary {
  display: none; }

@media only screen and (max-width: 450px) {
  .blog__time-stamp-container {
    flex-direction: column; } }

.skip-links-container {
  position: absolute;
  left: -999px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden; }

.skip-links-container a:focus,
.skip-links-container a:active {
  left: 0;
  top: 0;
  width: auto;
  height: auto;
  overflow: visible;
  z-index: 1000;
  background: #FFF;
  color: #000;
  padding: 10px;
  text-decoration: none;
  font-weight: bold;
  position: fixed; }

@media only screen and (min-width: 1023px) {
  .page-product .site-main-content {
    padding: 0; } }

.single-product-page {
  max-width: 1600px;
  padding-top: 0; }
  @media only screen and (min-width: 1023px) {
    .single-product-page {
      flex-wrap: nowrap;
      justify-content: center;
      align-items: flex-start; } }

.product__title-container {
  max-width: 1600px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between; }
  @media only screen and (max-width: 1023px) {
    .product__title-container {
      flex-direction: column-reverse;
      padding-top: 1rem; } }
  .product__title-container .product__top-info-brand {
    padding-right: 1.5rem; }
    @media only screen and (min-width: 1023px) {
      .product__title-container .product__top-info-brand {
        display: block; } }

@media only screen and (min-width: 1023px) {
  .product-images {
    width: 60%; } }

@media only screen and (min-width: 1023px) {
  .product-details {
    width: 50%;
    max-width: 590px; } }

.product-images .flickity-slider {
  position: static;
  transform: none; }

.product-images-pagination {
  margin-top: 0; }

.product-images-pagination-item {
  height: 125px;
  max-width: 125px;
  width: 100%;
  margin: 0;
  margin-top: 1.5rem;
  border: 1px solid #cacaca;
  margin-left: 1rem;
  margin-right: 1rem; }
  .product-images-pagination-item a {
    display: block;
    height: 125px !important;
    max-width: 125px !important;
    width: 100% !important; }

.product-title {
  margin-bottom: 1.5rem;
  text-transform: none; }
  @media screen and (min-width: 1024px) {
    .product-title {
      padding-bottom: 1.5rem; } }
  @media only screen and (max-width: 1023px) {
    .product-title {
      margin-left: 0.5rem; } }

.single-product-page-related-products {
  margin-left: 0;
  margin-right: 0; }

.related-products-title {
  text-transform: none;
  font-weight: 500;
  padding: 2rem 0;
  border-top: 1px solid #dfdfdf;
  border-bottom: 1px solid #dfdfdf;
  letter-spacing: 0.04em; }

.page-product .related-products-title::after {
  bottom: 0; }

.related-products-grid {
  margin: 0; }

.page-product .breadcrumbs {
  display: none; }

.page-product .product__title-container .breadcrumbs {
  display: block;
  text-align: left;
  margin: 0;
  margin-top: 1rem;
  background: none;
  border-bottom: none;
  padding-top: 0;
  padding-left: 0;
  margin-left: 0.5rem; }
  @media screen and (min-width: 1024px) {
    .page-product .product__title-container .breadcrumbs {
      padding: 0 1.5rem;
      margin-left: 0; } }
  @media screen and (max-width: 1023px) {
    .page-product .product__title-container .breadcrumbs {
      text-align: center;
      padding: 0; } }

.single-product-tabs {
  margin-bottom: 5rem; }

.single-product-tab-title {
  width: auto; }

.single-product-info-links {
  background: none;
  padding: 1rem 3rem;
  font-size: 18px;
  line-height: unset;
  text-transform: capitalize;
  font-family: "Typo Grotesk Regular";
  color: black; }
  @media screen and (max-width: 1024px) {
    .single-product-info-links {
      padding: 0.5rem; } }

.single-product-info-links.active {
  background: none;
  border-bottom: 2px solid black;
  color: #333333;
  font-weight: 500; }

.single-product-tabs .tabs {
  border-top: 1px solid #dfdfdf;
  border-bottom: 1px solid #dfdfdf;
  justify-content: center;
  flex-wrap: wrap;
  z-index: 2; }

.single-product-tabs-content {
  max-width: 84rem;
  margin-top: 0; }

.tabs__content-section-list-item {
  font-size: 1rem; }

#sales-tools .tabs__content-section-list {
  list-style-type: none; }

.product-actions .button, .product-actions .product__quote-form ._submit, .product__quote-form .product-actions ._submit,
.product-actions .product__request-virtual-form ._submit, .product__request-virtual-form .product-actions ._submit {
  min-width: 0;
  width: 100%; }
  @media only screen and (max-width: 1023px) {
    .product-actions .button, .product-actions .product__quote-form ._submit, .product__quote-form .product-actions ._submit,
    .product-actions .product__request-virtual-form ._submit, .product__request-virtual-form .product-actions ._submit {
      width: 100%; } }

.product-actions .button:first-child, .product-actions .product__quote-form ._submit:first-child, .product__quote-form .product-actions ._submit:first-child,
.product-actions .product__request-virtual-form ._submit:first-child, .product__request-virtual-form .product-actions ._submit:first-child {
  margin-right: 0; }

.product-actions .button-progress {
  margin-left: 0; }
  @media only screen and (min-width: 492px) {
    .product-actions .button-progress {
      margin-top: 1.25em; } }

.single-product-tabs-section {
  padding: 4rem;
  letter-spacing: 0.06em;
  line-height: 200%; }
  @media screen and (max-width: 768px) {
    .single-product-tabs-section {
      margin-top: 0;
      padding: 1rem; } }

.single-product-tabs-section p {
  font-size: 14px; }

#features .tabs__content-section-list {
  margin-top: 50px;
  margin-left: 25px; }

.product__video-cta {
  margin-bottom: 3rem; }

.product__video-cta-container {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-top: 56%;
  z-index: 1; }

.product__video-cta-text-container {
  display: flex;
  justify-content: space-between;
  padding: 1rem 3rem;
  background: #f0f0f0; }

.product__video {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: 1; }

@media only screen and (max-width: 1024px) {
  #features.two-col {
    grid-template-rows: 1fr 1fr;
    max-height: 1000px; } }

@media only screen and (min-width: 1023px) {
  #features.two-col .product__video {
    top: 0px; } }

.product__cta {
  position: relative; }

.product__cta-title {
  font-size: 24px; }

.product__cta-text {
  font-size: 14px;
  margin-bottom: 3rem; }

.product__cta-text-container {
  width: 25%;
  top: 25%;
  left: 5%;
  position: absolute; }
  @media screen and (max-width: 1492px) {
    .product__cta-text-container {
      width: 80%; } }
  @media screen and (max-width: 1023px) {
    .product__cta-text-container {
      position: static;
      padding: 1rem; } }

.product__cta-image {
  position: relative; }

.product__cta-download {
  visibility: hidden;
  position: absolute;
  right: 2%;
  bottom: 0px;
  opacity: 0;
  transition: opacity 1s, bottom 1s; }

.product__cta-image:hover .product__cta-download {
  display: block;
  visibility: visible;
  bottom: 4%;
  opacity: 1; }

.product__cta-download svg {
  width: 50px;
  height: 50px; }

.pdp__sales-tools-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 2rem;
  margin-bottom: 1rem;
  border: 1px solid #dfdfdf;
  max-width: 500px; }

.pdp__sales-tools-link svg {
  height: 25px;
  width: 25px;
  fill: black; }

.product__details-wrapper .product-details-header {
  display: none; }

.product__details-wrapper {
  display: none; }

.product__details-wrapper.show-pdp-details {
  display: block; }

.product-details .price {
  display: none; }

.page-product .product-title {
  max-width: 900px;
  font-size: 36px;
  line-height: 1.4em;
  margin-top: 0;
  margin-bottom: 0rem;
  margin-left: 1.5rem; }
  @media only screen and (max-width: 1023px) {
    .page-product .product-title {
      text-align: center;
      margin: 0; } }

.page-product .product-description {
  margin-top: 0; }

.page-product .breadcrumbs * {
  font-size: 14px;
  font-family: Raleway;
  font-weight: bold; }

.product__top-info-section {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  align-items: center; }
  @media only screen and (max-width: 1370px) {
    .product__top-info-section {
      grid-template-columns: repeat(2, 1fr);
      grid-template-rows: repeat(2, 1fr);
      grid-row-gap: 0.5rem;
      width: 70%; } }
  @media only screen and (max-width: 1023px) {
    .product__top-info-section {
      justify-content: space-between;
      grid-template-columns: repeat(4, 1fr);
      grid-template-rows: 1fr;
      margin-top: 1rem;
      width: 100%; } }
  @media only screen and (max-width: 450px) {
    .product__top-info-section {
      width: 100%;
      grid-template-columns: repeat(3, 1fr);
      grid-template-rows: repeat(2, 1fr);
      grid-row-gap: 0.5rem; } }

@media only screen and (max-width: 450px) {
  .product__top-info-brand {
    grid-column: 1/4; } }

.product-top-info-stock {
  display: none; }

.product__top-info-icon svg {
  border: 1px solid #4700B3;
  border-radius: 50%;
  height: 15px;
  width: 15px;
  margin-right: 10px; }

.product__top-info-icon,
.product__top-info-icon .dropdown-toggle,
.product__top-info-icon .share-dropdown-toggle {
  display: flex;
  align-items: center; }

.product__top-info-stock-text {
  display: flex;
  align-items: center;
  overflow-y: auto;
  /* New line for vertical scroll */ }

.product__top-info-icon .share-icon {
  padding: 0; }

.page-product .product-share-block {
  padding: 0;
  width: auto; }

.product__top-info-share .product-share-block {
  position: static; }

.product__top-info-brand img {
  max-width: 100px; }

.product__top-info-section * {
  font-family: Raleway;
  color: #4700B3;
  font-size: 13px;
  letter-spacing: 0.06em; }

.product-description {
  font-family: Raleway;
  color: black;
  font-size: 14px;
  letter-spacing: 0.06em;
  opacity: 1; }

.product__production-time {
  display: grid;
  grid-template-columns: 30px 1fr;
  column-gap: 1rem;
  padding: 0.5rem 0 0 0; }
  .product__production-time svg {
    margin: 0 auto; }

.product__production-time-list {
  font-family: Raleway;
  display: flex;
  align-items: center;
  color: #000000;
  font-size: 13px;
  text-align: center;
  letter-spacing: 0.06em; }
  @media only screen and (max-width: 1200px) {
    .product__production-time-list {
      flex-direction: column;
      align-items: flex-start; } }

.product__production-time-list a {
  font-family: Raleway;
  color: #4700B3;
  font-weight: bold; }

.product__production-time-list-item {
  width: auto; }

@media only screen and (min-width: 1200px) {
  .product__production-time-list-item:not(:first-of-type)::before {
    content: "|";
    padding: 0 0.5rem; } }

.product__production-time svg {
  width: auto; }

.product__download-section {
  margin: 20px 0 0 0; }

.product-image__download-container {
  display: none;
  text-align: center; }
  .product-image__download-container a {
    width: 100%;
    text-align: center;
    color: #4700B3;
    font-weight: bold;
    letter-spacing: 0.1em;
    display: inline-block; }
    @media only screen and (min-width: 1023px) {
      .product-image__download-container a {
        width: auto; }
        .product-image__download-container a:first-of-type {
          padding-right: 0.5rem; }
        .product-image__download-container a:nth-last-of-type(2), .product-image__download-container a:last-of-type {
          padding-left: 0.5rem;
          border-left: 2px solid #4700B3; } }

.product-image__download-container.active {
  display: block; }

.form-label-text, .shipping-calculator .form-field-radio span {
  color: black;
  font-family: Raleway;
  font-weight: bold;
  letter-spacing: 0.06em; }

.form-field-quantity-control .form-input, .form-field-quantity-control .modal-leave-review .product-item-rating, .modal-leave-review .form-field-quantity-control .product-item-rating {
  border: 1px solid #C2C2C2;
  color: black; }

.product-stock {
  display: none; }

.product-actions .button-secondary, .product-actions .account-button-secondary, .product-actions [data-payment-method-form] .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .product-actions .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product-actions [data-payment-method-form] .product__quote-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .product__quote-form .product-actions ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product-actions .product__quote-form [data-payment-method-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__quote-form [data-payment-method-form] .product-actions ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
.product-actions [data-payment-method-form] .product__request-virtual-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-payment-method-form] .product__request-virtual-form .product-actions ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product-actions .product__request-virtual-form [data-payment-method-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__request-virtual-form [data-payment-method-form] .product-actions ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
.product-actions [data-address-form] .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .product-actions .button:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product-actions [data-address-form] .product__quote-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .product__quote-form .product-actions ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product-actions .product__quote-form [data-address-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__quote-form [data-address-form] .product-actions ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit),
.product-actions [data-address-form] .product__request-virtual-form ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), [data-address-form] .product__request-virtual-form .product-actions ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product-actions .product__request-virtual-form [data-address-form] ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit), .product__request-virtual-form [data-address-form] .product-actions ._submit:not(.button-primary):not(.account-button-primary):not(.button-contact-submit) {
  margin-top: 20px; }

.product__description-wrapper {
  display: flex;
  flex-direction: column;
  margin: 2rem 0; }

.product-description-read-more {
  margin: 0;
  font-weight: 500;
  letter-spacing: 0.06em;
  font-weight: bold; }

.modal--video {
  max-width: 90%; }

.modal--video .modal-content {
  padding: 0;
  background: none; }

.modal-overlay {
  background-color: rgba(255, 255, 255, 0.5); }

.modal__video {
  padding: 2rem;
  height: auto;
  background: white;
  border: 1px solid #c4c4c4; }
  @media only screen and (min-width: 1024px) {
    .modal__video {
      padding: 4rem; } }

.modal--video .modal-close {
  display: flex;
  align-items: center;
  margin-right: 1rem; }
  .modal--video .modal-close::before {
    margin-top: 0.5rem;
    margin-right: 0.5rem;
    content: "CLOSE";
    filter: drop-shadow(16px 16px 20px black) invert(75%); }

.modal--video iframe {
  width: 100%;
  height: 25vh; }
  @media only screen and (min-width: 600px) {
    .modal--video iframe {
      height: 50vh; } }
  @media only screen and (min-width: 1024px) {
    .modal--video iframe {
      height: 95vh; } }

.product-thumbnail__video {
  cursor: pointer;
  position: relative; }

.product-thumbnail__video:hover .product-thumbnail__video-overlay {
  opacity: 0;
  visibility: hidden; }

.product-thumbnail__video:hover a {
  opacity: 0.8; }

.product-thumbnail__video-overlay {
  position: absolute;
  z-index: 1;
  opacity: 100%;
  left: 22%;
  top: 22%;
  transition: opacity 0.2s ease;
  visibility: visible; }

.modal-content-wrap {
  display: none; }

.modal--video .modal-close {
  top: 0.5rem;
  right: 0.5rem; }

.modal--video .modal-close span {
  font-size: 40px;
  filter: drop-shadow(16px 16px 20px black) invert(75%); }

.tooltip {
  position: relative;
  display: inline-block;
  cursor: pointer; }

.tooltip .tooltiptext {
  visibility: hidden;
  display: flex;
  flex-direction: column;
  padding: 1rem;
  background-color: black;
  color: #fff;
  position: absolute;
  z-index: 1;
  width: 200px; }
  @media only screen and (min-width: 1370px) {
    .tooltip .tooltiptext {
      width: 300px; } }

.tooltip .tooltiptext li {
  margin-bottom: 5px; }

.tooltip .tooltiptext li,
.tooltip .tooltiptext strong {
  color: white; }

.tooltip:hover .tooltiptext {
  visibility: visible;
  max-height: 250px;
  z-index: 9999;
  overflow-y: auto;
  /* For vertical scroll */
  overflow-x: hidden;
  /* New line to remove horizontal scroll */ }

.tooltip:hover::after {
  content: " ";
  position: absolute;
  bottom: 100%;
  left: 3%;
  top: 53%;
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent black transparent;
  white-space: nowrap; }

.form-field-title {
  font-weight: bold; }

.swatch-value {
  color: black;
  font-weight: normal; }

.product__quote-form,
.product__request-virtual-form {
  padding: 1rem 0;
  display: none; }

.product__quote-form ._form,
.product__request-virtual-form .form {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important; }

.product__quote-btn,
.product__request-virtual-btn {
  cursor: pointer; }

.product__quote-form input,
.product__request-virtual-form input {
  margin: 0.5rem 0 !important;
  font-family: Raleway !important;
  border: 2px solid black !important;
  border-radius: 0 !important;
  padding: 10px !important;
  width: 100%; }

.product__quote-form ._submit,
.product__request-virtual-form ._submit {
  font-family: Raleway !important;
  border-radius: 0 !important;
  line-height: 0 !important;
  width: 100% !important; }
  .product__quote-form ._submit:hover,
  .product__request-virtual-form ._submit:hover {
    color: white !important;
    background-color: #2d2d2d !important; }

.product__quote-form ._form-fieldset input,
.product__request-virtual-form ._form-fieldset input {
  width: auto; }

.other-buttons__wrapper .product__quote-btn,
.other-buttons__wrapper .product__virtual-btn,
.product__request-virtual-btn {
  width: 100%;
  margin-top: 20px; }

.single-product-page-related-products {
  padding-bottom: 0; }

.product__quote-form ._checkbox-radio span::before {
  display: none; }

.product__quote-form ._form_element {
  margin: 10px 0; }

.btn-disabled {
  cursor: not-allowed;
  opacity: 0.5; }
  .btn-disabled:hover {
    background: none;
    opacity: 0.5;
    color: #2d2d2d; }

.tabs__content-section-list ul {
  list-style-type: disc; }

.tabs__content-section-list tr {
  border: 1px solid black; }

.tabs__content-section-list td {
  padding: 0.5rem; }

.option--order-sample {
  display: none; }

.product__sale-badge-wrapper {
  display: flex;
  width: 100%;
  align-items: center;
  margin-bottom: 1rem; }

.product__sale-badge-wrapper .sale-badge {
  width: 20%;
  text-align: center;
  height: auto; }

.product__sale-msg {
  height: auto;
  padding-right: 1.25em;
  line-height: 2.5rem;
  width: 100%;
  border-bottom: 1px solid #2d2d2d; }

.flag {
  color: white;
  text-transform: uppercase;
  padding: 0.7rem 1rem;
  background: #2d2d2d; }

.flag-text {
  padding-left: 1.25rem; }

.single-product-tabs-content:first-of-type .single-product-accordion-title .single-product-info-links {
  border-top: 1px solid #dfdfdf; }

.single-product-accordion-title .single-product-info-links {
  border-bottom: 1px solid #dfdfdf; }

.single-product-accordion-title .single-product-info-links.active {
  border-bottom: 2px solid black; }

.product-grid-item .price.hide {
  display: none; }

.product-grid-usd .product-grid-item .price.usd.hide,
.product-grid-cad .product-grid-item .price.cad.hide {
  display: block; }

#spectraiframe {
  width: 900px;
  height: 620px;
  left: 1vw; }
  @media only screen and (max-width: 920px) {
    #spectraiframe {
      width: 600px;
      height: 1000px;
      left: 10vw; } }
  @media only screen and (max-width: 750px) {
    #spectraiframe {
      width: 80vw;
      height: 80vh;
      left: 1vw; } }
  @media only screen and (max-width: 3000px) {
    #spectraiframe {
      width: 900px;
      height: 620px;
      left: 10%; } }
  @media only screen and (max-width: 1050px) {
    #spectraiframe {
      width: 600px;
      height: 1000px;
      left: 10%; } }
  @media only screen and (max-width: 750px) {
    #spectraiframe {
      width: 80vw;
      height: 80vh;
      left: 10%; } }

@media only screen and (max-width: 3000px) {
  #spectraiframeclosex {
    left: calc(10% + 920px); } }

@media only screen and (max-width: 1050px) {
  #spectraiframeclosex {
    left: calc(10% + 620px); } }

@media only screen and (max-width: 750px) {
  #spectraiframeclosex {
    left: 81vw; } }

.product__icons {
  margin-top: 50px;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  grid-column-gap: 1rem;
  grid-template-rows: auto; }

.product__icons div {
  margin: 0 auto;
  max-width: 36px;
  display: flex;
  align-items: center; }

.product__icons .tooltiptext {
  top: 25px;
  white-space: pre-wrap;
  font-size: 12px;
  padding: 1rem;
  max-width: 100px; }
  @media only screen and (min-width: 1023px) {
    .product__icons .tooltiptext {
      top: -5px;
      right: 105%;
      max-width: none; } }

@media only screen and (min-width: 1023px) {
  .product__icons .tooltip .tooltiptext::after {
    content: " ";
    position: absolute;
    top: 10%;
    left: 100%;
    bottom: unset;
    margin-top: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: transparent transparent transparent black; } }

.two-col {
  display: grid;
  grid-template-rows: 1fr auto;
  grid-gap: 2rem; }
  @media only screen and (min-width: 1023px) {
    .two-col {
      grid-template-rows: 1fr;
      grid-template-columns: 1fr 1fr; } }
  @media only screen and (max-width: 1024px) {
    .two-col .product__video {
      position: static; } }

.tabs__content-section-list {
  margin: 0 !important; }

.pdp__feature-video-container {
  position: relative;
  display: flex;
  align-items: start; }

#sustainability figure {
  margin: 0; }

#sustainability .tabs__content-section-list {
  margin-bottom: 3rem !important; }

#sustainability .tabs__content-section-list-item {
  display: flex;
  align-items: center; }

.pdp__sus-score h3 {
  font-size: 1.75rem;
  font-weight: 500;
  margin-top: 1rem; }
  @media only screen and (max-width: 1024px) {
    .pdp__sus-score h3 {
      text-align: center; } }

.pdp__sus-averge {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-weight: bold;
  margin-top: 1rem; }
  @media only screen and (min-width: 1024px) {
    .pdp__sus-averge {
      flex-direction: row; } }
  .pdp__sus-averge a {
    color: #4700B3;
    font-weight: bold;
    display: inline-block;
    line-height: 100%; }
    @media only screen and (min-width: 1024px) {
      .pdp__sus-averge a {
        padding-left: 0.5rem;
        margin-left: 0.5rem;
        border-left: 1px solid #4700B3; } }

.view-deco-link {
  color: #4700B3;
  font-weight: 600;
  margin-left: 1rem; }

.misc-notes {
  color: black;
  font-weight: 600; }

.product-image-slides .flickity-page-dots {
  bottom: 1rem; }

.swatch-wrap {
  border: none !important; }

.product-image-slides .flickity-prev-next-button.previous {
  left: -1.25rem; }

.product-image-slides .flickity-prev-next-button.next {
  right: -1.25rem; }

.product__top-info-icon--freight svg {
  border: none;
  height: 21px;
  width: 21px;
  fill: #4700B3; }

@media only screen and (min-width: 1200px) {
  .product-image__download-view::after {
    width: auto;
    content: "|";
    padding: 0 0.5rem; } }

.sale-tab {
  order: -1; }

.three-col {
  display: grid;
  grid-template-rows: 1fr auto auto;
  grid-gap: 2rem; }
  @media only screen and (min-width: 1024px) {
    .three-col {
      grid-template-rows: 1fr;
      grid-template-columns: 1fr 1fr 1fr; } }
  @media only screen and (max-width: 1024px) {
    .three-col .product__video {
      position: static; } }

@media only screen and (max-width: 1024px) {
  #features.three-col {
    grid-template-rows: 1fr 1fr 1fr;
    max-height: 1000px; } }

@media only screen and (min-width: 1024px) {
  #features.three-col .product__video {
    top: 0px; } }

/* General container styling */
.product__raw-stock-table {
  border: 8px solid #eeeeee;
  /* Frame color and thickness */
  padding: 8px;
  background-color: #eeeeee;
  /* General background color for the container */
  color: black !important;
  width: 100%;
  /* Full width */
  max-width: 600px;
  /* Restrict maximum width */
  min-width: 470px;
  /* Minimum width */
  height: auto;
  /* Dynamic height based on content */
  max-height: 450px;
  /* Limit maximum height */
  overflow-y: auto;
  /* Enable vertical scrolling if needed */
  overflow-x: hidden;
  /* Prevent horizontal scrolling */
  box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
  /* Subtle shadow for visibility */
  border-radius: 3px;
  /* Rounded corners for modern look */ }

/* Responsive adjustments */
@media (max-width: 768px) {
  .product__raw-stock-table {
    width: 100%;
    /* Full width for smaller screens */
    max-width: 500px;
    /* Smaller max width for responsive view */
    min-width: 350px;
    /* Allow smaller minimum width */
    padding: 8px;
    /* Slightly smaller padding */
    border-width: 8px;
    /* Adjust border for smaller screens */ } }

@media (max-width: 480px) {
  .product__raw-stock-table {
    max-width: 320px;
    /* Further reduce max width for very small screens */
    padding: 6px;
    /* Smaller padding for compact display */
    border-width: 6px;
    /* Adjust border for very small screens */ } }

/* Ensure all text and elements inside raw-stock-table are black */
.product__raw-stock-table * {
  color: black !important;
  /* Force black text for all elements */ }

/* Force black color for SVG elements */
.product__raw-stock-table svg path,
.product__raw-stock-table svg rect,
.product__raw-stock-table svg g {
  fill: black !important;
  stroke: black !important; }

/* General table styling */
.product__stock-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 10px;
  /* Adjust font size for better readability */
  margin: 5px 0;
  background-color: #eeeeee;
  word-wrap: break-word;
  /* Allow text to wrap */ }

/* Header row styling */
.product__stock-table thead th {
  background-color: #eeeeee;
  /* Header background */
  font-weight: bold;
  text-align: left;
  border: none;
  border-bottom: 1.5px solid black;
  padding: 5px;
  /* Increase padding for readability */
  white-space: nowrap;
  /* Prevent wrapping for headers */
  text-overflow: ellipsis;
  /* Add ellipsis for long text */
  overflow: hidden; }

/* Row and cell styling */
.product__stock-table td,
.product__stock-table th {
  border: none;
  padding: 5px;
  /* Add consistent padding for readability */
  white-space: normal !important;
  /* Allow wrapping in cells */
  word-break: break-word;
  /* Break long words */
  text-overflow: ellipsis; }

/* Alternate row colors for readability */
.product__stock-table tbody tr:nth-child(odd) {
  background-color: #fafafa; }

.product__stock-table tbody tr:nth-child(even) {
  background-color: #f5f5f5;
  /* Slightly darker gray for even rows */ }

/* Add a subtle border for rows */
.product__stock-table tbody tr {
  border-bottom: 1px solid #ddd;
  /* Subtle bottom border */ }

/* Footer row styling */
.product__stock-table tfoot tr {
  border-bottom: 2px solid #ddd; }

/* Data fetching message styling */
.data-fetch {
  text-align: center;
  color: #555 !important; }

/* Borderless footer rows */
.product__stock-table tfoot .borderless {
  border: none;
  font-size: 14px;
  /* Increase font size for better visibility */
  color: #4700b3 !important;
  text-align: left;
  /* Center-align footer text */
  font-weight: bold; }

/* Refresh button styling */
.button-submit {
  background-color: #4700B3;
  color: white !important;
  border: none;
  padding: 6px 10px;
  /* Adjust button padding */
  font-size: 12px;
  /* Slightly larger font */
  cursor: pointer;
  border-radius: 5px;
  /* Rounded corners for modern look */
  transition: background-color 0.3s ease; }

.button-submit:hover {
  background-color: #51278b; }

.button-submit:focus {
  outline: 2px solid #51278b; }

/* Tooltip behavior */
.tooltipinventory {
  position: relative;
  display: inline-block; }

.tooltipinventory:hover .product__raw-stock-table {
  display: block;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 10;
  border: 5px solid #eeeeee;
  background-color: #eeeeee;
  padding: 8px;
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.15); }

/* Initially hidden raw-stock-table */
.tooltipinventory .product__raw-stock-table {
  display: none; }

/* Inventory notes styling */
.inventory-notes {
  font-size: 14px;
  /* Larger font for better readability */
  color: black !important;
  margin-top: 5px;
  line-height: 1.6;
  /* Improved line height for readability */
  font-weight: bold;
  background-color: #eeeeee;
  padding: 10px;
  border-top: 1px solid #ddd; }

/* Stock header container */
.stock-header-container {
  width: 100%;
  background-color: #eeeeee;
  padding: 10px 5px;
  border-bottom: 1.5px solid black; }

/* Stock header layout */
.stock-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: bold;
  font-size: 16px;
  /* Larger font for clarity */ }

/* Title styling */
.inventory-title {
  flex: 1;
  text-align: left;
  font-size: 16px;
  /* Match header font size */ }

/* Sub-header row styling */
thead tr:nth-child(2) th {
  text-align: left;
  padding: 8px;
  /* Adjust padding for consistency */
  font-weight: normal; }

/* White background for <td> with colspan attribute */
.product__stock-table td[colspan] {
  background-color: #ffffff;
  /* White background */
  font-weight: bold;
  /* Optional: Add emphasis if needed */
  text-align: left;
  /* Optional: Center-align text */
  padding: 10px;
  /* Add padding for better spacing */
  border: none;
  /* Ensure no borders for a clean look */
  font-size: 12px; }

.header_bottom--global {
  width: 100%;
  padding: 0;
  margin: 0; }

@media only screen and (max-width: 539px) {
  .header_bottom--global {
    display: none; } }

/* Burger Button */
.burger {
  background: #777; }

/* Mini Cart Count Number */
.mini-cart-count .number {
  color: white; }

.mini-cart-icon-empty svg,
.mini-cart-icon-full svg {
  fill: none; }

/* Navigation Links */
.main-navigation-panel a {
  font-size: 18px;
  font-family: Raleway;
  transition: color 0.3s ease;
  /* Smooth transition for hover effect */ }

.main-navigation-panel a:hover {
  color: #332;
  /* Accent color on hover */ }

/* Mini Cart Icon Wrap */
.mini-cart-icon-wrap {
  display: flex;
  align-items: center; }

@media only screen and (min-width: 1200px) {
  .mini-cart-icon-wrap svg {
    margin-left: 10px; } }

/* Country Selector Item */
.header__country-selector-item {
  background-color: #333;
  color: white;
  padding: 0.5rem;
  border-radius: 1px; }
  .header__country-selector-item a {
    display: flex;
    align-items: baseline;
    justify-content: space-between; }
  .header__country-selector-item svg {
    margin-left: 3px; }

/* Country Selector */
.header__country-selector {
  display: flex;
  align-items: center; }
  @media only screen and (min-width: 1200px) {
    .header__country-selector {
      width: 45px;
      margin-left: 3px; } }
  .header__country-selector .dropdown-toggle span {
    display: flex;
    align-items: center; }

/* Learn More Button */
.learn-more-button {
  background-color: black;
  color: white;
  border: none;
  margin-left: 2px;
  padding: 3px 3px;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  border-radius: 1px;
  cursor: pointer;
  transition: background 0.3s ease, transform 0.2s ease;
  /* Smooth transitions */
  white-space: nowrap; }
  @media only screen and (max-width: 600px) {
    .learn-more-button {
      padding: 2px 2px; } }
  @media only screen and (min-width: 1200px) {
    .learn-more-button {
      padding: 6px 6px; } }

.learn-more-button:hover {
  background-color: #555;
  transform: scale(1.05);
  /* Slight scale effect on hover */ }

.learn-more-button .button-text {
  display: inline;
  font-size: 0.8em; }

@media screen and (max-width: 600px) {
  .learn-more-button .button-text {
    display: none; }
  .learn-more-button:hover .button-text {
    display: inline;
    position: absolute;
    background-color: #fff;
    padding: 5px;
    border: 1px solid #ddd;
    border-radius: 1px;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap; } }

/* Icon Info */
.icon-info {
  font-size: 24px;
  line-height: 1;
  text-align: left;
  color: white;
  margin-right: 5px;
  width: 28px;
  padding: 4px;
  border-radius: 1px;
  cursor: pointer;
  transition: background 0.3s ease, color 0.3s ease;
  /* Smooth transitions */ }

@media screen and (max-width: 600px) {
  .icon-info {
    font-size: 22px;
    padding: 2px 4px;
    border: none;
    box-shadow: none; } }

#videoModal {
  position: fixed;
  z-index: 1000;
  display: none;
  width: 80%;
  max-width: 560px;
  background-color: white;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  border-radius: 1px;
  overflow: hidden;
  left: 0;
  /* Add default left value */ }

/* Mobile Styles */
@media only screen and (max-width: 768px) {
  #videoModal {
    left: 50px !important;
    /* Use important to override inline styles */ } }

@media only screen and (max-width: 768px) {
  #videoModal {
    left: -40px; } }

.modal-content {
  padding: 20px; }

#videoFrame {
  width: 100%;
  height: 315px; }

.close {
  position: absolute;
  top: 10px;
  right: 15px;
  font-size: 20px;
  cursor: pointer;
  color: black; }

.modal-header {
  padding: 5px;
  text-align: left; }

.modal-header h2 {
  font-size: 0.7em;
  text-align: left; }

/* Media query for responsive layout */
@media (max-width: 768px) {
  #videoModal {
    left: 50px;
    /* Move modal 50px to the right */ } }

/* Basic Styles for Language Selector */
/* Language Selector Wrapper */
.header__language-selector {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: nowrap;
  padding: 8px; }
  @media (max-width: 768px) {
    .header__language-selector {
      gap: 6px; } }
  @media (min-width: 769px) {
    .header__language-selector {
      gap: 8px; } }

/* Language Links */
.header__language-selector a {
  text-decoration: none;
  color: white;
  padding: 5px 10px;
  border-radius: 3px;
  font-size: 12px;
  transition: background-color 0.3s;
  white-space: nowrap; }
  .header__language-selector a:hover, .header__language-selector a.selected {
    background-color: #f0f0f0;
    color: #333; }
  .header__language-selector a:focus {
    outline: 2px solid #fff;
    outline-offset: 2px; }
  @media (max-width: 768px) {
    .header__language-selector a {
      font-size: 10px; } }
  @media (min-width: 769px) {
    .header__language-selector a {
      font-size: 14px; } }

.header_bottom--global {
  width: 100%;
  padding: 0;
  margin: 0; }

@media only screen and (max-width: 539px) {
  .header_bottom--global {
    display: none; } }

/* Burger Button */
.burger {
  background: #777; }

/* Mini Cart Count Number */
.mini-cart-count .number {
  color: white; }

.mini-cart-icon-empty svg,
.mini-cart-icon-full svg {
  fill: none; }

/* Navigation Links */
.main-navigation-panel a {
  font-size: 18px;
  font-family: Raleway;
  transition: color 0.3s ease;
  /* Smooth transition for hover effect */ }

.main-navigation-panel a:hover {
  color: #332;
  /* Accent color on hover */ }

/* Mini Cart Icon Wrap */
.mini-cart-icon-wrap {
  display: flex;
  align-items: center; }

@media only screen and (min-width: 1200px) {
  .mini-cart-icon-wrap svg {
    margin-left: 10px; } }

/* Country Selector Item */
.header__country-selector-item {
  background-color: #333;
  color: white;
  padding: 0.5rem;
  border-radius: 1px; }
  .header__country-selector-item a {
    display: flex;
    align-items: baseline;
    justify-content: space-between; }
  .header__country-selector-item svg {
    margin-left: 3px; }

/* Country Selector */
.header__country-selector {
  display: flex;
  align-items: center; }
  @media only screen and (min-width: 1200px) {
    .header__country-selector {
      width: 45px;
      margin-left: 3px; } }
  .header__country-selector .dropdown-toggle span {
    display: flex;
    align-items: center; }

/* Learn More Button */
.learn-more-button {
  background-color: black;
  color: white;
  border: none;
  margin-left: 2px;
  padding: 3px 3px;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  border-radius: 1px;
  cursor: pointer;
  transition: background 0.3s ease, transform 0.2s ease;
  /* Smooth transitions */
  white-space: nowrap; }
  @media only screen and (max-width: 600px) {
    .learn-more-button {
      padding: 2px 2px; } }
  @media only screen and (min-width: 1200px) {
    .learn-more-button {
      padding: 6px 6px; } }

.learn-more-button:hover {
  background-color: #555;
  transform: scale(1.05);
  /* Slight scale effect on hover */ }

.learn-more-button .button-text {
  display: inline;
  font-size: 0.8em; }

@media screen and (max-width: 600px) {
  .learn-more-button .button-text {
    display: none; }
  .learn-more-button:hover .button-text {
    display: inline;
    position: absolute;
    background-color: #fff;
    padding: 5px;
    border: 1px solid #ddd;
    border-radius: 1px;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap; } }

/* Icon Info */
.icon-info {
  font-size: 24px;
  line-height: 1;
  text-align: left;
  color: white;
  margin-right: 5px;
  width: 28px;
  padding: 4px;
  border-radius: 1px;
  cursor: pointer;
  transition: background 0.3s ease, color 0.3s ease;
  /* Smooth transitions */ }

@media screen and (max-width: 600px) {
  .icon-info {
    font-size: 22px;
    padding: 2px 4px;
    border: none;
    box-shadow: none; } }

#videoModal {
  position: fixed;
  z-index: 1000;
  display: none;
  width: 80%;
  max-width: 560px;
  background-color: white;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  border-radius: 1px;
  overflow: hidden;
  left: 0;
  /* Add default left value */ }

/* Mobile Styles */
@media only screen and (max-width: 768px) {
  #videoModal {
    left: 50px !important;
    /* Use important to override inline styles */ } }

@media only screen and (max-width: 768px) {
  #videoModal {
    left: -40px; } }

.modal-content {
  padding: 20px; }

#videoFrame {
  width: 100%;
  height: 315px; }

.close {
  position: absolute;
  top: 10px;
  right: 15px;
  font-size: 20px;
  cursor: pointer;
  color: black; }

.modal-header {
  padding: 5px;
  text-align: left; }

.modal-header h2 {
  font-size: 0.7em;
  text-align: left; }

/* Media query for responsive layout */
@media (max-width: 768px) {
  #videoModal {
    left: 50px;
    /* Move modal 50px to the right */ } }

/* Basic Styles for Language Selector */
/* Language Selector Wrapper */
.header__language-selector {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: nowrap;
  padding: 8px; }
  @media (max-width: 768px) {
    .header__language-selector {
      gap: 6px; } }
  @media (min-width: 769px) {
    .header__language-selector {
      gap: 8px; } }

/* Language Links */
.header__language-selector a {
  text-decoration: none;
  color: white;
  padding: 5px 10px;
  border-radius: 3px;
  font-size: 12px;
  transition: background-color 0.3s;
  white-space: nowrap; }
  .header__language-selector a:hover, .header__language-selector a.selected {
    background-color: #f0f0f0;
    color: #333; }
  .header__language-selector a:focus {
    outline: 2px solid #fff;
    outline-offset: 2px; }
  @media (max-width: 768px) {
    .header__language-selector a {
      font-size: 10px; } }
  @media (min-width: 769px) {
    .header__language-selector a {
      font-size: 14px; } }

#consent-manager-update-banner {
  display: none; }

.site-footer {
  display: grid;
  background: black;
  grid-template-columns: 19rem calc(100% - 19rem);
  grid-template-rows: 0.7fr 0.5fr;
  grid-row-gap: 1rem;
  padding-bottom: 1rem; }
  @media only screen and (max-width: 1023px) {
    .site-footer {
      grid-template-columns: 1fr;
      grid-template-rows: 4fr;
      text-align: center; } }

.footer__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding-top: 4rem; }
  @media only screen and (min-width: 1023px) {
    .footer__logo {
      padding-top: 0;
      grid-column-start: 1;
      grid-column-end: 2;
      grid-row: 1; } }

.footer__brands {
  display: grid;
  grid-template-columns: repeat(11, 1fr);
  align-items: center;
  padding: 0 2rem; }
  @media only screen and (max-width: 1200px) {
    .footer__brands {
      grid-template-columns: repeat(5, 1fr);
      grid-template-rows: 1fr 1fr; } }
  @media only screen and (max-width: 1023px) {
    .footer__brands {
      grid-template-columns: repeat(3, 1fr);
      grid-template-rows: 1fr 1fr 1fr; } }
  @media only screen and (max-width: 1023px) {
    .footer__brands {
      grid-template-columns: repeat(3, 1fr);
      grid-template-rows: repeat(3, 1fr); } }

.footer__brands li {
  padding: 1rem;
  margin: 0 auto; }

.footer__info {
  margin: 0 auto;
  width: 100%;
  max-width: 120px; }
  @media only screen and (min-width: 1023px) {
    .footer__info {
      grid-column-start: 1;
      grid-column-end: 2;
      grid-row: 2; } }

.footer__links {
  margin: 0 auto; }
  @media only screen and (min-width: 1023px) and (max-width: 1200px) {
    .footer__links {
      padding-left: 1.5rem;
      /* Add padding for laptops */
      padding-right: 1.5rem;
      display: flex;
      justify-content: space-between;
      margin: 0;
      grid-column-start: 2;
      grid-column-end: 3;
      grid-row: 2;
      font-size: 0.7rem;
      /* Adjust font size for laptops */
      padding-top: 0rem;
      /* Add some top padding */
      padding-bottom: 1rem;
      /* Add some bottom padding */ } }
  @media only screen and (min-width: 1201px) {
    .footer__links {
      padding-left: 2rem;
      /* Larger padding for larger screens */
      padding-right: 2rem;
      display: flex;
      justify-content: space-between;
      margin: 0;
      grid-column-start: 2;
      grid-column-end: 3;
      grid-row: 2;
      font-size: 1rem;
      /* Adjust font size for larger screens */
      padding-top: 0rem;
      /* Add some top padding */
      padding-bottom: 1rem;
      /* Add some bottom padding */ } }
  @media only screen and (max-width: 1022px) {
    .footer__links {
      padding-left: 1rem;
      /* Adjust padding for tablets and smaller screens */
      padding-right: 1rem;
      font-size: 0.7rem;
      /* Smaller font size for tablets */
      padding-top: 0.5rem;
      /* Adjust top padding */
      padding-bottom: 0.5rem;
      /* Adjust bottom padding */ } }
  @media only screen and (max-width: 480px) {
    .footer__links {
      padding-left: 0.8rem;
      /* Smaller padding for mobile screens */
      padding-right: 0.8rem;
      font-size: 0.7rem;
      /* Smaller font size for mobile */
      padding-top: 0.5rem;
      /* Adjust top padding */
      padding-bottom: 0.5rem;
      /* Adjust bottom padding */ } }

.footer__links-list {
  padding: 1.2rem 1.5rem;
  /* Default vertical and horizontal padding */ }

@media (max-width: 768px) {
  .footer__links-list {
    padding: 0.8rem 1rem;
    /* Adjust vertical and horizontal padding for tablets and smaller screens */ } }

@media (max-width: 480px) {
  .footer__links-list {
    padding: 0.5rem 0.8rem;
    /* Adjust vertical and horizontal padding for mobile screens */ } }

.footer__links-title {
  font-weight: bold;
  font-size: 18px;
  margin-bottom: 5px; }
  @media only screen and (min-width: 1023px) and (max-width: 1200px) {
    .footer__links-title {
      font-size: 14px;
      /* Adjust font size for laptops */
      padding-top: 0rem;
      /* Add some top padding */
      padding-bottom: 1rem;
      /* Add some bottom padding */ } }
  @media only screen and (min-width: 1201px) {
    .footer__links-title {
      font-size: 15px;
      /* Adjust font size for larger screens */
      padding-top: 0rem;
      /* Add some top padding */
      padding-bottom: 0.5rem;
      /* Add some bottom padding */ } }

.footer__social ul {
  display: flex;
  justify-content: center;
  /* Centers the social icons */
  flex-wrap: wrap;
  /* Allows icons to wrap to the next line on smaller screens */
  padding: 0;
  list-style: none;
  /* Removes default list styling */ }

.footer__social-link {
  display: flex;
  /* Makes the link flex container */
  justify-content: center;
  /* Centers the SVG within the link */
  align-items: center;
  /* Vertically centers the SVG within the link */
  margin-right: 20px;
  /* Spacing between icons */ }

.footer__social-link svg {
  fill: white;
  width: 24px;
  height: 24px; }

@media only screen and (max-width: 1023px) {
  .footer__social-link {
    margin-right: 0;
    /* Removes right margin on smaller screens for better spacing */
    margin-bottom: 10px;
    /* Adds bottom margin for stacking */
    padding: 10px; }
  .footer__social ul {
    justify-content: center;
    /* Ensures icons remain centered when stacked */ } }

.site-footer * {
  color: white;
  font-family: Raleway;
  letter-spacing: 0.04em; }

.footer__column:first-child {
  padding: 4rem 6rem; }

.footer__column:last-child {
  padding: 4rem 2rem; }

.footer__logo .logo-image {
  max-width: 120px; }

.footer__brands svg {
  max-width: 136px;
  margin: 5px 5px; }
  @media only screen and (max-width: 1023px) {
    .footer__brands svg {
      max-width: 100px; } }

.footer__info-text {
  margin-top: 0;
  margin-bottom: 5px;
  font-weight: 500; }

.footer__link-item {
  margin-bottom: 10px; }

.footer__copyright-text {
  width: 100%;
  margin: 0 auto;
  text-align: right;
  padding-right: 30px;
  font-size: 12px; }

.footer__email-signup {
  line-height: 75px;
  min-width: none !important; }
  @media only screen and (max-width: 1023px) {
    .footer__email-signup {
      margin: 1rem 0; } }

@media only screen and (min-width: 1023px) {
  .footer__social {
    margin: 0 5%; } }

.footer__social h5 {
  margin-bottom: 1rem; }

.email-signup-button {
  display: inline-block;
  padding: 8px 15px;
  font-size: 10px;
  color: #fff;
  background-color: #4700b3;
  border: none;
  text-decoration: none;
  transition: background-color 0.3s ease; }

.email-signup-button:hover {
  background-color: #4700b4; }

@media (max-width: 600px) {
  .email-signup-button {
    margin-top: 20px;
    /* Add top margin on smaller screens */ } }

.footer__images-close {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  /* Align items to the top */
  flex-wrap: nowrap;
  /* Ensure no wrapping on larger screens */ }

.footer__image-container {
  margin: 5px;
  flex: 1 1 auto;
  /* Allow the containers to grow and shrink */
  box-sizing: border-box; }

.footer__image-container img {
  max-width: 80%;
  height: auto; }

@media (max-width: 600px) {
  .footer__images-close {
    flex-wrap: wrap;
    /* Allow wrapping on smaller screens */
    padding-top: 25px;
    /* Add top padding on smaller screens */
    justify-content: center;
    /* Center images horizontally */ }
  .footer__image-container {
    flex: 1 1 100%;
    /* Make each container take full width */ } }

@media only screen and (min-width: 1023px) {
  .page-default .site-main-content {
    width: 100% !important; } }

@media only screen and (min-width: 1023px) {
  .hero-carousel .ratio-16-9 {
    padding-bottom: 45%; }
  .hero-carousel .carousel-item-image--wrapper {
    margin-top: -12px;
    padding: 0rem 0rem 0rem 0rem; }
  .hero-carousel .is-selected .carousel-item-info-wrapper {
    transform: none;
    padding: 10px;
    margin-bottom: 1rem; }
  .hero-carousel .carousel-nav-item {
    position: static;
    background: none;
    border: none;
    padding: 0px 0;
    padding: 0; }
  .hero-carousel .carousel-nav-item svg {
    height: 45px;
    width: 25px;
    -webkit-filter: drop-shadow(3px 3px 2px rgba(0, 0, 0, 0.5));
    filter: drop-shadow(3px 3px 2px rgba(0, 0, 0, 0.5)); }
  .carousel-style-accent .carousel-nav-item:first-child {
    border: none; }
  .hero-carousel .carousel-nav {
    position: relative;
    bottom: 0; }
  .hero-carousel .carousel-nav-prev {
    left: 0;
    float: left;
    margin-left: 1rem; }
  .hero-carousel .carousel-nav-next {
    right: 0;
    float: right;
    margin-right: 1rem; }
  .hero-carousel .carousel-item-info {
    position: relative;
    transform: none;
    margin-bottom: 0rem;
    background-color: rgba(17, 17, 17, 0.6);
    padding-bottom: 10px; } }

.home-section-title, .related-products-title {
  font-family: 'Typo Grotesk Bold';
  text-transform: none;
  font-size: 26px;
  color: black;
  position: relative;
  margin-bottom: 50px; }

.home-section-title::after, .related-products-title::after {
  content: "";
  position: absolute;
  border-top: 4px solid black;
  left: 47.5%;
  bottom: -30px;
  width: 5%;
  height: 0px; }

.home__welcome {
  margin: 0rem -2.5rem 0;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 50px 30px;
  background: #4700B3;
  margin-bottom: 20px; }
  @media only screen and (max-width: 1023px) {
    .home__welcome {
      flex-direction: column;
      text-align: center;
      margin: 0 -1rem;
      margin-bottom: 10px; } }

.home__welcome-text-container {
  margin-bottom: 1rem; }
  @media only screen and (min-width: 1023px) {
    .home__welcome-text-container {
      margin-bottom: 0;
      margin-right: 2.5rem; } }

.home__welcome-text-container *,
.home__welcome-button {
  color: white; }

.home__welcome-title {
  font-weight: bold;
  text-transform: uppercase;
  font-size: 28px; }

.home__welcome-sub-title {
  font-family: 'Raleway';
  font-size: 26px; }

.home__welcome-button {
  border: 2px solid white !important;
  text-transform: none;
  height: 4.7rem;
  line-height: 4.5rem; }
  .home__welcome-button:hover {
    color: #4700B3;
    background: white; }

.recent-blog-posts.home-section-grid-container {
  width: 100%; }

.home-sections .blog-item-thumbnail img {
  height: auto;
  width: 95%; }

.home-sections .blog-item-thumbnail {
  height: 400px; }

.home-sections .blog-item-summary,
.home-sections .blog-item-readmore {
  display: none; }

.home-sections .blog-item-title {
  font-family: "Raleway";
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0;
  color: black;
  text-align: left; }

.home-sections .blog-item-content {
  margin-top: 20px; }

.blog-item-author-date {
  font-size: 0.85rem;
  margin-top: 0; }

.home-section + .home-section {
  border-top: none; }

.home__blog-title-wrapper {
  position: relative; }

.home__blog-view-all {
  top: 0;
  right: 0;
  position: absolute;
  color: #4700B3;
  text-transform: uppercase;
  font-weight: bold;
  padding-top: 0.5rem; }

.product-grid-item .product-grid-item-name, .product-grid-item .account-product-item-title {
  font-family: 'Typo Grotesk Bold';
  color: black;
  text-align: left;
  font-size: 20px;
  text-transform: none;
  padding-left: 1rem; }

.product-grid-item .grid-item-overlay {
  height: 100%;
  bottom: 0; }

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  /* added to ensure the text does not wrap */
  border: 0; }

.product-grid-item .price {
  padding-left: 1rem; }
  @media screen and (max-width: 500px) {
    .product-grid-item .price {
      text-align: left;
      font-size: 0.8rem;
      margin-top: 0; } }

.product-grid-item .price-value-wrapper {
  text-align: left; }

.product-grid-item .grid-item-image-container {
  border: 0.5px solid #898989;
  margin-bottom: 0; }

.product-grid-item .grid-item-image-container img {
  padding: 0;
  /* Remove padding from the image */
  width: 95%;
  /* Make the image fill the container */
  height: auto;
  /* Maintain aspect ratio */
  object-fit: cover;
  /* Ensure the image scales properly */ }

.product-card__logo {
  position: absolute;
  bottom: -5px;
  right: -30px;
  max-width: 90px; }
  @media screen and (max-width: 500px) {
    .product-card__logo {
      max-width: 70px;
      bottom: -15px;
      right: -40px; } }

.home__brands-logos a {
  display: flex;
  justify-content: center;
  align-items: center; }

.home__brands-logos {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  grid-row-gap: 5rem;
  grid-template-rows: repeat(2, 1fr);
  grid-column-gap: 1rem; }
  @media only screen and (max-width: 1023px) {
    .home__brands-logos {
      grid-template-columns: repeat(3, 1fr);
      grid-template-rows: repeat(3, 1fr); } }
  @media only screen and (max-width: 551px) {
    .home__brands-logos {
      grid-template-columns: repeat(2, 1fr);
      grid-template-rows: repeat(5, 1fr); } }

.home__welcome2-section {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 40px;
  background: url("https://store-3kam1hz68o.mybigcommerce.com/content/welcome-section/FusionForwardBar-Option2.jpg") no-repeat center/cover;
  color: #fff;
  gap: 10px; }

.home__welcome2-section .home__welcome2-text-content {
  flex: 0 0 70%;
  background: rgba(0, 0, 0, 0.85);
  /* Transparent box */
  padding: 20px;
  border-radius: 2px; }

.home__welcome2-section .home__welcome2-text-content h2 {
  font-size: 2rem;
  margin: 0 0 10px; }

.home__welcome2-section .home__welcome2-text-content p {
  font-size: 1.2rem;
  margin: 0; }

.home__welcome2-section .home__welcome2-button-container {
  flex: 0 0 30%;
  display: flex;
  justify-content: center;
  /* Centers button horizontally */
  align-items: center; }

.home__welcome2-section a.home__welcome2-button {
  display: inline-block;
  background: #4700b4;
  color: #fff;
  padding: 15px 25px;
  text-decoration: none;
  font-size: 1.3rem;
  border-radius: 2px;
  transition: background 0.3s;
  text-align: center; }

.home__welcome2-section a.home__welcome2-button:hover {
  background: #36008a; }

/* Responsive Styles */
@media (max-width: 768px) {
  .home__welcome2-section {
    flex-direction: column;
    text-align: center;
    gap: 20px; }
  .home__welcome2-section .home__welcome2-text-content {
    flex: 1; }
  .home__welcome2-section .home__welcome2-text-content h2 {
    font-size: 1.5rem;
    /* Smaller header font size */ }
  .home__welcome2-section .home__welcome2-text-content p {
    font-size: 1rem;
    /* Smaller paragraph font size */ }
  .home__welcome2-section a.home__welcome2-button {
    padding: 10px 20px;
    /* Smaller padding */
    font-size: 1.1rem;
    /* Smaller button font size */ }
  .home__welcome2-section .home__welcome2-button-container {
    justify-content: center;
    /* Ensures button remains centered */ } }

.product-grid.grid-container {
  padding-top: 1rem; }

@media screen and (min-width: 1330px) {
  .catalog-util-bar-wrapper {
    top: calc(2.5rem - 1px); } }

.facet-block-container.more-menu-container {
  visibility: hidden; }

.product-catalog-header {
  margin: 2rem;
  padding: 0;
  border-left: none;
  border-right: none; }

/* Responsive design for margin-top */
@media (max-width: 768px) {
  .product-catalog-header {
    margin-top: 2.5rem; } }

.product-catalog-header .page-title {
  margin-top: 0; }

.catalog-util-bar {
  margin: 0 -2.5rem;
  padding: 0 40px; }

.catalog-util-label {
  font-weight: bold;
  text-transform: none;
  font-family: Raleway;
  font-size: 14px;
  letter-spacing: 0; }

.catalog-util-active-filters .icon-x {
  margin: 0 14px 0 0;
  background: black;
  border-radius: 50%;
  padding: 2px;
  width: 1rem;
  height: 1rem; }

.catalog-util-active-filters .icon-x path {
  fill: white;
  stroke: white; }

.catalog-util-active-filter {
  background: none; }

.product-grid .product-grid-item {
  position: relative; }
  @media screen and (min-width: 112.5em) and (min-width: 64em) {
    .product-grid .product-grid-item {
      width: calc(24% - 2.5rem); } }

.grid-item-compare {
  position: absolute;
  top: 0;
  left: 20px;
  z-index: 2; }
  @media screen and (max-width: 500px) {
    .grid-item-compare {
      top: -10px;
      left: 5px; } }

.compare__text {
  display: none; }

.compare-checkbox-label .compare-checkbox-box {
  border: none; }

.compare-checkbox.compare-checkbox-label {
  transition-duration: 0.25s;
  transition: all 0.25s; }

.compare-checkbox:not(:checked) ~ .compare-checkbox-label {
  transition: all 0.25s;
  padding: 5px; }

.compare-checkbox:checked ~ .compare-checkbox-label {
  background: #4700B3;
  display: flex;
  align-items: center;
  color: white;
  font-weight: bold;
  border-radius: 15%/50%;
  transition: all 0.25s;
  padding: 5px 10px; }

.compare-checkbox:checked ~ .compare-checkbox-label .compare-checkbox-box {
  background: none; }

.compare-checkbox:checked ~ .compare-checkbox-label .compare__text {
  display: inline; }

.compare-checkbox:checked ~ .compare-checkbox-label .compare-checkbox-box {
  display: none; }

.compare-checkbox-label .compare-checkbox-box--selected {
  display: none; }

.compare-checkbox:checked ~ .compare-checkbox-label .compare-checkbox-box--selected {
  display: flex; }

.compare-checkbox-label .compare-checkbox-box {
  height: 25px;
  width: 25px; }

.grid-item-compare svg {
  height: 22px;
  width: 22px;
  margin-right: 10px; }

.page-category .breadcrumbs {
  display: none; }

.price-value p {
  margin-top: 5px; }

.product-card__details-wrapper {
  display: flex; }

.search_display_message {
  font-size: 0.7em; }

.product-grid-item .price.pc__moq {
  margin-left: 0.5rem;
  padding-left: 0.5rem;
  border-left: 1px solid rgba(51, 51, 51, 0.5); }

.product-grid-item .price {
  color: #333; }

.product-grid-item .price.pc__bulk-sub {
  padding-left: 0.25rem; }
  @media screen and (max-width: 500px) {
    .product-grid-item .price.pc__bulk-sub {
      padding-left: 0.25rem; } }

@media only screen and (min-width: 1024px) {
  .page-login .site-main-content {
    padding: 0; } }

@media only screen and (max-width: 1024px) {
  .page-createaccount .site-main-content {
    padding-bottom: 0; } }

@media only screen and (max-width: 1024px) {
  .page-createaccount .account-wrapper {
    margin-bottom: 0; } }

@media only screen and (min-width: 1024px) {
  .page-createaccount .site-main-content {
    padding-bottom: 0;
    padding-right: 0; } }

.page-login .form-field-password .form-field-control .password__icon {
  border: 3px solid #000;
  border-left: none; }

@media only screen and (min-width: 1024px) {
  .account-page-create .account-body,
  .account-login-wrapper {
    display: grid;
    max-width: none;
    justify-content: center; } }

@media only screen and (min-width: 1024px) {
  .account-login-wrapper {
    grid-template-columns: 1fr 1fr;
    height: 100vh; } }

@media only screen and (min-width: 1024px) {
  .account-page-create .account-body {
    grid-template-columns: 1fr 0.5fr;
    grid-column-gap: 1rem; } }

.account-login-wrapper {
  max-width: 1600px;
  margin: 0 auto; }

@media only screen and (min-width: 1024px) {
  .account-wrapper,
  .account-page-create .account-body {
    margin: 0; } }

@media only screen and (min-width: 1024px) {
  .account-login,
  .account-create {
    border: none;
    width: 100%;
    padding: 0; } }

.account__inner-wrapper {
  max-width: 520px;
  margin: 0 auto;
  padding: 88px 10px 0; }

.account-create * {
  color: white; }

.account__image {
  margin: 0;
  background-position: center;
  background-repeat: repeat;
  background-size: cover; }
  @media only screen and (max-width: 1023px) {
    .account__image {
      margin: 0 -2.5rem; } }

.account-sub-heading {
  font-size: 30px; }

.account-login .form-field-title {
  display: none; }

.account-create-form .form-input, .account-create-form .modal-leave-review .product-item-rating, .modal-leave-review .account-create-form .product-item-rating,
.account-login .form-input,
.account-login .modal-leave-review .product-item-rating,
.modal-leave-review .account-login .product-item-rating {
  height: 3.5rem;
  height: 4.7rem;
  font-size: 20px;
  padding: 25px 35px; }


.account-login .form-input,
.account-login .modal-leave-review .product-item-rating,
.modal-leave-review .account-login .product-item-rating {
  border: 3px solid #000000; }

.account-login .form-actions {
  display: flex;
  flex-direction: column;
  align-items: flex-end; }

.account-create-form-actions .button, .account-create-form-actions .product__quote-form ._submit, .product__quote-form .account-create-form-actions ._submit,
.account-create-form-actions .product__request-virtual-form ._submit, .product__request-virtual-form .account-create-form-actions ._submit,
.account-login .button,
.account-login .product__quote-form ._submit,
.product__quote-form .account-login ._submit,
.account-login .product__request-virtual-form ._submit,
.product__request-virtual-form .account-login ._submit,
.account-create .button,
.account-create .product__quote-form ._submit,
.product__quote-form .account-create ._submit,
.account-create .product__request-virtual-form ._submit,
.product__request-virtual-form .account-create ._submit {
  width: 100%;
  background: #4700B3;
  color: white;
  text-transform: none;
  font-family: Raleway;
  font-weight: bold;
  height: 4.7rem; }
  .account-create-form-actions .button:hover, .account-create-form-actions .product__quote-form ._submit:hover, .product__quote-form .account-create-form-actions ._submit:hover,
  .account-create-form-actions .product__request-virtual-form ._submit:hover, .product__request-virtual-form .account-create-form-actions ._submit:hover,
  .account-login .button:hover,
  .account-login .product__quote-form ._submit:hover,
  .product__quote-form .account-login ._submit:hover,
  .account-login .product__request-virtual-form ._submit:hover,
  .product__request-virtual-form .account-login ._submit:hover,
  .account-create .button:hover,
  .account-create .product__quote-form ._submit:hover,
  .product__quote-form .account-create ._submit:hover,
  .account-create .product__request-virtual-form ._submit:hover,
  .product__request-virtual-form .account-create ._submit:hover {
    background: #333; }

.account-create-form-actions {
  display: flex;
  flex-direction: column;
  align-items: flex-end; }

.account-create-form-actions p {
  text-align: center;
  width: 100%;
  max-width: 500px;
  color: #4700B3;
  font-family: Raleway;
  font-size: 20px;
  letter-spacing: 0.06em; }

.account-create-form-actions a {
  text-decoration: underline; }

.account-create-form-actions .button, .account-create-form-actions .product__quote-form ._submit, .product__quote-form .account-create-form-actions ._submit,
.account-create-form-actions .product__request-virtual-form ._submit, .product__request-virtual-form .account-create-form-actions ._submit {
  max-width: 500px; }

.page-createaccount .g-recaptcha {
  max-width: 500px;
  width: 100%;
  margin: 0 0 0 auto; }

.page-createaccount .g-recaptcha div {
  width: 100% !important;
  max-width: 500px;
  display: flex;
  justify-content: flex-start;
  margin: 0; }

.account-create-form-actions {
  display: flex;
  justify-content: flex-end; }

.account-create-details,
.account-create-address {
  border-bottom: none;
  margin-bottom: 0; }


.account-login .button,
.account-login .product__quote-form ._submit,
.product__quote-form .account-login ._submit,
.account-login .product__request-virtual-form ._submit,
.product__request-virtual-form .account-login ._submit {
  margin: 0 0 19px; }


.account-create .button,
.account-create .product__quote-form ._submit,
.product__quote-form .account-create ._submit,
.account-create .product__request-virtual-form ._submit,
.product__request-virtual-form .account-create ._submit {
  background: none;
  border: 3px solid white; }

.account-create .account-sub-heading,
.account-create-intro {
  margin: 0 0 25px; }

.account-create-facts {
  margin-bottom: 40px; }

.account-create-intro,
.account-create-facts {
  font-size: 18px; }

.page-createaccount .form-label {
  padding-bottom: 0; }

.page-createaccount #FormField_26 {
  padding-top: 50px;
  border-top: 1px solid #878787; }

.page-createaccount .account-create-details__message {
  padding-bottom: 50px;
  border-bottom: 1px solid #878787;
  display: flex;
  align-items: center;
  justify-content: space-between; }
  .page-createaccount .account-create-details__message::before {
    content: '';
    display: block;
    width: 25%; }
  .page-createaccount .account-create-details__message span {
    width: 66.6%; }

.page-createaccount #FormField_3 {
  margin-bottom: 0;
  padding-bottom: 50px; }

.page-createaccount .account-content {
  width: 100%;
  max-width: 750px;
  padding-bottom: 50px;
  padding-top: 75px;
  margin: 0 auto; }
  @media only screen and (max-width: 1024px) {
    .page-createaccount .account-content {
      padding-top: 25px; } }

.account-create-form .account-create-details,
.account-create-form .account-create-address {
  display: flex;
  flex-direction: column; }

.account-create-form .form-label,
.account-create-form .form-field-title {
  display: flex;
  align-items: center;
  justify-content: space-between; }

.account-create-form .form-field {
  width: 100%;
  margin-bottom: 20px; }

.account-create-form .form-field:nth-of-type(2n + 1),
.account-create-form .form-field:nth-of-type(2n) {
  padding-left: 0;
  padding-right: 0; }

.account-create-form .form-field-control {
  width: 66.6%; }

.account-create-form .form-field-title {
  width: 25%; }

.account__image img {
  display: block;
  margin: 135px auto 0;
  padding: 1rem; }

.form-field-title {
  color: black;
  text-transform: none;
  font-size: 20px; }
  @media only screen and (max-width: 1024px) {
    .form-field-title {
      font-size: 14px; } }
  @media only screen and (max-width: 400px) {
    .form-field-title {
      font-size: 9px; } }

.account-page-create .account-header {
  border-bottom: none; }

.account-body .account-heading {
  font-size: 30px;
  padding-top: 0; }

.form-field-password .form-field-control {
  display: flex;
  align-items: center; }

.form-field-password .form-field-control .form-input, .form-field-password .form-field-control .modal-leave-review .product-item-rating, .modal-leave-review .form-field-password .form-field-control .product-item-rating {
  border-right: none;
  width: 75%; }
  .form-field-password .form-field-control .form-input:focus + .password__icon, .form-field-password .form-field-control .modal-leave-review .product-item-rating:focus + .password__icon, .modal-leave-review .form-field-password .form-field-control .product-item-rating:focus + .password__icon {
    background: whitesmoke; }

.form-field-password .form-field-control .password__icon {
  border: 1px solid #464646;
  border-left: none;
  height: 4.7rem;
  width: 25%;
  padding-right: 30px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  cursor: pointer; }

.page-editaccount .form-field-password .form-field-control .password__icon,
.page-getnewpassword .form-field-password .form-field-control .password__icon {
  height: 3rem; }

@media only screen and (min-width: 1024px) {
  .account-product-item {
    width: calc(25% - 2.5rem); } }

.account-product-item-thumbnail {
  border: 0.5px solid #898989;
  padding: 1rem; }

.account-product-item-details {
  text-align: left; }

.account-product-item-title {
  font-weight: bold; }

.account-product-item-details {
  padding-left: 1rem; }

.account-header {
  padding: 30px 0; }

.account-nav {
  padding: 0; }

.account-nav-list {
  border-bottom: 1px solid #878787; }
  @media only screen and (min-width: 1024px) {
    .account-nav-list {
      display: flex;
      align-items: center;
      justify-content: space-around; } }

.account-nav-item {
  color: #808080; }
  @media only screen and (min-width: 1024px) {
    .account-nav-item {
      padding: 50px 15px; } }

.account-nav-item.is-active {
  border-bottom: 1px solid black; }

.page-forgotpassword .form-field-control .form-input, .page-forgotpassword .form-field-control .modal-leave-review .product-item-rating, .modal-leave-review .page-forgotpassword .form-field-control .product-item-rating {
  height: 4.7rem; }

.page-createaccount .form-selected-text {
  display: none; }
