@charset "UTF-8";
/*
/// VENDORS ///
The CSS files from external libraries and frameworks
*/
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.5/font/bootstrap-icons.css");
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
  border: 1px solid #ccc;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/*! Flickity v2.2.1
https://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;
  -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;
}

/* ---- flickity-button ---- */
.flickity-button {
  position: absolute;
  background: rgba(255, 255, 255, 0.75);
  border: none;
  color: #333;
}

.flickity-button:hover {
  background: white;
  cursor: pointer;
}

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

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

.flickity-button:disabled {
  opacity: 0.3;
  cursor: auto;
  /* prevent disabled button from capturing pointer up event. #716 */
  pointer-events: none;
}

.flickity-button-icon {
  fill: currentColor;
}

/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  top: 50%;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  /* vertically center */
  transform: translateY(-50%);
}

.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 .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}

/* ---- 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;
}

/*
/// ABSTRACTS ///
all Sass tools and helpers used across the project.
Every global variable, function, mixin and placeholder should be put in here.
 */
/*
/// BASE ///
The boilerplate code for the project. In there, you might find some typographic
rules, and probably a stylesheet defining some standard styles for commonly
used HTML elements.
*/
@font-face {
  font-family: "ThemeIcons";
  src: url("../fonts/ThemeIcons.eot?45d9874200fbdf478af16d2ae343c26f?#iefix") format("embedded-opentype"), url("../fonts/ThemeIcons.woff2?45d9874200fbdf478af16d2ae343c26f") format("woff2"), url("../fonts/ThemeIcons.woff?45d9874200fbdf478af16d2ae343c26f") format("woff"), url("../fonts/ThemeIcons.ttf?45d9874200fbdf478af16d2ae343c26f") format("truetype"), url("../fonts/ThemeIcons.svg?45d9874200fbdf478af16d2ae343c26f#ThemeIcons") format("svg");
}

[class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: ThemeIcons !important;
  font-style: normal;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-facebook:before, [class^="icon-social"][href*="facebook"]:before, .icon-facebook[class^="icon-social"]:before {
  content: "\f101";
}

.icon-instagram:before, [class^="icon-social"][href*="instagram"]:before, .icon-instagram[class^="icon-social"]:before {
  content: "\f102";
}

.icon-linkedin:before, [class^="icon-social"][href*="linkedin"]:before, .icon-linkedin[class^="icon-social"]:before {
  content: "\f103";
}

.icon-pinterest:before, [class^="icon-social"][href*="pinterest"]:before, .icon-pinterest[class^="icon-social"]:before {
  content: "\f104";
}

.icon-twitter:before, [class^="icon-social"][href*="twitter"]:before, .icon-twitter[class^="icon-social"]:before {
  content: "\f105";
}

html {
  -webkit-text-size-adjust: 100%;
}

body {
  font-family: "Noto Sans", sans-serif;
  font-size: 15px;
  line-height: 1.5;
  color: #333;
}

body,
input,
textarea,
select,
button {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1,
h2,
h3,
h4,
h5,
h6,
h1,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  color: #333;
  font-family: "Noto Sans", sans-serif;
  font-weight: 300;
  line-height: 1.3;
  padding: 0;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a,
h1 a,
.h1 a,
.h2 a,
.h3 a,
.h4 a,
.h5 a,
.h6 a {
  color: inherit;
  text-decoration: none;
}

h1,
.h1 {
  font-size: 28px;
  margin: 0;
}

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

h3,
.h3 {
  font-size: 22px;
  margin: 0 0 10px 0;
}

h4,
.h4 {
  font-size: 15px;
  margin: 0 0 5px 0;
}

h5,
.h5 {
  font-size: 15px;
  margin: 0 0 5px 0;
}

h6,
.h6 {
  font-size: 15px;
  margin: 0 0 5px 0;
}

a {
  color: inherit;
  transition: color 200ms ease;
  text-decoration: none;
  transition: all 0.3s linear;
}

a:hover {
  color: #333;
}

p {
  margin: 0 0 1em;
}

p:empty,
p:last-child {
  margin-bottom: 0;
}

[class^="icon-social"]:before {
  line-height: 1;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-family: "ThemeIcons";
}

/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

.centering {
  margin: 0 auto;
  max-width: 75%;
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
}

@media screen and (min-width: 768px) {
  .centering {
    padding-left: 40px;
    padding-right: 40px;
  }
}

@media screen and (max-width: 1023px) {
  .centering {
    max-width: 100%;
  }
}

#wpadminbar {
  position: fixed;
}

.scaled-image {
  height: 0;
  padding-bottom: 100%;
  position: relative;
}

.scaled-image.large {
  padding-bottom: 65%;
}

.scaled-image.medium {
  padding-bottom: 50%;
}

.scaled-image.small {
  padding-bottom: 35%;
}

.scaled-image.cover img {
  object-fit: cover;
}

.scaled-image img {
  display: block !important;
  height: 100% !important;
  object-fit: contain;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  margin: 0 !important;
}

.main {
  padding: 100px 0 0;
  min-height: 75vh;
}

.archive .main, .main .single {
  padding: 100px 0 50px;
}

.category .main {
  padding: 75px 0 50px;
}

.main.no-padding {
  padding: 75px 0 50px;
}

.home .main {
  padding: 0;
}

.site-main {
  padding: 25px 0;
}

.back-to-top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  display: none;
  font-size: 2em;
  color: #e75136;
  mix-blend-mode: difference;
}

.show-back-to-top {
  display: block;
}

.parallax-window {
  min-height: 400px;
  background: transparent;
}

.overlay-link {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

/*
/// LAYOUT ///
Everything that takes part in laying out the site or application.
This folder could have stylesheets for the main parts of the site (header,
footer, navigation, sidebar…), the grid system or even CSS styles
for all the forms.
*/
.is-noscroll {
  pointer-events: none;
  height: 100%;
  overflow: hidden;
}

.is-noscroll .header,
.is-noscroll .main-nav,
.is-noscroll .top {
  pointer-events: auto;
}

.header {
  background-color: white;
  position: fixed;
  width: 100%;
  z-index: 200;
  box-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.1);
}

.header .header-icons {
  display: flex;
  align-items: center;
}

@media screen and (max-width: 1479px) {
  .header .header-icons {
    display: none;
  }
}

.header .top-bar {
  background-image: radial-gradient(circle, #e53111, #e53111, #e75136, #e75136, #e53111);
  color: white;
  font-size: 11px;
  padding: 10px 0;
  margin-bottom: 15px;
  text-transform: uppercase;
}

@media screen and (max-width: 767px) {
  .header .top-bar .left-side {
    width: 100%;
    text-align: center;
  }
}

.header .top-bar .centering {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.header .top-bar a {
  color: white;
  transition: color 0.3s linear;
}

.header .top-bar a:hover {
  color: #f3f3f3;
}

@media screen and (max-width: 767px) {
  .header .top-bar .top-nav {
    display: none;
  }
}

.header .top-bar .top-nav .menu {
  display: flex;
  margin: 0;
}

.header .top-bar .top-nav .menu .menu-item {
  margin: 0 5px;
}

.header .top-bar .top-nav .menu .menu-item:last-child {
  margin: 0 0 0 5px;
}

@media screen and (max-width: 767px) {
  .header {
    min-height: 60px;
  }
}

.header img {
  display: block;
}

.header .wrap {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.header .wrap .header-logo img {
  max-width: 110px;
}

.header .mobile-wrap {
  display: none;
}

@media screen and (max-width: 1479px) {
  .header .mobile-wrap {
    display: flex;
    align-items: center;
  }
}

.header .mobile-wrap .mobile-cart {
  display: none;
  margin-right: 15px;
}

@media screen and (max-width: 1479px) {
  .header .mobile-wrap .mobile-cart {
    display: block;
  }
}

.header .mobile-wrap .mobile-account {
  display: none;
}

@media screen and (max-width: 1479px) {
  .header .mobile-wrap .mobile-account {
    display: block;
  }
}

.prdctfltr_wc {
  margin: 35px 0 15px;
}

.entry-title {
  text-transform: uppercase;
  margin-bottom: 1em;
}

.featured-products {
  margin: 50px 0;
}

.featured-products .section-title {
  text-align: center;
  font-weight: 300;
  color: black;
  margin-bottom: 50px;
}

.page-hero {
  position: relative;
  width: 100%;
  height: 50vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
  margin-bottom: 50px;
  color: white;
}

.page-hero:before {
  position: absolute;
  width: 100%;
  height: 100%;
  content: '';
  display: block;
  background-color: rgba(0, 0, 0, 0.4);
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.page-hero .title-wrap {
  position: relative;
  max-width: 50%;
  text-align: center;
}

.page-hero .title-wrap .entry-title {
  color: white;
}

.footer {
  position: relative;
  float: left;
  width: 100%;
  display: flex;
  flex-flow: column;
  background-color: #e75136;
  color: white;
  font-size: 12px;
  margin-top: 0;
}

.footer .archive {
  margin-top: 25px;
}

.footer .footer-widgets {
  background-color: #000;
  padding: 25px 0;
}

.footer .footer-widgets .widget-title {
  color: white;
  text-transform: uppercase;
  padding-bottom: 10px;
  border-bottom: 1px solid white;
  margin-bottom: 15px;
}

.footer .footer-widgets .menu-item a {
  color: white;
  transition: color 0.3s linear;
}

.footer .footer-widgets .menu-item a:hover {
  color: #f3f3f3;
}

.footer .footer-widgets .button {
  margin-top: 15px;
  background-color: white;
  transition: all 0.3s linear;
}

.footer .footer-widgets .button:hover {
  background-color: #e75136 !important;
}

.footer #footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 0;
}

@media screen and (max-width: 479px) {
  .footer #footer-bottom {
    flex-flow: column;
    align-items: center;
    justify-content: center;
  }
}

.footer #footer-bottom a {
  color: white;
  transition: color 0.3s linear;
}

.footer #footer-bottom a:hover {
  color: #f3f3f3;
}

.footer #footer-bottom .designbybwt {
  font-style: normal;
}

.footer .footer-credits {
  align-items: flex-end;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

@media screen and (max-width: 1023px) {
  .footer .footer-credits {
    align-items: flex-start;
    flex-flow: column;
  }
}

nav ul,
.menu {
  list-style: none;
  padding: 0;
}

.main-nav {
  color: black;
}

@media screen and (max-width: 1479px) {
  .main-nav {
    -webkit-overflow-scrolling: touch;
    background: white;
    color: black;
    height: 100%;
    left: 0;
    opacity: 0;
    overflow-y: auto;
    padding: 60px 0;
    position: fixed;
    right: 0;
    top: 0;
    transition: opacity 350ms ease, visibility 350ms ease;
    visibility: hidden;
    width: 100%;
    z-index: 100;
  }
  .is-open-menu .main-nav {
    opacity: 1;
    visibility: visible;
  }
  .main-nav.is-active {
    height: 100%;
  }
}

.main-nav .menu {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  list-style: none;
  margin: 0 -15px;
  padding: 0;
}

.main-nav .menu ul {
  display: flex;
}

@media screen and (max-width: 1479px) {
  .main-nav .menu {
    flex-direction: column;
    text-align: center;
    margin: 0;
    min-height: 100%;
    justify-content: center;
  }
}

.main-nav .menu .menu-item {
  margin: 0 10px;
  text-transform: uppercase;
}

@media screen and (max-width: 1479px) {
  .main-nav .menu .menu-item {
    margin: 20px 0;
  }
}

.main-nav .menu .menu-item a {
  position: relative;
  font-size: 14px;
  font-weight: bold;
  color: #333;
}

.main-nav .menu .menu-item a:before {
  position: absolute;
  content: '';
  display: block;
  width: 0;
  height: 2px;
  left: 0;
  bottom: -3px;
  background-color: #e75136;
  transition: all 0.3s linear;
}

.main-nav .menu .menu-item a:hover {
  color: #e75136;
}

.main-nav .menu .menu-item a:hover:before {
  width: 100%;
}

.main-nav .sub-menu {
  display: none;
}

.main-nav .open-submenu > .sub-menu {
  display: block;
}

.woocommerce-pagination .page-numbers {
  border: 0 !important;
}

.woocommerce-pagination .page-numbers li {
  border-right: 1px solid #333 !important;
  border: 1px solid #333;
  margin: 0 5px !important;
}

.woocommerce-pagination .page-numbers li .page-numbers {
  padding: 0.5em 1em !important;
  transition: all 0.3s linear;
}

.woocommerce-pagination .page-numbers li .page-numbers.current, .woocommerce-pagination .page-numbers li .page-numbers:hover {
  background-color: #333 !important;
  color: white !important;
}

.grid {
  display: flex;
  flex-flow: row wrap;
  position: relative;
  margin-left: -20px;
  margin-right: -20px;
}

.grid.reverse {
  flex-flow: row-reverse wrap;
}

@media screen and (max-width: 1023px) {
  .grid.reverse {
    flex-flow: row wrap;
  }
}

.grid.stretched {
  margin-left: 0;
  margin-right: 0;
}

.grid.align-center {
  align-items: center;
}

.grid.reverse-even-child:nth-child(even) {
  flex-flow: row-reverse wrap;
}

@media screen and (max-width: 1023px) {
  .grid.reverse-even-child:nth-child(even) {
    flex-flow: row wrap;
  }
}

[class^="grid-"],
[class*=" grid-"] {
  padding: 20px;
}

[class^="grid-"].no-padding,
[class*=" grid-"].no-padding {
  padding: 0;
}

.grid-xs-1 {
  width: calc(100% / (12 / 1));
}

.offset-xs-1 {
  margin-left: calc(100% / (12 / 1));
}

.grid-xs-2 {
  width: calc(100% / (12 / 2));
}

.offset-xs-2 {
  margin-left: calc(100% / (12 / 2));
}

.grid-xs-3 {
  width: calc(100% / (12 / 3));
}

.offset-xs-3 {
  margin-left: calc(100% / (12 / 3));
}

.grid-xs-4 {
  width: calc(100% / (12 / 4));
}

.offset-xs-4 {
  margin-left: calc(100% / (12 / 4));
}

.grid-xs-5 {
  width: calc(100% / (12 / 5));
}

.offset-xs-5 {
  margin-left: calc(100% / (12 / 5));
}

.grid-xs-6 {
  width: calc(100% / (12 / 6));
}

.offset-xs-6 {
  margin-left: calc(100% / (12 / 6));
}

.grid-xs-7 {
  width: calc(100% / (12 / 7));
}

.offset-xs-7 {
  margin-left: calc(100% / (12 / 7));
}

.grid-xs-8 {
  width: calc(100% / (12 / 8));
}

.offset-xs-8 {
  margin-left: calc(100% / (12 / 8));
}

.grid-xs-9 {
  width: calc(100% / (12 / 9));
}

.offset-xs-9 {
  margin-left: calc(100% / (12 / 9));
}

.grid-xs-10 {
  width: calc(100% / (12 / 10));
}

.offset-xs-10 {
  margin-left: calc(100% / (12 / 10));
}

.grid-xs-11 {
  width: calc(100% / (12 / 11));
}

.offset-xs-11 {
  margin-left: calc(100% / (12 / 11));
}

.grid-xs-12 {
  width: calc(100% / (12 / 12));
}

.offset-xs-12 {
  margin-left: calc(100% / (12 / 12));
}

@media screen and (min-width: 480px) {
  .grid-sm-1 {
    width: calc(100% / (12 / 1));
  }
  .offset-sm-1 {
    margin-left: calc(100% / (12 / 1));
  }
  .grid-sm-2 {
    width: calc(100% / (12 / 2));
  }
  .offset-sm-2 {
    margin-left: calc(100% / (12 / 2));
  }
  .grid-sm-3 {
    width: calc(100% / (12 / 3));
  }
  .offset-sm-3 {
    margin-left: calc(100% / (12 / 3));
  }
  .grid-sm-4 {
    width: calc(100% / (12 / 4));
  }
  .offset-sm-4 {
    margin-left: calc(100% / (12 / 4));
  }
  .grid-sm-5 {
    width: calc(100% / (12 / 5));
  }
  .offset-sm-5 {
    margin-left: calc(100% / (12 / 5));
  }
  .grid-sm-6 {
    width: calc(100% / (12 / 6));
  }
  .offset-sm-6 {
    margin-left: calc(100% / (12 / 6));
  }
  .grid-sm-7 {
    width: calc(100% / (12 / 7));
  }
  .offset-sm-7 {
    margin-left: calc(100% / (12 / 7));
  }
  .grid-sm-8 {
    width: calc(100% / (12 / 8));
  }
  .offset-sm-8 {
    margin-left: calc(100% / (12 / 8));
  }
  .grid-sm-9 {
    width: calc(100% / (12 / 9));
  }
  .offset-sm-9 {
    margin-left: calc(100% / (12 / 9));
  }
  .grid-sm-10 {
    width: calc(100% / (12 / 10));
  }
  .offset-sm-10 {
    margin-left: calc(100% / (12 / 10));
  }
  .grid-sm-11 {
    width: calc(100% / (12 / 11));
  }
  .offset-sm-11 {
    margin-left: calc(100% / (12 / 11));
  }
  .grid-sm-12 {
    width: calc(100% / (12 / 12));
  }
  .offset-sm-12 {
    margin-left: calc(100% / (12 / 12));
  }
}

@media screen and (min-width: 768px) {
  .grid-s-1 {
    width: calc(100% / (12 / 1));
  }
  .offset-s-1 {
    margin-left: calc(100% / (12 / 1));
  }
  .grid-s-2 {
    width: calc(100% / (12 / 2));
  }
  .offset-s-2 {
    margin-left: calc(100% / (12 / 2));
  }
  .grid-s-3 {
    width: calc(100% / (12 / 3));
  }
  .offset-s-3 {
    margin-left: calc(100% / (12 / 3));
  }
  .grid-s-4 {
    width: calc(100% / (12 / 4));
  }
  .offset-s-4 {
    margin-left: calc(100% / (12 / 4));
  }
  .grid-s-5 {
    width: calc(100% / (12 / 5));
  }
  .offset-s-5 {
    margin-left: calc(100% / (12 / 5));
  }
  .grid-s-6 {
    width: calc(100% / (12 / 6));
  }
  .offset-s-6 {
    margin-left: calc(100% / (12 / 6));
  }
  .grid-s-7 {
    width: calc(100% / (12 / 7));
  }
  .offset-s-7 {
    margin-left: calc(100% / (12 / 7));
  }
  .grid-s-8 {
    width: calc(100% / (12 / 8));
  }
  .offset-s-8 {
    margin-left: calc(100% / (12 / 8));
  }
  .grid-s-9 {
    width: calc(100% / (12 / 9));
  }
  .offset-s-9 {
    margin-left: calc(100% / (12 / 9));
  }
  .grid-s-10 {
    width: calc(100% / (12 / 10));
  }
  .offset-s-10 {
    margin-left: calc(100% / (12 / 10));
  }
  .grid-s-11 {
    width: calc(100% / (12 / 11));
  }
  .offset-s-11 {
    margin-left: calc(100% / (12 / 11));
  }
  .grid-s-12 {
    width: calc(100% / (12 / 12));
  }
  .offset-s-12 {
    margin-left: calc(100% / (12 / 12));
  }
}

@media screen and (min-width: 1024px) {
  .grid-m-1 {
    width: calc(100% / (12 / 1));
  }
  .offset-m-1 {
    margin-left: calc(100% / (12 / 1));
  }
  .grid-m-2 {
    width: calc(100% / (12 / 2));
  }
  .offset-m-2 {
    margin-left: calc(100% / (12 / 2));
  }
  .grid-m-3 {
    width: calc(100% / (12 / 3));
  }
  .offset-m-3 {
    margin-left: calc(100% / (12 / 3));
  }
  .grid-m-4 {
    width: calc(100% / (12 / 4));
  }
  .offset-m-4 {
    margin-left: calc(100% / (12 / 4));
  }
  .grid-m-5 {
    width: calc(100% / (12 / 5));
  }
  .offset-m-5 {
    margin-left: calc(100% / (12 / 5));
  }
  .grid-m-6 {
    width: calc(100% / (12 / 6));
  }
  .offset-m-6 {
    margin-left: calc(100% / (12 / 6));
  }
  .grid-m-7 {
    width: calc(100% / (12 / 7));
  }
  .offset-m-7 {
    margin-left: calc(100% / (12 / 7));
  }
  .grid-m-8 {
    width: calc(100% / (12 / 8));
  }
  .offset-m-8 {
    margin-left: calc(100% / (12 / 8));
  }
  .grid-m-9 {
    width: calc(100% / (12 / 9));
  }
  .offset-m-9 {
    margin-left: calc(100% / (12 / 9));
  }
  .grid-m-10 {
    width: calc(100% / (12 / 10));
  }
  .offset-m-10 {
    margin-left: calc(100% / (12 / 10));
  }
  .grid-m-11 {
    width: calc(100% / (12 / 11));
  }
  .offset-m-11 {
    margin-left: calc(100% / (12 / 11));
  }
  .grid-m-12 {
    width: calc(100% / (12 / 12));
  }
  .offset-m-12 {
    margin-left: calc(100% / (12 / 12));
  }
}

@media screen and (min-width: 1280px) {
  .grid-md-1 {
    width: calc(100% / (12 / 1));
  }
  .offset-md-1 {
    margin-left: calc(100% / (12 / 1));
  }
  .grid-md-2 {
    width: calc(100% / (12 / 2));
  }
  .offset-md-2 {
    margin-left: calc(100% / (12 / 2));
  }
  .grid-md-3 {
    width: calc(100% / (12 / 3));
  }
  .offset-md-3 {
    margin-left: calc(100% / (12 / 3));
  }
  .grid-md-4 {
    width: calc(100% / (12 / 4));
  }
  .offset-md-4 {
    margin-left: calc(100% / (12 / 4));
  }
  .grid-md-5 {
    width: calc(100% / (12 / 5));
  }
  .offset-md-5 {
    margin-left: calc(100% / (12 / 5));
  }
  .grid-md-6 {
    width: calc(100% / (12 / 6));
  }
  .offset-md-6 {
    margin-left: calc(100% / (12 / 6));
  }
  .grid-md-7 {
    width: calc(100% / (12 / 7));
  }
  .offset-md-7 {
    margin-left: calc(100% / (12 / 7));
  }
  .grid-md-8 {
    width: calc(100% / (12 / 8));
  }
  .offset-md-8 {
    margin-left: calc(100% / (12 / 8));
  }
  .grid-md-9 {
    width: calc(100% / (12 / 9));
  }
  .offset-md-9 {
    margin-left: calc(100% / (12 / 9));
  }
  .grid-md-10 {
    width: calc(100% / (12 / 10));
  }
  .offset-md-10 {
    margin-left: calc(100% / (12 / 10));
  }
  .grid-md-11 {
    width: calc(100% / (12 / 11));
  }
  .offset-md-11 {
    margin-left: calc(100% / (12 / 11));
  }
  .grid-md-12 {
    width: calc(100% / (12 / 12));
  }
  .offset-md-12 {
    margin-left: calc(100% / (12 / 12));
  }
}

@media screen and (min-width: 1480px) {
  .grid-1 {
    width: calc(100% / (12 / 1));
  }
  .offset-1 {
    margin-left: calc(100% / (12 / 1));
  }
  .grid-2 {
    width: calc(100% / (12 / 2));
  }
  .offset-2 {
    margin-left: calc(100% / (12 / 2));
  }
  .grid-3 {
    width: calc(100% / (12 / 3));
  }
  .offset-3 {
    margin-left: calc(100% / (12 / 3));
  }
  .grid-4 {
    width: calc(100% / (12 / 4));
  }
  .offset-4 {
    margin-left: calc(100% / (12 / 4));
  }
  .grid-5 {
    width: calc(100% / (12 / 5));
  }
  .offset-5 {
    margin-left: calc(100% / (12 / 5));
  }
  .grid-6 {
    width: calc(100% / (12 / 6));
  }
  .offset-6 {
    margin-left: calc(100% / (12 / 6));
  }
  .grid-7 {
    width: calc(100% / (12 / 7));
  }
  .offset-7 {
    margin-left: calc(100% / (12 / 7));
  }
  .grid-8 {
    width: calc(100% / (12 / 8));
  }
  .offset-8 {
    margin-left: calc(100% / (12 / 8));
  }
  .grid-9 {
    width: calc(100% / (12 / 9));
  }
  .offset-9 {
    margin-left: calc(100% / (12 / 9));
  }
  .grid-10 {
    width: calc(100% / (12 / 10));
  }
  .offset-10 {
    margin-left: calc(100% / (12 / 10));
  }
  .grid-11 {
    width: calc(100% / (12 / 11));
  }
  .offset-11 {
    margin-left: calc(100% / (12 / 11));
  }
  .grid-12 {
    width: calc(100% / (12 / 12));
  }
  .offset-12 {
    margin-left: calc(100% / (12 / 12));
  }
}

::-webkit-input-placeholder {
  color: #4d4d4d;
}

:-moz-placeholder {
  color: #4d4d4d;
}

::-moz-placeholder {
  color: #4d4d4d;
}

:-ms-input-placeholder {
  color: #4d4d4d;
}

input[type="text"],
input[type="password"],
input[type="date"],
input[type="datetime"],
input[type="datetime-local"],
input[type="month"],
input[type="week"],
input[type="email"],
input[type="number"],
input[type="search"],
input[type="tel"],
input[type="time"],
input[type="url"],
textarea {
  -webkit-appearance: none;
  background-color: transparent;
  border-radius: 0;
  border: 1px solid #333;
  color: #333;
  font-family: "Noto Sans", sans-serif;
  line-height: auto;
  outline: none;
  padding: 10px 5px;
}

input[type="text"]:focus,
input[type="password"]:focus,
input[type="date"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="time"]:focus,
input[type="url"]:focus,
textarea:focus {
  border-color: #999999;
  outline: none;
}

.wpcf7-form input[type="text"], .wpcf7-form
input[type="password"], .wpcf7-form
input[type="date"], .wpcf7-form
input[type="datetime"], .wpcf7-form
input[type="datetime-local"], .wpcf7-form
input[type="month"], .wpcf7-form
input[type="week"], .wpcf7-form
input[type="email"], .wpcf7-form
input[type="number"], .wpcf7-form
input[type="search"], .wpcf7-form
input[type="tel"], .wpcf7-form
input[type="time"], .wpcf7-form
input[type="url"], .wpcf7-form
textarea {
  width: 100%;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid #333;
  border-left: 0;
  margin-bottom: 10px;
  padding: 10px !important;
}

select {
  -webkit-appearance: none;
  background-color: transparent;
  border-radius: 0;
  border: 1px solid #cccccc;
  color: #333;
  font-family: "Noto Sans", sans-serif;
  line-height: 1.5;
  outline: none;
}

textarea {
  line-height: 1.5;
  min-height: 118px;
  padding: 10px 12px;
}

.wpcf7 .screen-reader-response {
  display: none !important;
}

.wpcf7 .wpcf7-not-valid-tip {
  display: block;
}

.wpcf7 .wpcf7-validation-errors {
  color: #b60005;
}

.wwp_wholesaler_registration .form-row {
  display: flex;
  flex-flow: column;
}

.wwp_wholesaler_registration .form-row [type="checkbox"] {
  width: 20px;
}

table {
  text-align: left;
  width: 100%;
}

table th,
table td {
  padding: 5px;
}

.slideshow.hero {
  position: relative;
}

.slideshow.hero .slideshow-slide {
  width: 100%;
  height: 100vh;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.slideshow.hero .slideshow-slide:before {
  position: absolute;
  width: 100%;
  content: '';
  background-color: rgba(0, 0, 0, 0.3);
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.slideshow.hero .slideshow-slide .text {
  position: relative;
  z-index: 10;
}

.slideshow.hero .slideshow-slide .text .content {
  font-size: 22px;
  color: white;
}

.slideshow.hero .slideshow-slide .text .title {
  font-size: 38px;
  color: white;
}

.slideshow.logos .logo-item {
  width: calc(100%/6 - 20px);
  margin: 0 10px;
}

@media screen and (max-width: 1023px) {
  .slideshow.logos .logo-item {
    width: calc(100%/3 - 20px);
  }
  .slideshow.logos .logo-item .scaled-image {
    padding-bottom: 100%;
  }
}

@media screen and (max-width: 767px) {
  .slideshow.logos .logo-item {
    width: calc(100%/2 - 20px);
  }
}

.slideshow.flickity-resize .slideshow-slide {
  min-height: 100%;
}

.slideshow .slideshow-slide {
  width: 100%;
}

.slideshow .flickity-button {
  background: none !important;
  color: white;
  transition: all 0.3s linear;
}

.slideshow .flickity-button:hover {
  color: #333;
}

.section.image-cards {
  text-align: center;
  margin: 50px 0;
}

.section.featured-products {
  display: flex;
  justify-content: center;
  padding: 0;
}

@media screen and (max-width: 1023px) {
  .section.featured-products {
    flex-flow: column;
  }
}

.section.featured-products.nomargin {
  margin: 0;
}

.section.featured-products .featured-product {
  position: relative;
  width: calc(100% / 2);
  display: flex;
  padding: 0;
}

@media screen and (max-width: 1023px) {
  .section.featured-products .featured-product {
    width: 100%;
    flex-flow: column;
  }
}

.section.featured-products .featured-product .image-wrap {
  width: 50%;
}

@media screen and (max-width: 1023px) {
  .section.featured-products .featured-product .image-wrap {
    width: 100%;
  }
}

.section.featured-products .featured-product .content {
  width: 50%;
  height: 100%;
  min-height: 100%;
  padding: 25px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (max-width: 1023px) {
  .section.featured-products .featured-product .content {
    width: 100%;
    padding: 75px 25px;
  }
}

.section.featured-products .featured-product .content .wrap .text {
  text-transform: uppercase;
  font-size: 1.4em;
  margin-bottom: 5px;
}

.section.featured-products .featured-product .content .wrap .price {
  font-weight: bold;
  font-size: 4em;
}

.section.featured-products .featured-product.black {
  background-color: black;
  color: white;
}

.section.featured-products .featured-product.red {
  background-color: #e75136;
}

.section.featured-products .featured-product.green {
  background-color: #2A403D;
}

.section.featured-products .featured-product.lgreen {
  background-color: #F6F4E8;
}

.section.featured-products .featured-product .scaled-image {
  margin: 0;
  padding-bottom: 130%;
}

.section.cta {
  position: relative;
  overflow: hidden;
  height: 75vh;
}

.section.cta:before {
  position: absolute;
  content: '';
  display: block;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.section.cta .scaled-image {
  position: absolute;
  width: 100%;
}

.section.cta .cta-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  z-index: 10;
}

.section.cta .cta-content .title, .section.cta .cta-content .text {
  color: white;
  margin-bottom: 25px;
}

.section.cta .cta-content .title {
  font-size: 2.2rem;
}

@media screen and (max-width: 1479px) {
  .section.image-text .scaled-image.medium {
    padding-bottom: 70%;
  }
}

@media screen and (max-width: 1023px) {
  .section.image-text .scaled-image.medium {
    padding-bottom: 50%;
  }
}

.section.image-text .text {
  padding: 50px;
}

.section.image-text .text.centered {
  text-align: center;
}

.section.image-text.black {
  background-color: black;
  color: white;
}

.section.image-text.black h1, .section.image-text.black h2, .section.image-text.black h3 {
  color: white;
}

.section.image-text.red {
  background-color: #e75136;
  color: white;
}

.section.image-text.red h1,
.section.image-text.red h2,
.section.image-text.red h3 {
  color: white;
}

.section.image-text.green {
  background-color: #2A403D;
  color: white;
}

.section.image-text.green h1,
.section.image-text.green h2,
.section.image-text.green h3 {
  color: white;
}

.section.image-text.lgreen {
  background-color: #F6F4E8;
}

.section.product-cards {
  margin: 50px 0;
}

.section.product-cards .product-card .pc-item .pc-content {
  background-color: black;
  color: white;
  min-height: 100%;
}

.section.product-cards .product-card .pc-item .pc-content h3 {
  color: white;
}

.section.product-cards .product-card .pc-item .pc-content .price {
  font-size: 1.5em;
  font-weight: bold;
}

.section.product-cards .product-card .pc-item:nth-child(even) .pc-content {
  background-color: #e75136;
}

.section.products .product {
  min-height: 450px;
}

@media screen and (max-width: 1023px) {
  .section.products .product {
    min-height: auto;
  }
}

.section.landing-image {
  text-align: center;
  margin-bottom: 25px;
}

.section.landing-image .image-wrap {
  max-width: 35%;
  margin: 0 auto;
}

.section.promo-boxes .promo-box-item {
  padding: 25px;
}

.section.promo-boxes .promo-box-item .image-wrap {
  position: relative;
}

.section.promo-boxes .promo-box-item .image-wrap .overlay-link {
  z-index: 10;
}

.section.promo-boxes .promo-box-item .image-wrap .title {
  position: absolute;
  width: 100%;
  max-width: 80%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 1.5em;
  font-weight: bold;
  text-transform: uppercase;
  text-align: center;
  color: white;
  z-index: 5;
}

.section.promo-boxes .promo-box-item .image-wrap:before {
  position: absolute;
  width: 90%;
  height: 90%;
  content: '';
  border: 2px solid white;
  display: block;
  z-index: 2;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.promotion {
  position: relative;
  background-image: radial-gradient(circle, #111f70, #212c7c, #2e3a88, #3b4793, #48559f);
  color: white;
  padding: 25px;
  margin-bottom: 15px;
  border-radius: 5px;
  overflow: hidden;
}

.promotion .close {
  position: absolute;
  top: 10px;
  right: 25px;
  font-size: 30px;
  cursor: pointer;
}

.promotion .promotion-content {
  max-width: 90%;
  font-size: 16px;
}

.promotion .promotion-content .title {
  font-size: 20px;
  color: white;
}

.promotion .promotion-content .button {
  margin-top: 15px;
  font-size: 14px;
}

.promotion .icon-container {
  position: absolute;
  right: 25px;
  bottom: -15px;
}

.promotion .icon-container .bi {
  font-size: 70px;
}

.woocommerce-page table.cart td.actions .input-text {
  width: 200px !important;
  padding: 10px 5px !important;
}

@media screen and (max-width: 767px) {
  .woocommerce-page table.cart td.actions .coupon .button {
    width: 100% !important;
  }
}

@media screen and (max-width: 767px) {
  .woocommerce-page table.cart td.actions .coupon .input-text {
    width: 100% !important;
    margin-bottom: 10px;
  }
}

.woocommerce #content div.product div.images,
.woocommerce div.product div.images,
.woocommerce-page #content div.product div.images,
.woocommerce-page div.product div.images {
  float: left;
  width: 50%;
}

@media screen and (max-width: 1023px) {
  .woocommerce #content div.product div.images,
  .woocommerce div.product div.images,
  .woocommerce-page #content div.product div.images,
  .woocommerce-page div.product div.images {
    width: 100%;
  }
}

.woocommerce #content div.product div.summary,
.woocommerce div.product div.summary,
.woocommerce-page #content div.product div.summary,
.woocommerce-page div.product div.summary {
  float: right;
  width: 50%;
  clear: none;
}

@media screen and (max-width: 1023px) {
  .woocommerce #content div.product div.summary,
  .woocommerce div.product div.summary,
  .woocommerce-page #content div.product div.summary,
  .woocommerce-page div.product div.summary {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .woocommerce ul.products[class*=columns-] li.product,
  .woocommerce-page ul.products[class*=columns-] li.product {
    width: 100% !important;
  }
}

@media screen and (max-width: 1023px) {
  .products {
    display: flex !important;
    flex-flow: row wrap;
    justify-content: center;
  }
}

@media screen and (max-width: 1023px) {
  .products .product {
    margin: 2em !important;
    width: calc(100%/2 - 4em) !important;
    margin-left: 2em !important;
  }
}

@media screen and (max-width: 1023px) {
  .cart_totals {
    width: 100% !important;
  }
}

.single-product .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image a {
  position: relative;
  display: block;
  padding-bottom: 100%;
  height: 0 !important;
  margin-bottom: 15px;
}

.single-product .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image a img {
  display: block !important;
  height: 100% !important;
  object-fit: contain;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  margin: 0 !important;
}

.single-product .woocommerce-product-details__short-description {
  margin-bottom: 25px;
}

.single-product .woocommerce-tabs .tabs li {
  background-color: white !important;
}

.single-product .woocommerce-tabs .tabs li a {
  color: #333 !important;
}

.single-product .woocommerce-tabs .tabs li.active {
  background-color: #fff !important;
}

.woocommerce-MyAccount-content a {
  font-weight: bold;
}

.custom-dashboard-orders {
  width: 100%;
  margin: 0 auto;
  border-collapse: collapse;
}

.custom-dashboard-orders thead {
  background-color: #f2f2f2;
}

.custom-dashboard-orders th,
.custom-dashboard-orders td {
  text-align: left;
  padding: 8px;
  border: 1px solid #ddd;
}

.custom-dashboard-orders tr:nth-child(even) {
  background-color: #f2f2f2;
}

.custom-dashboard-orders tr:hover {
  background-color: #ddd;
}

.custom-dashboard-orders a.button {
  display: inline-block;
  padding: 10px 20px;
  background-color: #007cba;
  color: #fff;
  text-decoration: none;
  border-radius: 4px;
  margin-top: 20px;
}

.custom-dashboard-orders a.button:hover {
  background-color: #005d90;
}

.woocommerce-account .woocommerce-MyAccount-content {
  float: right;
  width: 78%;
}

@media screen and (max-width: 1279px) {
  .woocommerce-account .woocommerce-MyAccount-content {
    width: 100% !important;
    margin-bottom: 25px;
  }
}

.woocommerce-account .woocommerce-MyAccount-navigation {
  width: 20% !important;
  background-color: #e75136;
  padding: 25px;
}

@media screen and (max-width: 1279px) {
  .woocommerce-account .woocommerce-MyAccount-navigation {
    width: 100% !important;
    margin-bottom: 25px;
  }
}

.woocommerce-account .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link {
  margin: 15px 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link a {
  width: 100%;
  display: block;
  border-bottom: 1px solid #fff;
  color: white;
  padding-bottom: 15px;
}

.woocommerce .woocommerce-ordering {
  display: none !important;
}

.woocommerce .woocommerce-message, .woocommerce .woocommerce-info {
  background-color: #ffffff !important;
  border-bottom: 1px solid #ccc !important;
  border-left: 1px solid #ccc !important;
  border-right: 1px solid #ccc !important;
}

.woocommerce .woocommerce-checkout #payment {
  background: white !important;
  border: 1px solid #ccc !important;
}

.woocommerce .quantity {
  margin-bottom: 2em !important;
}

.woocommerce .quantity button {
  margin-top: 0;
}

.woocommerce .quantity .qty {
  padding: 11px 5px 10px;
}

.woocommerce .product form.cart {
  margin-bottom: 2em !important;
  display: flex;
  align-items: flex-start;
  flex-flow: column;
}

.woocommerce .product .related.products {
  width: 100%;
  position: relative;
  display: inline-block;
}

.woocommerce .product .related.products h2 {
  width: 100%;
  font-size: 26px;
  border-bottom: 1px solid #333;
  padding-bottom: 15px;
  margin-bottom: 25px;
  display: inline-block;
}

.woocommerce .product .related.products .woocommerce-loop-product__title {
  font-size: 20px;
  border-bottom: 0;
  padding: 0;
  margin-bottom: 15px;
}

.woocommerce .product .woocommerce-tabs {
  margin-top: 25px;
}

.woocommerce .product .woocommerce-tabs .tabs {
  margin: 0 !important;
  padding: 0 !important;
}

.woocommerce .product .woocommerce-tabs .tabs li {
  margin: 0 !important;
}

.woocommerce .product .woocommerce-tabs .tabs li:before, .woocommerce .product .woocommerce-tabs .tabs li:after {
  display: none !important;
}

.woocommerce .product .woocommerce-tabs .panel {
  margin: 0 !important;
  padding: 25px !important;
  border-left: 1px solid #e1e1e1;
  border-right: 1px solid #e1e1e1;
  border-bottom: 1px solid #e1e1e1;
}

.woocommerce .product .woocommerce-tabs .panel h2 {
  display: none;
}

.woocommerce .product_title {
  font-size: 28px !important;
  border-bottom: 1px solid #f3f3f3;
  color: #333;
  padding-bottom: 15px !important;
  margin-bottom: 15px;
}

.woocommerce .price {
  color: #333 !important;
  font-weight: bold !important;
  margin-bottom: 1rem !important;
  font-size: 24px !important;
}

.woocommerce .price ins {
  font-weight: bold !important;
  text-decoration: none !important;
}

.woocommerce .button {
  display: inline-block !important;
  background-color: white !important;
  border: 1px solid #333 !important;
  color: #333 !important;
  transition: all 0.3s linear !important;
  padding: 0.85em 1em !important;
}

.woocommerce .button:hover {
  background-color: #333 !important;
  color: white !important;
}

.woocommerce .onsale {
  position: absolute !important;
  min-width: auto !important;
  min-height: auto !important;
  display: inline-block !important;
  background-color: #61af8b !important;
  color: white !important;
  font-size: 10px !important;
  text-transform: uppercase !important;
  padding: 5px !important;
  top: 10px !important;
  left: 10px !important;
  right: auto !important;
  margin: 0 !important;
  z-index: 10 !important;
  border: 0 !important;
  border-radius: 0 !important;
  line-height: 10px !important;
  font-weight: bold !important;
  letter-spacing: 0.6px !important;
}

.return-to-shop {
  margin-top: 25px;
}

.woocommerce-Address {
  border: 1px solid #ccc;
  padding: 25px;
  box-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.1);
}

.woocommerce-Address .woocommerce-Address-title {
  border-bottom: 1px solid #ccc;
  margin-bottom: 10px;
  text-transform: uppercase;
}

.cart-icon, .account-icon {
  position: relative;
}

@media screen and (max-width: 1479px) {
  .main-nav .cart-icon, .main-nav .account-icon {
    display: none;
  }
}

.cart-icon .bi, .account-icon .bi {
  color: #333;
  font-size: 18px;
  margin: 0 10px;
}

.cart-icon .cart-count, .account-icon .cart-count {
  position: absolute;
  width: 15px;
  height: 15px;
  background-color: #333;
  border-radius: 100%;
  color: white;
  top: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
  font-size: 10px;
}

.cart-icon .sub-menu, .account-icon .sub-menu {
  position: absolute;
  background-color: #fff;
  box-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.1);
  padding: 10px;
  border: 1px solid #333;
  border-radius: 5px;
}

@media screen and (max-width: 1023px) {
  .cart-icon .sub-menu, .account-icon .sub-menu {
    position: relative;
    box-shadow: none;
    padding: 0;
    border: 0;
  }
}

.cart-icon .sub-menu li, .account-icon .sub-menu li {
  text-transform: uppercase;
  margin: 5px 0;
  font-size: 13px;
  font-weight: bold;
}

.products .product {
  position: relative !important;
  display: flex;
  flex-flow: column;
  padding: 35px 25px !important;
  text-align: center;
  border: 1px solid #f3f3f3;
}

.products .product:after {
  position: absolute;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 30px 30px 0 0;
  border-color: transparent #000 transparent transparent;
  right: 0;
  bottom: 0;
}

.products .product .button {
  display: inline-block;
  margin-top: 1em;
  background-color: white;
  border: 1px solid #333;
  color: #333;
  transition: all 0.3s linear;
}

.products .product .button:hover {
  background-color: #333;
  color: white;
}

.products .product .scaled-image ins, .products .product .scaled-image del {
  display: none;
}

.products .product .added_to_cart {
  display: none;
}

.products .product .woocommerce-loop-product__title {
  font-size: .9rem !important;
  padding: 10px 0 !important;
  font-weight: normal !important;
}

.products .product .price {
  color: #333 !important;
  font-weight: bold !important;
  margin-bottom: 1rem !important;
  font-size: 18px !important;
}

.products .product .price ins {
  font-weight: bold !important;
  text-decoration: none !important;
}

.products .product .button {
  font-weight: 500;
}

.products .product .onsale {
  position: absolute;
  min-width: auto !important;
  min-height: auto !important;
  display: inline-block;
  background-color: #61af8b;
  color: white;
  font-size: 10px;
  text-transform: uppercase;
  padding: 5px;
  top: 10px !important;
  left: 10px !important;
  right: auto !important;
  margin: 0 !important;
  z-index: 10;
  border: 0;
  border-radius: 0;
  line-height: 10px;
  font-weight: bold;
  letter-spacing: 0.6px;
}

.products .product .scaled-image {
  height: 0;
  padding-bottom: 100%;
  position: relative;
  margin-bottom: 15px;
}

.products .product .scaled-image img {
  display: block !important;
  height: 100% !important;
  object-fit: contain;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  margin: 0 !important;
}

.wc-proceed-to-checkout {
  text-align: right;
}

.woocommerce-checkout #place_order {
  width: 100%;
}

.woocommerce-checkout .woocommerce-form-login label.woocommerce-form__label.woocommerce-form__label-for-checkbox.woocommerce-form-login__rememberme {
  margin-top: 12px;
}

@media (min-width: 768px) {
  .woocommerce-checkout #customer_details {
    width: 60%;
    float: left;
  }
  .woocommerce-checkout #order_review_heading {
    width: 30%;
    float: left;
    margin-left: 2%;
  }
  .woocommerce-checkout #order_review {
    width: 38%;
    float: left;
    margin-left: 2%;
  }
  .woocommerce-checkout .woocommerce table.shop_table td {
    width: 50%;
  }
  .woocommerce-checkout .woocommerce .col2-set .col-1,
  .woocommerce-checkout .woocommerce-page .col2-set .col-1,
  .woocommerce-checkout .woocommerce .col2-set .col-2,
  .woocommerce-checkout .woocommerce-page .col2-set .col-2 {
    width: 100%;
  }
}

.woocommerce div.product form.cart .variations {
  margin-bottom: 0;
}

.woocommerce-variation-add-to-cart {
  display: flex;
  flex-flow: column;
  align-items: flex-start;
}

.wc-block-components-notice-banner {
  align-items: center !important;
  justify-content: space-between !important;
}

.wc-block-components-notice-banner .wc-block-components-notice-banner__content .woocommerce-Button.button {
  margin: 0 20px !important;
}

.item.post {
  background-color: #F6F4E8;
  margin-bottom: 50px;
}

.item.post .item-details {
  padding: 50px;
}

@media screen and (max-width: 1023px) {
  .item.post .item-details {
    padding: 25px;
  }
}

.item.post .item-details .entry-summary {
  margin-bottom: 1em;
}

/*
/// COMPONENTS ///
For smaller components, there is the components/ folder.
While layout/ is macro (defining the global wireframe), components/ is more
focused on widgets. It contains all kind of specific modules like a slider,
a loader, a widget, and basically anything along those lines. There are usually
a lot of files in components/ since the whole site/application should be mostly
composed of tiny modules.
*/
input[type="submit"],
input[type="button"],
input[type="reset"],
button,
.button, .login-to-upgrade, .wc-block-components-button__text, .button-secondary, .button-shop {
  background-color: white;
  border-radius: 0;
  border: 1px solid #333;
  color: #333;
  cursor: pointer;
  display: inline-block;
  font-size: 16px;
  outline: 0;
  padding: 10px 20px;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
}

input[type="submit"],
input[type="button"],
input[type="reset"],
button,
.button, .login-to-upgrade {
  transition: all 0.3s linear;
  margin-top: 15px;
}

input[type="submit"]:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
button:hover,
.button:hover, .login-to-upgrade:hover {
  background-color: #333;
  color: #ffffff;
}

input[type="submit"].hero,
input[type="button"].hero,
input[type="reset"].hero,
button.hero,
.button.hero, .login-to-upgrade.hero {
  background-color: transparent;
  border: 1px solid white;
  color: white;
  transition: all 0.3s linear;
}

input[type="submit"].hero:hover,
input[type="button"].hero:hover,
input[type="reset"].hero:hover,
button.hero:hover,
.button.hero:hover, .login-to-upgrade.hero:hover {
  background-color: white;
  color: #333;
}

.wc-block-components-button__text {
  width: 100%;
  margin-top: 15px;
  transition: all 0.3s linear;
}

.wc-block-components-button__text:hover {
  background-color: #333;
  color: #ffffff;
}

.wc-block-components-notice-banner > .wc-block-components-notice-banner__content .wc-forward {
  padding: 10px 15px !important;
  text-decoration: none !important;
}

.woocommerce-Button {
  margin: 15px 0 25px !important;
}

.button-secondary {
  background-color: #fff;
  border-color: #333;
  color: #333;
}

.button-secondary:hover {
  background-color: #dfdfdf;
}

.button-shop {
  margin-top: 0;
  margin-left: 15px;
  display: flex;
  height: 75px;
  align-items: center;
  justify-content: center;
  border: 0;
  background-color: #e75136;
  color: white;
  transition: all 0.3s linear;
}

.button-shop:hover {
  background-color: #333;
  color: white;
}

.hamburger {
  width: 30px;
  height: 21px;
  position: relative;
  display: none;
  right: 0;
  z-index: 200;
}

@media screen and (max-width: 1479px) {
  .hamburger {
    display: block;
  }
}

.hamburger [class^="line-"] {
  display: block;
  background-color: #333;
  width: 30px;
  height: 3px;
  position: absolute;
  left: 0;
  border-radius: 2px;
  transition: all 300ms, opacity 100ms;
  outline: 1px solid transparent;
}

.is-open-menu .hamburger [class^="line-"] {
  background-color: #333;
}

.hamburger [class^="line-"].line-1 {
  top: 0;
}

.hamburger [class^="line-"].line-2 {
  top: 9px;
}

.hamburger [class^="line-"].line-3 {
  bottom: 0;
}

.hamburger.is-active .line-1 {
  transform: translateY(9px) translateX(0) rotate(45deg);
}

.hamburger.is-active .line-2 {
  opacity: 0;
}

.hamburger.is-active .line-3 {
  transform: translateY(-9px) translateX(0) rotate(-45deg);
}

.tabs .tabs-nav {
  background-color: rgba(231, 81, 54, 0.8);
  margin: 20px 0;
  padding: 0;
  list-style: none;
  text-transform: uppercase;
  display: flex;
  justify-content: space-around;
}

.tabs .tabs-nav li {
  flex-basis: 0;
  flex-grow: 1;
  position: relative;
}

.tabs .tabs-nav li:before {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  content: "";
  width: 1px;
  background-color: white;
}

.tabs .tabs-nav li:first-child:before {
  display: none;
}

.tabs .tabs-nav .tabs-link {
  color: #fff;
  display: block;
  padding: 20px;
  font-size: 18px;
  text-align: center;
}

.tabs .tabs-nav .tabs-link.is-active {
  background-color: #e75136;
}

.tabs .tab-content {
  display: none;
  margin: 20px 0;
}

.tabs .tab-content.is-active {
  display: block;
}

::selection {
  background: #b3d4fc;
}

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

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

/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAibGF5b3V0LmNzcyIsCgkic291cmNlcyI6IFsKCQkiLi4vc2Fzcy9sYXlvdXQuc2NzcyIsCgkJIi4uL3Nhc3MvdmVuZG9ycy9fbm9ybWFsaXplLnNjc3MiLAoJCSIuLi9zYXNzL3ZlbmRvcnMvX2ZsaWNraXR5LnNjc3MiLAoJCSIuLi9zYXNzL2Fic3RyYWN0cy9fdmFyaWFibGVzLnNjc3MiLAoJCSIuLi9zYXNzL2Fic3RyYWN0cy9fbWl4aW5zLnNjc3MiLAoJCSIuLi9zYXNzL2Jhc2UvX2ljb25zLnNjc3MiLAoJCSIuLi9zYXNzL2Jhc2UvX3R5cG9ncmFwaHkuc2NzcyIsCgkJIi4uL3Nhc3MvYmFzZS9fZm9udHMuc2NzcyIsCgkJIi4uL3Nhc3MvYmFzZS9fdXRpbGl0aWVzLnNjc3MiLAoJCSIuLi9zYXNzL2xheW91dC9faGVhZGVyLnNjc3MiLAoJCSIuLi9zYXNzL2xheW91dC9fZm9vdGVyLnNjc3MiLAoJCSIuLi9zYXNzL2xheW91dC9fbmF2aWdhdGlvbi5zY3NzIiwKCQkiLi4vc2Fzcy9sYXlvdXQvX2dyaWQuc2NzcyIsCgkJIi4uL3Nhc3MvbGF5b3V0L19mb3Jtcy5zY3NzIiwKCQkiLi4vc2Fzcy9sYXlvdXQvX3RhYmxlcy5zY3NzIiwKCQkiLi4vc2Fzcy9sYXlvdXQvX3NsaWRlc2hvdy5zY3NzIiwKCQkiLi4vc2Fzcy9sYXlvdXQvX3NlY3Rpb25zLnNjc3MiLAoJCSIuLi9zYXNzL2xheW91dC9faXRlbXMuc2NzcyIsCgkJIi4uL3Nhc3MvbGF5b3V0L193b29jb21tZXJjZS5zY3NzIiwKCQkiLi4vc2Fzcy9sYXlvdXQvX3Bvc3RzLnNjc3MiLAoJCSIuLi9zYXNzL2NvbXBvbmVudHMvX2J1dHRvbnMuc2NzcyIsCgkJIi4uL3Nhc3MvY29tcG9uZW50cy9faGFtYnVyZ2VyLnNjc3MiLAoJCSIuLi9zYXNzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwKCQkiLi4vc2Fzcy9jb21wb25lbnRzL190YWJzLnNjc3MiCgldLAoJIm5hbWVzIjogW10sCgki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LEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxZQUFZLENBQUs7SUFDYixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxVQUFVLENBQUs7SUFDWCxLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxZQUFZLENBQUs7SUFDYixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxVQUFVLENBQUs7SUFDWCxLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxZQUFZLENBQUs7SUFDYixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxXQUFXLENBQUk7SUFDWCxLQUFLLEVBQUUsc0JBQXVDO0dBQ2pEO0VBRUQsQUFBQSxhQUFhLENBQUk7SUFDYixXQUFXLEVBQUUsc0JBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxXQUFXLENBQUk7SUFDWCxLQUFLLEVBQUUsc0JBQXVDO0dBQ2pEO0VBRUQsQUFBQSxhQUFhLENBQUk7SUFDYixXQUFXLEVBQUUsc0JBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxXQUFXLENBQUk7SUFDWCxLQUFLLEVBQUUsc0JBQXVDO0dBQ2pEO0VBRUQsQUFBQSxhQUFhLENBQUk7SUFDYixXQUFXLEVBQUUsc0JBQXVDO0dBQ3ZEOzs7QVI3REwsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFUW1FL0IsQUFBQSxTQUFTLENBQUs7SUFDVixLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxXQUFXLENBQUs7SUFDWixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxTQUFTLENBQUs7SUFDVixLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxXQUFXLENBQUs7SUFDWixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxTQUFTLENBQUs7SUFDVixLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxXQUFXLENBQUs7SUFDWixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxTQUFTLENBQUs7SUFDVixLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxXQUFXLENBQUs7SUFDWixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxTQUFTLENBQUs7SUFDVixLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxXQUFXLENBQUs7SUFDWixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxTQUFTLENBQUs7SUFDVixLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxXQUFXLENBQUs7SUFDWixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxTQUFTLENBQUs7SUFDVixLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxXQUFXLENBQUs7SUFDWixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxTQUFTLENBQUs7SUFDVixLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxXQUFXLENBQUs7SUFDWixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxTQUFTLENBQUs7SUFDVixLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxXQUFXLENBQUs7SUFDWixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxVQUFVLENBQUk7SUFDVixLQUFLLEVBQUUsc0JBQXVDO0dBQ2pEO0VBRUQsQUFBQSxZQUFZLENBQUk7SUFDWixXQUFXLEVBQUUsc0JBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxVQUFVLENBQUk7SUFDVixLQUFLLEVBQUUsc0JBQXVDO0dBQ2pEO0VBRUQsQUFBQSxZQUFZLENBQUk7SUFDWixXQUFXLEVBQUUsc0JBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxVQUFVLENBQUk7SUFDVixLQUFLLEVBQUUsc0JBQXVDO0dBQ2pEO0VBRUQsQUFBQSxZQUFZLENBQUk7SUFDWixXQUFXLEVBQUUsc0JBQXVDO0dBQ3ZEOzs7QVJ6RUwsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtFUStFaEMsQUFBQSxTQUFTLENBQUs7SUFDVixLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxXQUFXLENBQUs7SUFDWixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxTQUFTLENBQUs7SUFDVixLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxXQUFXLENBQUs7SUFDWixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxTQUFTLENBQUs7SUFDVixLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxXQUFXLENBQUs7SUFDWixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxTQUFTLENBQUs7SUFDVixLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxXQUFXLENBQUs7SUFDWixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxTQUFTLENBQUs7SUFDVixLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxXQUFXLENBQUs7SUFDWixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxTQUFTLENBQUs7SUFDVixLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxXQUFXLENBQUs7SUFDWixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxTQUFTLENBQUs7SUFDVixLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxXQUFXLENBQUs7SUFDWixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxTQUFTLENBQUs7SUFDVixLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxXQUFXLENBQUs7SUFDWixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxTQUFTLENBQUs7SUFDVixLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxXQUFXLENBQUs7SUFDWixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxVQUFVLENBQUk7SUFDVixLQUFLLEVBQUUsc0JBQXVDO0dBQ2pEO0VBRUQsQUFBQSxZQUFZLENBQUk7SUFDWixXQUFXLEVBQUUsc0JBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxVQUFVLENBQUk7SUFDVixLQUFLLEVBQUUsc0JBQXVDO0dBQ2pEO0VBRUQsQUFBQSxZQUFZLENBQUk7SUFDWixXQUFXLEVBQUUsc0JBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxVQUFVLENBQUk7SUFDVixLQUFLLEVBQUUsc0JBQXVDO0dBQ2pEO0VBRUQsQUFBQSxZQUFZLENBQUk7SUFDWixXQUFXLEVBQUUsc0JBQXVDO0dBQ3ZEOzs7QVJyRkwsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtFUTJGaEMsQUFBQSxVQUFVLENBQUs7SUFDWCxLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxZQUFZLENBQUs7SUFDYixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxVQUFVLENBQUs7SUFDWCxLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxZQUFZLENBQUs7SUFDYixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxVQUFVLENBQUs7SUFDWCxLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxZQUFZLENBQUs7SUFDYixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxVQUFVLENBQUs7SUFDWCxLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxZQUFZLENBQUs7SUFDYixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxVQUFVLENBQUs7SUFDWCxLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxZQUFZLENBQUs7SUFDYixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxVQUFVLENBQUs7SUFDWCxLQUFLLEVBQUUscUJBQXVDO0dBQ2pEO0VBRUQsQUFBQSxZQUFZLENBQUs7SUFDYixXQUFXLEVBQUUscUJBQXVDO0dBQ3ZEO0VBTkQsQUFBQSxVQUFVLENBQUs7SUFDWCxLQUFLLEVBQUUscUJB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 */