@charset "UTF-8";
/* ========================================================================
   #CORE
   ======================================================================== */
/* ==========================================================================
   #VARIABLES
   ========================================================================== */
/* ==========================================================================
   #COLORS
   ========================================================================== */
/* ==========================================================================
   #VARIABLES
   ========================================================================== */
/* ==========================================================================
   #ANIMATIONS
   ========================================================================== */
@keyframes rotate {
  from {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
/* ==========================================================================
   #FONT-SIZE
   ========================================================================== */
/**
 * Generates a rem font-size (with pixel fallback) and a baseline-compatible
 * unitless line-height from a pixel font-size value.
 *
 * @param {Number} $font-size - pixel font size (e.g. 16px)
 * @param {Number|String} $line-height - explicit line-height or "auto"
 * @param {Number} $modifier - grid line modifier (integer, optional)
 * @param {Boolean} $important - apply !important
 *
 * Examples:
 *   @include font-size(18px);
 *   @include font-size(16px, 1);
 *   @include font-size(24px, $modifier: +2);
 *   @include font-size(24px, $modifier: -1);
 */
/* ==========================================================================
   #MIXINS
   ========================================================================== */
/**
 * Appends an animated loader graphic displayed in the center of the element.
 */
/**
 * Convert a Sass color to a comma-separated RGB string.
 * Use for defining CSS variables like --color-primary-rgb.
 *
 * Example:
 *   background-color: rgba(var(--card-bg-rgb), 0.85);
 */
/**
 * Micro clearfix utility.
 * Use on elements that need to contain floated children.
 *
 * Example:
 *   @include clearfix();
 */
/**
 * Clamp text to a fixed number of lines.
 *
 * @param {Number} $lines - number of lines to show
 * @param {String} $text-overflow - overflow style (default: ellipse)
 *
 * Example:
 *   @include vertical-trim(3);
 */
/**
 * Maintain a fixed aspect ratio.
 *
 * @param {Number} $width
 * @param {Number} $height
 *
 * Example:
 *   @include aspect-ratio(16, 9);
 */
/**
 * Shorthand for transition.
 *
 * @param {String} $attribute - property to transition
 * @param {Time} $time - duration
 * @param {Time} $delay - delay
 * @param {String} $ease - easing function
 */
/**
 * Vertical gradient from top to bottom.
 */
/**
 * Horizontal gradient from left to right.
 */
/**
 * Toggle visibility with opacity and visibility.
 */
/**
 * Apply a blur effect.
 *
 * @param {Number} $radius - blur radius (unitless, px will be applied)
 */
/**
 * Visually hide an element while keeping it accessible to screen readers.
 *
 * Applies a set of styles that remove the element from visual flow but
 * retain its accessibility.
 */
/**
 * Hide element when printing.
 * Use on elements that should not appear in print styles.
 *
 * Example:
 *   @include hide-for-print();
 */
/**
 * Hides the element's scrollbar
 *
 * Example:
 *   @include hide-scrollbar();
 */
/* ==========================================================================
   #EMBEDS
   ========================================================================== */
iframe {
  width: 100%;
}

/* ==========================================================================
   #FORMS
   ========================================================================== */
form p {
  margin: 0;
}

label {
  color: #000000;
  font-weight: 500;
  margin: 0 0 12px;
  display: inline-block;
  line-height: 1.2;
}
label .required {
  color: #aa0000;
}

input,
textarea,
select {
  background: #ffffff;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  border: 1px solid #cccccc;
  border-radius: 6px;
  padding: 12px 12px;
  font-family: "Afacad", sans-serif !important;
  font-weight: 400;
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 24px;
  filter: none;
  outline: none;
  min-width: 50%;
  transition: all 0.25s ease 0s;
  -webkit-appearance: none !important;
     -moz-appearance: none !important;
          appearance: none !important;
}
input.error, input.c-form__field-control.error + input,
textarea.error,
textarea.c-form__field-control.error + input,
select.error,
select.c-form__field-control.error + input {
  border: none;
  box-shadow: inset 0 0 0 1.5px #aa0000;
}
input:hover, input.c-form__field-control:hover + input,
textarea:hover,
textarea.c-form__field-control:hover + input,
select:hover,
select.c-form__field-control:hover + input {
  background-color: #d9f3fd;
}
input:focus, input.c-form__field-control:focus + input,
textarea:focus,
textarea.c-form__field-control:focus + input,
select:focus,
select.c-form__field-control:focus + input {
  box-shadow: 0 0 0 1.5px #1c52da;
}
input.disabled, input:disabled, input.c-form__field-control:disabled + input, input.c-form__field-control.disabled + input,
textarea.disabled,
textarea:disabled,
textarea.c-form__field-control:disabled + input,
textarea.c-form__field-control.disabled + input,
select.disabled,
select:disabled,
select.c-form__field-control:disabled + input,
select.c-form__field-control.disabled + input {
  border: 1px solid #cccccc;
  background: #f2f2f2;
  color: #999999;
}

fieldset {
  outline: none;
  border: none;
  padding: 0;
  margin: 0;
}

input::-ms-clear {
  display: none;
}

select::-ms-expand {
  display: none;
}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  font-weight: 300;
  font-style: italic;
  color: #999999;
  font-family: "Afacad", sans-serif;
}

::-moz-placeholder { /* Firefox 19+ */
  font-weight: 300;
  font-style: italic;
  color: #999999;
  font-family: "Afacad", sans-serif;
}

:-ms-input-placeholder { /* IE 10+ */
  font-weight: 300;
  font-style: italic;
  color: #999999;
  font-family: "Afacad", sans-serif;
}

:-moz-placeholder { /* Firefox 18- */
  font-weight: 300;
  font-style: italic;
  color: #999999;
  font-family: "Afacad", sans-serif;
}

input[type=submit],
input[type=button],
button {
  background: #1c52da;
  padding: 12px 36px;
  font-family: "Afacad", sans-serif;
  display: block;
  color: #ffffff;
  cursor: pointer;
  width: auto;
  min-width: 0;
  font-weight: 400;
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 1;
  transition: all 0.25s ease 0s;
  transition-property: color, background-color;
  border: none;
  border-radius: 100px;
  -webkit-appearance: none !important;
     -moz-appearance: none !important;
          appearance: none !important;
}
input[type=submit]:hover, input[type=submit]:focus,
input[type=button]:hover,
input[type=button]:focus,
button:hover,
button:focus {
  background: #2e3192;
  box-shadow: none;
}
@media (max-width: 46.24em) {
  input[type=submit],
  input[type=button],
  button {
    width: 100% !important;
  }
}
input[type=submit]:disabled,
input[type=button]:disabled,
button:disabled {
  pointer-events: none !important;
  background-color: #f2f2f2;
  color: #666666;
}

input[type=checkbox],
input[type=radio] {
  min-width: 0;
  position: relative;
  margin: 0 12px 0 0;
  overflow: hidden;
  float: left;
  width: 1.35rem !important;
  height: 1.35rem !important;
  display: inline-block;
  background: #ffffff;
  border-radius: 100% !important;
  border: 1px solid #cccccc;
  -webkit-appearance: none !important;
     -moz-appearance: none !important;
          appearance: none !important;
}
input[type=checkbox]:checked,
input[type=radio]:checked {
  background: url("../img/dot.svg") center center no-repeat white !important;
  background-size: 24px 24px;
}
input[type=checkbox]:checked:focus,
input[type=radio]:checked:focus {
  box-shadow: 0 0 0 1.5px #1c52da;
}
input[type=checkbox]:focus,
input[type=radio]:focus {
  box-shadow: 0 0 0 1.5px #1c52da;
}
input[type=checkbox] + label,
input[type=radio] + label {
  font-weight: 400;
}

input[type=checkbox] {
  content: "";
  color: #333333;
  line-height: 1.15em;
  text-align: center;
  font-size: 20px;
  background: #ffffff;
  background-size: contain;
  border-radius: 6px !important;
}
input[type=checkbox]:checked {
  background: url("../img/check.svg") center center no-repeat white !important;
  background-size: 24px 24px;
  box-shadow: none;
}
input[type=checkbox]:checked:focus {
  box-shadow: 0 0 0 2px #1c52da;
}
input[type=checkbox]:focus, input[type=checkbox]:active {
  box-shadow: 0 0 0 2px #1c52da;
}

select {
  background: white url(../img/chevron-down.svg) calc(100% - 10px) center no-repeat;
  background-size: 30px 30px;
  padding-right: 48px;
  width: 100%;
  display: block;
  -webkit-appearance: none !important;
     -moz-appearance: none !important;
          appearance: none !important;
}
@media (min-width: 46.25em) {
  select {
    width: auto;
    min-width: 0;
  }
}

/* ==========================================================================
   #HEADINGS
   ========================================================================== */
/**
 * Simple default styles for headings 1 through 6. Anything more opinionated
 * than simple font-size changes should likely be applied via classes (see:
 * http://csswizardry.com/2016/02/managing-typography-on-large-apps/).
 */
h1, .u-h1 {
  font-size: 1.8666666667rem;
  font-size: 33.6px;
  line-height: 1.1;
  font-weight: inherit;
  margin: 0 0 0.35em;
}
@media (min-width: 46.25em) {
  h1, .u-h1 {
    font-size: 2.6666666667rem;
    font-size: 48px;
    line-height: 1.1;
  }
}

h2, .u-h2 {
  font-size: 1.4583333333rem;
  font-size: 26.25px;
  line-height: 1.2;
  font-weight: inherit;
  margin: 0 0 0.75em;
}
@media (min-width: 46.25em) {
  h2, .u-h2 {
    font-size: 1.9444444444rem;
    font-size: 35px;
    line-height: 1.2;
  }
}

h3, .u-h3, .woocommerce-order h2, .c-product-details__name, .c-order-details__name {
  font-size: 1.3222222222rem;
  font-size: 23.8px;
  line-height: 1.2;
  font-weight: inherit;
  margin: 0 0 0.5em;
}
@media (min-width: 46.25em) {
  h3, .u-h3, .woocommerce-order h2, .c-product-details__name, .c-order-details__name {
    font-size: 1.5555555556rem;
    font-size: 28px;
    line-height: 1.2;
  }
}

h4, .u-h4 {
  font-size: 1.2222222222rem;
  font-size: 22px;
  line-height: 1.2;
  font-weight: inherit;
  margin: 0 0 0.25em;
}

h5, .u-h5 {
  font-size: 1rem;
  font-size: 18px;
  line-height: 1.2;
  font-weight: inherit;
  margin: 0 0 0.25em;
}

h6, .u-h6 {
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 1.2;
  font-weight: inherit;
  margin: 0 0 0.25em;
}

h1, .u-h1, h2, .u-h2, h3, .u-h3, .woocommerce-order h2, .c-product-details__name, .c-order-details__name, h4, .u-h4, h5, .u-h5, h6, .u-h6 {
  color: #000000;
  font-weight: 500;
}
p + h1, p + .u-h1, ul + h1, ul + .u-h1, ol + h1, ol + .u-h1, p + h2, p + .u-h2, ul + h2, ul + .u-h2, ol + h2, ol + .u-h2, p + h3, p + .u-h3, .woocommerce-order p + h2, p + .c-product-details__name, p + .c-order-details__name, ul + h3, ul + .u-h3, .woocommerce-order ul + h2, ul + .c-product-details__name, ul + .c-order-details__name, ol + h3, ol + .u-h3, .woocommerce-order ol + h2, ol + .c-product-details__name, ol + .c-order-details__name, p + h4, p + .u-h4, ul + h4, ul + .u-h4, ol + h4, ol + .u-h4, p + h5, p + .u-h5, ul + h5, ul + .u-h5, ol + h5, ol + .u-h5, p + h6, p + .u-h6, ul + h6, ul + .u-h6, ol + h6, ol + .u-h6 {
  margin-top: 36px;
}

/* ==========================================================================
   #HORIZONTAL LINE
   ========================================================================== */
hr {
  margin: 24px 0;
  border: none;
  border-top: 1px solid #cccccc;
}

/* ==========================================================================
   #IMAGES
   ========================================================================== */
/**
 * 1. Fluid images for responsive purposes.
 * 2. Offset `alt` text from surrounding copy.
 * 3. Setting `vertical-align` removes the whitespace that appears under `img`
 *    elements when they are dropped into a page as-is. Safer alternative to
 *    using `display: block;`.
 */
img {
  max-width: 100%; /* [1] */
  font-style: italic; /* [2] */
  vertical-align: middle; /* [3] */
  -webkit-transform: translateZ(0);
}
.o-content img {
  margin-bottom: 0.5em;
}
.flexslider img {
  margin: 0;
}

/**
 * 1. If a `width` and/or `height` attribute have been explicitly defined, let’s
 *    not make the image fluid.
 */
img[width],
img[height] { /* [1] */
  height: auto;
}

figure {
  margin: 0 0 24px;
  width: 100% !important;
  height: auto !important;
}
figure img {
  margin: 0 0 12px;
}

figcaption {
  font-style: italic;
  font-weight: 300;
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 1.4;
}

@media (min-width: 31.25em) {
  .alignleft {
    float: left;
    margin-right: 24px;
    margin-bottom: 6px;
  }
}

@media (min-width: 31.25em) {
  .alignright {
    float: right;
    margin-left: 24px;
    margin-bottom: 6px;
  }
}

.aligncenter {
  display: block;
  margin: auto;
}

/* ==========================================================================
   #LINKS
   ========================================================================== */
a {
  transition: color 0.25s ease 0s;
  color: #1c52da;
  border: none;
  text-decoration: none;
}
a:hover {
  color: #2e3192;
  border: none;
}
a[href^="tel:"], a[href^="mailto:"] {
  white-space: nowrap;
  text-decoration: underline;
}
@media (min-width: 61.25em) {
  a[href^="tel:"] {
    color: inherit;
    pointer-events: none;
    text-decoration: none;
  }
}
.o-content p a:not(.c-btn) {
  text-decoration: underline;
}
@media print {
  a::after {
    content: none !important;
  }
}

/* ==========================================================================
   #LISTS
   ========================================================================== */
ul, ol {
  list-style-position: inside;
  margin: 0 0 24px 24px;
}
ul ul, ul ol, ol ul, ol ol {
  margin: 12px 0 0;
  padding-left: 24px;
}
.o-content ul, .o-content ol {
  padding: 0;
  margin: 0;
}
.o-content ul li, .o-content ol li {
  margin: 0 0 0.5rem;
  list-style: none;
  padding: 0 0 0 1.5rem;
  color: #333333;
  font-weight: 300;
  font-family: "Aleo", serif;
  font-size: 1rem;
  font-size: 18px;
  line-height: 1.8;
}
.o-content ul + p, .o-content ol + p {
  margin-top: 48px;
}
.o-content ul.woocommerce-error, .o-content ol.woocommerce-error {
  padding: 1em 2em 1em 3.5em;
  margin: 0;
}
.o-content ul ul, .o-content ul ol, .o-content ol ul, .o-content ol ol {
  margin: 12px 0 0;
  padding-left: 12px;
}

ol ol {
  list-style-type: lower-alpha;
}
.o-content > ol {
  counter-reset: custom-counter;
}
.o-content > ol li {
  list-style: none;
}
.o-content > ol li:before {
  color: #cccccc;
  display: inline-block;
  margin: 0 0 0 -1.5rem;
  width: 1.5rem;
  font-family: inherit;
  content: counter(custom-counter) ".";
  counter-increment: custom-counter;
  font-weight: 600;
}
.o-content > ol li > ol li:before {
  content: counter(custom-counter, lower-alpha) ".";
  counter-increment: custom-counter;
}

li {
  margin: 0 0 12px;
}
.o-content > ul li:before {
  content: "⬥";
  color: #cccccc;
  margin: 0 0 0 -1.5rem;
  display: inline-block;
  width: 1.5rem;
}
.o-content > ul li.check:before {
  content: "\f00c";
  font-family: "Font Awesome 6 Free";
  font-weight: 700;
}
@media (min-width: 46.25em) {
  .o-content--rtl li {
    padding: 0 1em 0 0;
  }
  .o-content--rtl li:before {
    margin: 0 -1em 0 0;
  }
}

/* ==========================================================================
   #GLOBAL PAGE VARIABLES
   ========================================================================== */
:root {
  --color-primary: #1c52da;
  --color-primary-rgb: 28, 82, 218;
  --color-secondary: #2e3192;
  --color-link: #1c52da;
  --color-link-hover: #2e3192;
  --button-color-primary: #1c52da;
  --button-color-primary-hover: #2e3192;
  --button-color-secondary-hover: #2e3192;
}

html {
  font-family: "Afacad", sans-serif;
  color: #333333;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.3333333333;
  overflow-y: auto;
  min-height: 100%;
  box-sizing: inherit;
  overflow-wrap: break-word;
}
html:has(.lb-disable-scrolling), html.lightbox-active, html.video-overlay-active, html.mobile-menu-active {
  overflow: hidden;
}

body {
  font-family: "Afacad", sans-serif;
  color: #333333;
  font-size: 18px;
  line-height: 1.3333333333;
  overflow: hidden;
  margin: 0;
}
body.show-app-bar {
  margin-bottom: 70px;
}
body.show-nav-bar {
  padding-top: 70px;
}
@media (min-width: 46.25em) {
  body.show-nav-bar {
    padding-top: 90px;
  }
}
@media print {
  body {
    padding: 0 !important;
  }
}
body.shop-page, body.product-page, body.show-app-bar {
  background: #f2f2f2;
}

main {
  position: relative;
}

section.styleguide {
  position: static;
  width: auto;
  height: auto;
  margin-bottom: 96px;
  padding: 0;
}
section.styleguide:after {
  content: "" !important;
  display: block !important;
  clear: both !important;
}

address {
  background: #ffffff;
  padding: 6px 12px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 5px;
}

/* ==========================================================================
   #TABLES
   ========================================================================== */
/**
 * 1. Ensure tables fill up as much space as possible.
 */
table {
  width: 100%; /* [1] */
  border-collapse: collapse;
  text-align: left;
  border-radius: 6px;
}
th {
  font-weight: 600;
}

/* ==========================================================================
   #TYPOGRAPHY
   ========================================================================== */
p {
  font-weight: inherit;
  margin-bottom: 1em;
}
body:not(.woocommerce-page) .o-content p {
  font-family: "Aleo", serif;
  font-weight: 300;
  line-height: 1.8;
}
@media (max-width: 46.24em) {
  body:not(.woocommerce-page) .o-content p {
    font-size: 0.8888888889rem;
    font-size: 16px;
    line-height: 1.4;
  }
}
p a {
  text-decoration: underline;
}

small {
  font-size: 0.7777777778rem;
  font-size: 14px;
  line-height: 1.4;
}

strong {
  font-weight: 600;
  color: #000000;
}

sup,
sub {
  font-style: normal;
  font-size: 0.7em;
}

blockquote {
  padding: 24px 24px 12px;
  margin: 12px 0 24px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-weight: 600;
  font-size: 1rem;
  font-size: 18px;
  line-height: 1.2;
}
@media (min-width: 46.25em) {
  blockquote {
    padding: 24px 96px 12px;
  }
}
blockquote p:first-child {
  position: relative;
}
blockquote p:first-child:before {
  content: "\f10d";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  top: -0.25em;
  left: -0.8em;
  font-size: 1.6666666667rem;
  font-size: 30px;
  line-height: 1;
  z-index: -1;
}
@media (min-width: 46.25em) {
  blockquote p:first-child:before {
    font-size: 2.2222222222rem;
    font-size: 40px;
    line-height: 1;
  }
}

code {
  font-family: Courier, "Courier New", monospace;
  background: #e6e6e6;
  padding: 0.1em 0.25em;
  display: inline-block;
}

/* ==========================================================================
   #APP
   ========================================================================== */
.modal-active .o-app {
  display: none;
}

/* ==========================================================================
   #COLUMNS
   ========================================================================== */
/**
 * Applies flex-based columns to list elements.
 * Items flow left-to-right and wrap as needed.
 *
 * Uses modifier classes like `.o-col-2--desktop` to define column count per breakpoint.
 * Supports vertical and horizontal spacing using `gap`.
 */
.o-col {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 12px;
}
.o-col > .o-col__item {
  box-sizing: border-box;
  flex: 0 0 100%;
  width: 100%;
}

@media (min-width: 20em) {
  .o-col-1--mobile {
    --col-count: 1;
  }
  .o-col-1--mobile > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 20em) {
  .o-col-2--mobile {
    --col-count: 2;
  }
  .o-col-2--mobile > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 20em) {
  .o-col-3--mobile {
    --col-count: 3;
  }
  .o-col-3--mobile > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 20em) {
  .o-col-4--mobile {
    --col-count: 4;
  }
  .o-col-4--mobile > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 20em) {
  .o-col-5--mobile {
    --col-count: 5;
  }
  .o-col-5--mobile > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 20em) {
  .o-col-6--mobile {
    --col-count: 6;
  }
  .o-col-6--mobile > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 26.25em) {
  .o-col-1--phablet {
    --col-count: 1;
  }
  .o-col-1--phablet > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 26.25em) {
  .o-col-2--phablet {
    --col-count: 2;
  }
  .o-col-2--phablet > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 26.25em) {
  .o-col-3--phablet {
    --col-count: 3;
  }
  .o-col-3--phablet > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 26.25em) {
  .o-col-4--phablet {
    --col-count: 4;
  }
  .o-col-4--phablet > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 26.25em) {
  .o-col-5--phablet {
    --col-count: 5;
  }
  .o-col-5--phablet > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 26.25em) {
  .o-col-6--phablet {
    --col-count: 6;
  }
  .o-col-6--phablet > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 46.25em) {
  .o-col-1--tablet {
    --col-count: 1;
  }
  .o-col-1--tablet > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 46.25em) {
  .o-col-2--tablet {
    --col-count: 2;
  }
  .o-col-2--tablet > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 46.25em) {
  .o-col-3--tablet {
    --col-count: 3;
  }
  .o-col-3--tablet > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 46.25em) {
  .o-col-4--tablet {
    --col-count: 4;
  }
  .o-col-4--tablet > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 46.25em) {
  .o-col-5--tablet {
    --col-count: 5;
  }
  .o-col-5--tablet > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 46.25em) {
  .o-col-6--tablet {
    --col-count: 6;
  }
  .o-col-6--tablet > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 61.25em) {
  .o-col-1--desktop {
    --col-count: 1;
  }
  .o-col-1--desktop > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 61.25em) {
  .o-col-2--desktop {
    --col-count: 2;
  }
  .o-col-2--desktop > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 61.25em) {
  .o-col-3--desktop {
    --col-count: 3;
  }
  .o-col-3--desktop > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 61.25em) {
  .o-col-4--desktop {
    --col-count: 4;
  }
  .o-col-4--desktop > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 61.25em) {
  .o-col-5--desktop {
    --col-count: 5;
  }
  .o-col-5--desktop > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 61.25em) {
  .o-col-6--desktop {
    --col-count: 6;
  }
  .o-col-6--desktop > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 81.25em) {
  .o-col-1--wide {
    --col-count: 1;
  }
  .o-col-1--wide > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 81.25em) {
  .o-col-2--wide {
    --col-count: 2;
  }
  .o-col-2--wide > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 81.25em) {
  .o-col-3--wide {
    --col-count: 3;
  }
  .o-col-3--wide > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 81.25em) {
  .o-col-4--wide {
    --col-count: 4;
  }
  .o-col-4--wide > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 81.25em) {
  .o-col-5--wide {
    --col-count: 5;
  }
  .o-col-5--wide > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

@media (min-width: 81.25em) {
  .o-col-6--wide {
    --col-count: 6;
  }
  .o-col-6--wide > .o-col__item {
    flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
    width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  }
}

.o-col-1 {
  --col-count: 1;
}
.o-col-1 > .o-col__item {
  flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
}

.o-col-2 {
  --col-count: 2;
}
.o-col-2 > .o-col__item {
  flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
}

.o-col-3 {
  --col-count: 3;
}
.o-col-3 > .o-col__item {
  flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
}

.o-col-4 {
  --col-count: 4;
}
.o-col-4 > .o-col__item {
  flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
}

.o-col-5 {
  --col-count: 5;
}
.o-col-5 > .o-col__item {
  flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
}

.o-col-6 {
  --col-count: 6;
}
.o-col-6 > .o-col__item {
  flex: 0 0 calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
  width: calc((100% - (var(--col-count) - 1) * 12px) / var(--col-count));
}

/* ==========================================================================
   #CONTENT
   ========================================================================== */
.o-content {
  width: 100%;
}

/* ==========================================================================
   #IMAGES
   ========================================================================== */
.o-image {
  position: relative;
  z-index: 1;
  overflow: hidden;
  width: 100%;
}
.o-image:before {
  content: "" !important;
  display: block;
  height: 0;
}
.o-image .content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.o-image .content img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
.o-image.o-image--auto .content {
  position: static;
  width: auto;
  height: auto;
}

.o-image--border {
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  border: 4px solid white;
}

.o-image--contain .content {
  text-align: center;
  background: rgba(255, 255, 255, 0.25);
}
.o-image--contain .content img {
  width: auto;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.35);
}

.o-image--inline {
  display: inline-block;
  width: calc(20% - 4px);
}

.o-image--inline {
  display: inline-block;
  width: calc(20% - 4px);
}

.o-image__watermark {
  position: absolute;
  bottom: 12px;
  left: 12px;
  z-index: 999;
  background: no-repeat center/contain;
  width: 60px;
  height: 60px;
}
@media (min-width: 46.25em) {
  .o-image__watermark {
    bottom: 16px;
    left: 16px;
    width: 100px;
    height: 100px;
  }
}

/* ==========================================================================
   #LAYOUT
   ========================================================================== */
/**
 * Grid-like layout system.
 *
 * The layout object provides us with a column-style layout system. This file
 * contains the basic structural elements, but classes should be complemented
 * with width utilities, for example:
 *
 *   <div class="o-layout">
 *     <div class="o-layout__item  u-1/2">
 *     </div>
 *     <div class="o-layout__item  u-1/2">
 *     </div>
 *   </div>
 *
 * The above will create a two-column structure in which each column will
 * fluidly fill half of the width of the parent. We can have more complex
 * systems:
 *
 *   <div class="o-layout">
 *     <div class="o-layout__item  u-1/1  u-1/3--medium">
 *     </div>
 *     <div class="o-layout__item  u-1/2  u-1/3--medium">
 *     </div>
 *     <div class="o-layout__item  u-1/2  u-1/3--medium">
 *     </div>
 *
 * The above will create a system in which the first item will be 100% width
 * until we enter our medium breakpoint, when it will become 33.333% width. The
 * second and third items will be 50% of their parent, until they also become
 * 33.333% width at the medium breakpoint.
 *
 * We can also manipulate entire layout systems by adding a series of modifiers
 * to the `.o-layout` block. For example:
 *
 *   <div class="o-layout  o-layout--reverse">
 *
 * This will reverse the displayed order of the system so that it runs in the
 * opposite order to our source, effectively flipping the system over.
 *
 *   <div class="o-layout  o-layout--[right|center]">
 *
 * This will cause the system to fill up from either the centre or the right
 * hand side. Default behaviour is to fill up the layout system from the left.
 *
 * There are plenty more options available to us: explore them below.
 */
/* Default/mandatory classes
   ========================================================================== */
/**
 * 1. Allows us to use the layout object on any type of element.
 * 2. We need to defensively reset any box-model properties.
 * 3. Use the negative margin trick for multi-row grids:
 *    http://csswizardry.com/2011/08/building-better-grid-systems/
 */
.o-layout {
  display: block; /* [1] */
  margin: 0; /* [2] */
  padding: 0; /* [2] */
  list-style: none; /* [1] */
  margin-left: -24px; /* [3] */
  font-size: 0 !important;
}

.o-layout__item {
  box-sizing: border-box; /* [1] */
  display: inline-block; /* [2] */
  vertical-align: top; /* [3] */
  width: 100%; /* [4] */
  padding-left: 24px; /* [5] */
  font-size: 18px; /* [6] */
  font-size: 1rem;
}

/* Gutter size modifiers
   ========================================================================== */
.o-layout--flush {
  margin-left: 0;
}
.o-layout--flush > .o-layout__item {
  padding-left: 0;
}

.o-layout--tiny {
  margin-left: -6px;
}
.o-layout--tiny > .o-layout__item {
  padding-left: 6px;
}

.o-layout--small {
  margin-left: -12px;
}
.o-layout--small > .o-layout__item {
  padding-left: 12px;
}

.o-layout--large {
  margin-left: -48px;
}
.o-layout--large > .o-layout__item {
  padding-left: 48px;
}

.o-layout--huge {
  margin-left: -96px;
}
.o-layout--huge > .o-layout__item {
  padding-left: 96px;
}

/* Vertical alignment modifiers
   ========================================================================== */
.o-layout--middle > .o-layout__item {
  vertical-align: middle;
}

.o-layout--bottom > .o-layout__item {
  vertical-align: bottom;
}

.o-layout--stretch {
  display: flex;
  flex-wrap: wrap;
}
.o-layout--stretch > .o-layout__item {
  display: flex;
  flex: 1;
}
.o-layout--stretch.o-layout--center {
  justify-content: center;
}
.o-layout--stretch.o-layout--right {
  justify-content: flex-end;
}
.o-layout--stretch.o-layout--left {
  justify-content: flex-start;
}

/* Fill order modifiers
   ========================================================================== */
.o-layout--center {
  text-align: center;
}
.o-layout--center > .o-layout__item {
  text-align: left;
}

.o-layout--right {
  text-align: right;
}
.o-layout--right > .o-layout__item {
  text-align: left;
}

.o-layout--left {
  text-align: left;
}
.o-layout--left > .o-layout__item {
  text-align: left;
}

.o-layout--reverse {
  direction: rtl;
}
.o-layout--reverse > .o-layout__item {
  direction: ltr;
}

/* Auto-widths modifier
   ========================================================================== */
.o-layout--auto > .o-layout__item {
  width: auto;
}

/* ==========================================================================
   #LIST COLUMNS
   ========================================================================== */
.o-list-columns {
  -moz-column-count: 2;
       column-count: 2;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  list-style-position: inside;
}
.o-list-columns li {
  -moz-column-break-inside: avoid;
       break-inside: avoid;
  display: block;
}

/* ==========================================================================
   #PAGE
   ========================================================================== */
.o-page {
  margin-top: 24px;
}

/* ==========================================================================
   #ROW
   ========================================================================== */
.o-row {
  padding: 48px 0;
  position: relative;
}

/* ==========================================================================
   #TABS
   ========================================================================== */
.o-tabs {
  padding: 0 12px;
  margin: 0 -12px 24px;
  font-size: 0;
  overflow: auto;
  -ms-overflow-style: none; /* Internet Explorer 10+ */
  scrollbar-width: none; /* Firefox */
  box-shadow: inset 0 -1px 0 #f2f2f2;
  white-space: nowrap;
  position: relative;
}
.o-tabs::-webkit-scrollbar {
  display: none;
}
@media (min-width: 26.25em) {
  .o-tabs {
    padding: 0 12px;
    margin: 0;
  }
}

@media (min-width: 26.25em) {
  .o-tabs--stretch {
    display: flex;
  }
}

.o-tabs__item {
  list-style: none;
  display: inline-block;
  margin-left: 6px;
  position: relative;
  z-index: 1;
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 1;
}
@media (min-width: 26.25em) {
  .o-tabs__item {
    margin-left: 0;
    margin-right: 6px;
  }
}
.o-tabs__item:last-child {
  margin-right: 0;
}
@media (min-width: 26.25em) {
  .o-tabs--stretch .o-tabs__item {
    flex: 1;
  }
}
.o-tabs__item a {
  display: block;
  text-align: center;
  padding: 12px;
  background: white;
  color: #333333 !important;
  text-decoration: none !important;
  border: 1px solid #f2f2f2;
  background: #f2f2f2;
  transition: all 0.25s ease 0s;
}
.o-tabs__item a:hover {
  background: var(--button-color-secondary-hover);
}
.o-tabs__item.active a {
  transition: none;
  color: var(--color-link);
  background: white;
  pointer-events: none;
  text-decoration: none;
  border-bottom-color: white;
}

.o-tabs-panel {
  display: none;
  padding: 12px;
  margin-bottom: 24px;
}
.o-tabs-panel.active {
  display: block;
}
@media print {
  .o-tabs-panel {
    display: block;
  }
}

/* ==========================================================================
   #TRUNCATE
   ========================================================================== */
/**
 * Truncates sibling elements after a `.truncate` marker within `.o-truncate`.
 *
 * Any siblings following the `.truncate` element will be hidden by default.
 * Removing the `.truncate` class (via JS or otherwise) will reveal the hidden content.
 *
 * This is useful for previewing a limited set of items and showing the rest
 * on interaction (e.g. "View All" button).
 */
.o-truncate .truncate ~ * {
  display: none;
}

/* ==========================================================================
   #WRAPPER
   ========================================================================== */
/**
 * Page-level constraining and wrapping elements.
 */
.o-wrapper {
  padding-right: 24px;
  padding-left: 24px;
  margin-right: auto;
  margin-left: auto;
  max-width: 1200px;
}
.o-wrapper:after {
  content: "" !important;
  display: block !important;
  clear: both !important;
}
@media (max-width: 46.24em) {
  .o-wrapper {
    padding-right: 12px;
    padding-left: 12px;
  }
}

.o-wrapper--wide {
  max-width: 1500px;
  margin: auto;
}

.o-wrapper--narrow {
  max-width: 800px;
  margin: auto;
}

.o-wrapper--full {
  max-width: none;
  margin: auto;
}

.o-wrapper--flush {
  max-width: none;
  margin: auto;
  padding: 0;
}

/* ==========================================================================
   #ALERTS
   ========================================================================== */
.c-alert-banner {
  border-top: 1px dotted rgb(192.1869158879, 174.0560747664, 1.8130841121);
  background: #fde92b;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 99999999;
  padding: 12px 0;
}

.c-alert-banner__actions {
  text-align: center;
}

.c-alert-banner__body {
  margin-bottom: 12px;
}

/* ==========================================================================
   #ADVERTISE
   ========================================================================== */
.c-advertise.loading > .u-border {
  opacity: 0.2;
  pointer-eventS: none;
  position: relative;
}
.c-advertise.loading > .u-border:after {
  content: "\f110";
  font-family: "Font Awesome 6 Free";
  font-weight: bold;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 999;
  transform: translate(-50%, -50%);
  transform-origin: center;
  color: #333333;
  animation: rotate 2s linear infinite;
}

.c-advertise__image {
  margin-bottom: 6px;
  min-height: 1.25rem;
}

.c-advertise__message {
  margin-bottom: 24px;
}

/* ==========================================================================
   #BADGES
   ========================================================================== */
.c-badge {
  display: inline-block;
  line-height: 1;
  background: #e6e6e6;
  color: #666666;
  box-shadow: inset 0 0 0 1px #666666;
  padding: 3px 6px;
  white-space: nowrap;
  border-radius: 6px;
}

.c-badge--image {
  padding: 0;
}

.c-badge--success {
  background: rgb(224.8170731707, 237.1646341463, 205.3353658537);
  color: rgb(103.6585365854, 137.9573170732, 49.5426829268);
  box-shadow: inset 0 0 0 1px rgb(103.6585365854, 137.9573170732, 49.5426829268);
}

.c-badge--pending {
  background: #ffeecc;
  color: #cc8800;
  box-shadow: inset 0 0 0 1px #cc8800;
}

.c-badge--error {
  background: #ffaaaa;
  color: #aa0000;
  box-shadow: inset 0 0 0 1px #aa0000;
}

.c-badge--stroke {
  background: transparent;
  color: #666666;
  box-shadow: inset 0 0 0 1px #cccccc;
}

.c-badge--truncate {
  display: inline-block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: bottom;
}
@media (max-width: 46.24em) {
  .c-badge--truncate {
    max-width: 170px;
  }
}

/* ==========================================================================
   #BANNER
   ========================================================================== */
.c-banner {
  padding-top: 24px;
  background: no-repeat top center/cover;
  position: relative;
  overflow: hidden;
}

.c-banner__content {
  padding-top: 3em;
  margin-top: -1.75em;
  border-top: 4px solid #2e3192;
}
@media (min-width: 46.25em) {
  .c-banner__content {
    padding-top: 4em;
    margin-top: -3em;
    border-top: 6px solid #2e3192;
  }
}

.c-banner__media {
  background: #00a9a3;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  text-align: center;
}

.c-banner__image {
  background: no-repeat center top/cover;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  width: 100%;
  max-width: 1920px;
  height: 100%;
}

.c-banner__video {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  width: 100%;
  max-width: 1920px;
  -o-object-fit: fill;
     object-fit: fill;
}
@media (max-width: 81.24em) {
  .c-banner__video {
    width: auto;
    height: 800px;
    top: 0;
  }
}

/* ==========================================================================
   #BUTTONS
   ========================================================================== */
.c-btn, .woocommerce button,
.woocommerce .button,
.woocommerce a.button,
.woocommerce a.button.alt,
.woocommerce button.button, .wc-block-checkout button.wc-block-components-address-form__address_2-toggle, .alternate .c-tab-group__tab a, .c-pager .page-numbers, .c-pager .prev,
.c-pager .next {
  box-sizing: border-box;
  display: inline-block;
  background: transparent;
  padding: 12px 36px;
  margin: 12px 0 0;
  text-decoration: none;
  color: inherit;
  text-align: center;
  font-weight: 400;
  outline: none;
  border-radius: 100px;
  text-shadow: none;
  font-family: "Afacad", sans-serif;
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 1;
  transition: all 0.25s ease 0s;
  transition-property: color, background-color, box-shadow;
}
@media (min-width: 46.25em) {
  .c-btn, .woocommerce button,
  .woocommerce .button,
  .woocommerce a.button,
  .woocommerce a.button.alt,
  .woocommerce button.button, .wc-block-checkout button.wc-block-components-address-form__address_2-toggle, .alternate .c-tab-group__tab a, .c-pager .page-numbers, .c-pager .prev,
  .c-pager .next {
    width: auto;
  }
}
.c-btn:hover, .woocommerce button:hover,
.woocommerce .button:hover, .wc-block-checkout button.wc-block-components-address-form__address_2-toggle:hover, .alternate .c-tab-group__tab a:hover, .c-pager .page-numbers:hover, .c-pager .prev:hover,
.c-pager .next:hover {
  color: inherit;
}
.c-btn:hover:after, .woocommerce button:hover:after,
.woocommerce .button:hover:after, .wc-block-checkout button.wc-block-components-address-form__address_2-toggle:hover:after, .alternate .c-tab-group__tab a:hover:after, .c-pager .page-numbers:hover:after, .c-pager .prev:hover:after,
.c-pager .next:hover:after {
  color: inherit;
}
.c-btn.disabled, .woocommerce button.disabled,
.woocommerce .disabled.button, .wc-block-checkout button.disabled.wc-block-components-address-form__address_2-toggle, .alternate .c-tab-group__tab a.disabled, .c-pager .disabled.page-numbers, .c-pager .disabled.prev,
.c-pager .disabled.next, .c-btn.added, .woocommerce button.added,
.woocommerce .added.button, .wc-block-checkout button.added.wc-block-components-address-form__address_2-toggle, .alternate .c-tab-group__tab a.added, .c-pager .added.page-numbers, .c-pager .added.prev,
.c-pager .added.next, .c-btn.loading, .woocommerce button.loading,
.woocommerce .loading.button, .wc-block-checkout button.loading.wc-block-components-address-form__address_2-toggle, .alternate .c-tab-group__tab a.loading, .c-pager .loading.page-numbers, .c-pager .loading.prev,
.c-pager .loading.next {
  pointer-events: none !important;
  cursor: not-allowed;
}
@media (min-width: 46.25em) {
  .c-btn ~ .c-btn, .woocommerce button ~ .c-btn,
  .woocommerce .button ~ .c-btn,
  .woocommerce a.button ~ .c-btn,
  .woocommerce a.button.alt ~ .c-btn,
  .woocommerce button.button ~ .c-btn, .wc-block-checkout button.wc-block-components-address-form__address_2-toggle ~ .c-btn, .alternate .c-tab-group__tab a ~ .c-btn, .c-pager .page-numbers ~ .c-btn, .c-pager .prev ~ .c-btn,
  .c-pager .next ~ .c-btn, .woocommerce .c-btn ~ button, .woocommerce button ~ button,
  .woocommerce .button ~ button,
  .woocommerce a.button ~ button,
  .woocommerce a.button.alt ~ button,
  .woocommerce button.button ~ button, .wc-block-checkout .woocommerce button.wc-block-components-address-form__address_2-toggle ~ button, .woocommerce .wc-block-checkout button.wc-block-components-address-form__address_2-toggle ~ button, .alternate .c-tab-group__tab .woocommerce a ~ button, .woocommerce .alternate .c-tab-group__tab a ~ button, .c-pager .woocommerce .page-numbers ~ button, .woocommerce .c-pager .page-numbers ~ button, .c-pager .woocommerce .prev ~ button, .woocommerce .c-pager .prev ~ button,
  .c-pager .woocommerce .next ~ button,
  .woocommerce .c-pager .next ~ button,
  .woocommerce .c-btn ~ .button,
  .woocommerce button ~ .button,
  .woocommerce .button ~ .button,
  .woocommerce a.button ~ .button,
  .woocommerce a.button.alt ~ .button,
  .woocommerce button.button ~ .button,
  .wc-block-checkout .woocommerce button.wc-block-components-address-form__address_2-toggle ~ .button,
  .woocommerce .wc-block-checkout button.wc-block-components-address-form__address_2-toggle ~ .button,
  .alternate .c-tab-group__tab .woocommerce a ~ .button,
  .woocommerce .alternate .c-tab-group__tab a ~ .button,
  .c-pager .woocommerce .page-numbers ~ .button,
  .woocommerce .c-pager .page-numbers ~ .button,
  .c-pager .woocommerce .prev ~ .button,
  .woocommerce .c-pager .prev ~ .button,
  .c-pager .woocommerce .next ~ .button,
  .woocommerce .c-pager .next ~ .button,
  .woocommerce .c-btn ~ a.button,
  .woocommerce button ~ a.button,
  .woocommerce .button ~ a.button,
  .woocommerce a.button ~ a.button,
  .woocommerce a.button.alt ~ a.button,
  .woocommerce button.button ~ a.button,
  .wc-block-checkout .woocommerce button.wc-block-components-address-form__address_2-toggle ~ a.button,
  .woocommerce .wc-block-checkout button.wc-block-components-address-form__address_2-toggle ~ a.button,
  .alternate .c-tab-group__tab .woocommerce a ~ a.button,
  .woocommerce .alternate .c-tab-group__tab a ~ a.button,
  .c-pager .woocommerce .page-numbers ~ a.button,
  .woocommerce .c-pager .page-numbers ~ a.button,
  .c-pager .woocommerce .prev ~ a.button,
  .woocommerce .c-pager .prev ~ a.button,
  .c-pager .woocommerce .next ~ a.button,
  .woocommerce .c-pager .next ~ a.button,
  .woocommerce .c-btn ~ a.button.alt,
  .woocommerce button ~ a.button.alt,
  .woocommerce .button ~ a.button.alt,
  .woocommerce a.button ~ a.button.alt,
  .woocommerce a.button.alt ~ a.button.alt,
  .woocommerce button.button ~ a.button.alt,
  .wc-block-checkout .woocommerce button.wc-block-components-address-form__address_2-toggle ~ a.button.alt,
  .woocommerce .wc-block-checkout button.wc-block-components-address-form__address_2-toggle ~ a.button.alt,
  .alternate .c-tab-group__tab .woocommerce a ~ a.button.alt,
  .woocommerce .alternate .c-tab-group__tab a ~ a.button.alt,
  .c-pager .woocommerce .page-numbers ~ a.button.alt,
  .woocommerce .c-pager .page-numbers ~ a.button.alt,
  .c-pager .woocommerce .prev ~ a.button.alt,
  .woocommerce .c-pager .prev ~ a.button.alt,
  .c-pager .woocommerce .next ~ a.button.alt,
  .woocommerce .c-pager .next ~ a.button.alt,
  .woocommerce .c-btn ~ button.button,
  .woocommerce button ~ button.button,
  .woocommerce .button ~ button.button,
  .woocommerce a.button ~ button.button,
  .woocommerce a.button.alt ~ button.button,
  .woocommerce button.button ~ button.button,
  .wc-block-checkout .woocommerce button.wc-block-components-address-form__address_2-toggle ~ button.button,
  .woocommerce .wc-block-checkout button.wc-block-components-address-form__address_2-toggle ~ button.button,
  .alternate .c-tab-group__tab .woocommerce a ~ button.button,
  .woocommerce .alternate .c-tab-group__tab a ~ button.button,
  .c-pager .woocommerce .page-numbers ~ button.button,
  .woocommerce .c-pager .page-numbers ~ button.button,
  .c-pager .woocommerce .prev ~ button.button,
  .woocommerce .c-pager .prev ~ button.button,
  .c-pager .woocommerce .next ~ button.button,
  .woocommerce .c-pager .next ~ button.button, .wc-block-checkout .c-btn ~ button.wc-block-components-address-form__address_2-toggle, .woocommerce .wc-block-checkout button ~ button.wc-block-components-address-form__address_2-toggle, .wc-block-checkout .woocommerce button ~ button.wc-block-components-address-form__address_2-toggle,
  .woocommerce .wc-block-checkout .button ~ button.wc-block-components-address-form__address_2-toggle,
  .wc-block-checkout .woocommerce .button ~ button.wc-block-components-address-form__address_2-toggle,
  .woocommerce .wc-block-checkout a.button ~ button.wc-block-components-address-form__address_2-toggle,
  .wc-block-checkout .woocommerce a.button ~ button.wc-block-components-address-form__address_2-toggle,
  .woocommerce .wc-block-checkout a.button.alt ~ button.wc-block-components-address-form__address_2-toggle,
  .wc-block-checkout .woocommerce a.button.alt ~ button.wc-block-components-address-form__address_2-toggle,
  .woocommerce .wc-block-checkout button.button ~ button.wc-block-components-address-form__address_2-toggle,
  .wc-block-checkout .woocommerce button.button ~ button.wc-block-components-address-form__address_2-toggle, .wc-block-checkout button.wc-block-components-address-form__address_2-toggle ~ button.wc-block-components-address-form__address_2-toggle, .alternate .c-tab-group__tab .wc-block-checkout a ~ button.wc-block-components-address-form__address_2-toggle, .wc-block-checkout .alternate .c-tab-group__tab a ~ button.wc-block-components-address-form__address_2-toggle, .c-pager .wc-block-checkout .page-numbers ~ button.wc-block-components-address-form__address_2-toggle, .wc-block-checkout .c-pager .page-numbers ~ button.wc-block-components-address-form__address_2-toggle, .c-pager .wc-block-checkout .prev ~ button.wc-block-components-address-form__address_2-toggle, .wc-block-checkout .c-pager .prev ~ button.wc-block-components-address-form__address_2-toggle,
  .c-pager .wc-block-checkout .next ~ button.wc-block-components-address-form__address_2-toggle,
  .wc-block-checkout .c-pager .next ~ button.wc-block-components-address-form__address_2-toggle, .alternate .c-tab-group__tab .c-btn ~ a, .woocommerce .alternate .c-tab-group__tab button ~ a, .alternate .c-tab-group__tab .woocommerce button ~ a,
  .woocommerce .alternate .c-tab-group__tab .button ~ a,
  .alternate .c-tab-group__tab .woocommerce .button ~ a,
  .woocommerce .alternate .c-tab-group__tab a.button ~ a,
  .alternate .c-tab-group__tab .woocommerce a.button ~ a,
  .woocommerce .alternate .c-tab-group__tab a.button.alt ~ a,
  .alternate .c-tab-group__tab .woocommerce a.button.alt ~ a,
  .woocommerce .alternate .c-tab-group__tab button.button ~ a,
  .alternate .c-tab-group__tab .woocommerce button.button ~ a, .wc-block-checkout .alternate .c-tab-group__tab button.wc-block-components-address-form__address_2-toggle ~ a, .alternate .c-tab-group__tab .wc-block-checkout button.wc-block-components-address-form__address_2-toggle ~ a, .alternate .c-tab-group__tab a ~ a, .c-pager .alternate .c-tab-group__tab .page-numbers ~ a, .alternate .c-tab-group__tab .c-pager .page-numbers ~ a, .c-pager .alternate .c-tab-group__tab .prev ~ a, .alternate .c-tab-group__tab .c-pager .prev ~ a,
  .c-pager .alternate .c-tab-group__tab .next ~ a,
  .alternate .c-tab-group__tab .c-pager .next ~ a, .c-pager .c-btn ~ .page-numbers, .woocommerce .c-pager button ~ .page-numbers, .c-pager .woocommerce button ~ .page-numbers,
  .woocommerce .c-pager .button ~ .page-numbers,
  .c-pager .woocommerce .button ~ .page-numbers,
  .woocommerce .c-pager a.button ~ .page-numbers,
  .c-pager .woocommerce a.button ~ .page-numbers,
  .woocommerce .c-pager a.button.alt ~ .page-numbers,
  .c-pager .woocommerce a.button.alt ~ .page-numbers,
  .woocommerce .c-pager button.button ~ .page-numbers,
  .c-pager .woocommerce button.button ~ .page-numbers, .wc-block-checkout .c-pager button.wc-block-components-address-form__address_2-toggle ~ .page-numbers, .c-pager .wc-block-checkout button.wc-block-components-address-form__address_2-toggle ~ .page-numbers, .alternate .c-tab-group__tab .c-pager a ~ .page-numbers, .c-pager .alternate .c-tab-group__tab a ~ .page-numbers, .c-pager .page-numbers ~ .page-numbers, .c-pager .prev ~ .page-numbers,
  .c-pager .next ~ .page-numbers, .c-pager .c-btn ~ .prev, .woocommerce .c-pager button ~ .prev, .c-pager .woocommerce button ~ .prev,
  .woocommerce .c-pager .button ~ .prev,
  .c-pager .woocommerce .button ~ .prev,
  .woocommerce .c-pager a.button ~ .prev,
  .c-pager .woocommerce a.button ~ .prev,
  .woocommerce .c-pager a.button.alt ~ .prev,
  .c-pager .woocommerce a.button.alt ~ .prev,
  .woocommerce .c-pager button.button ~ .prev,
  .c-pager .woocommerce button.button ~ .prev, .wc-block-checkout .c-pager button.wc-block-components-address-form__address_2-toggle ~ .prev, .c-pager .wc-block-checkout button.wc-block-components-address-form__address_2-toggle ~ .prev, .alternate .c-tab-group__tab .c-pager a ~ .prev, .c-pager .alternate .c-tab-group__tab a ~ .prev, .c-pager .page-numbers ~ .prev, .c-pager .prev ~ .prev,
  .c-pager .next ~ .prev,
  .c-pager .c-btn ~ .next,
  .woocommerce .c-pager button ~ .next,
  .c-pager .woocommerce button ~ .next,
  .woocommerce .c-pager .button ~ .next,
  .c-pager .woocommerce .button ~ .next,
  .woocommerce .c-pager a.button ~ .next,
  .c-pager .woocommerce a.button ~ .next,
  .woocommerce .c-pager a.button.alt ~ .next,
  .c-pager .woocommerce a.button.alt ~ .next,
  .woocommerce .c-pager button.button ~ .next,
  .c-pager .woocommerce button.button ~ .next,
  .wc-block-checkout .c-pager button.wc-block-components-address-form__address_2-toggle ~ .next,
  .c-pager .wc-block-checkout button.wc-block-components-address-form__address_2-toggle ~ .next,
  .alternate .c-tab-group__tab .c-pager a ~ .next,
  .c-pager .alternate .c-tab-group__tab a ~ .next,
  .c-pager .page-numbers ~ .next,
  .c-pager .prev ~ .next,
  .c-pager .next ~ .next {
    margin: 12px 0 0 6px;
  }
}
.c-btn.loading, .woocommerce button.loading,
.woocommerce .loading.button, .wc-block-checkout button.loading.wc-block-components-address-form__address_2-toggle, .alternate .c-tab-group__tab a.loading, .c-pager .loading.page-numbers, .c-pager .loading.prev,
.c-pager .loading.next {
  position: relative;
}
.c-btn.loading:after, .woocommerce button.loading:after,
.woocommerce .loading.button:after, .wc-block-checkout button.loading.wc-block-components-address-form__address_2-toggle:after, .alternate .c-tab-group__tab a.loading:after, .c-pager .loading.page-numbers:after, .c-pager .loading.prev:after,
.c-pager .loading.next:after {
  content: "\f110";
  font-family: "Font Awesome 6 Free";
  font-weight: bold;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 999;
  transform: translate(-50%, -50%);
  transform-origin: center;
  color: #333333;
  animation: rotate 2s linear infinite;
}
@media print {
  .c-btn, .woocommerce button,
  .woocommerce .button,
  .woocommerce a.button,
  .woocommerce a.button.alt,
  .woocommerce button.button, .wc-block-checkout button.wc-block-components-address-form__address_2-toggle, .alternate .c-tab-group__tab a, .c-pager .page-numbers, .c-pager .prev,
  .c-pager .next {
    display: none !important;
  }
}

.c-btn--solid, .woocommerce button,
.woocommerce .button,
.woocommerce a.button,
.woocommerce a.button.alt,
.woocommerce button.button, .alternate .c-tab-group__tab.active a {
  background: #1c52da;
  color: #ffffff;
}
.c-btn--solid:hover, .woocommerce button:hover,
.woocommerce .button:hover, .alternate .c-tab-group__tab.active a:hover, .c-btn--solid:focus, .woocommerce button:focus,
.woocommerce .button:focus, .alternate .c-tab-group__tab.active a:focus {
  background: #2e3192;
  color: #ffffff;
}
.c-btn--solid.disabled, .woocommerce button.disabled,
.woocommerce .disabled.button, .alternate .c-tab-group__tab.active a.disabled, .c-btn--solid.loading, .woocommerce button.loading,
.woocommerce .loading.button, .alternate .c-tab-group__tab.active a.loading {
  background: rgba(28, 82, 218, 0.2);
}
.c-btn--solid.added, .woocommerce button.added,
.woocommerce .added.button, .alternate .c-tab-group__tab.active a.added {
  color: #333333;
  background: rgba(0, 169, 163, 0.2);
}

.c-btn--stroke, .alternate .c-tab-group__tab a, .c-pager .page-numbers, .c-pager .prev,
.c-pager .next {
  box-shadow: 0 0 0 1px #2e3192 inset;
  color: #1c52da;
}
.c-btn--stroke:hover, .alternate .c-tab-group__tab a:hover, .c-pager .page-numbers:hover, .c-pager .prev:hover,
.c-pager .next:hover, .c-btn--stroke:focus, .alternate .c-tab-group__tab a:focus, .c-pager .page-numbers:focus, .c-pager .prev:focus,
.c-pager .next:focus {
  color: #2e3192;
  background: #d9f3fd;
  box-shadow: 0 0 0 1px #2e3192 inset;
}
.c-btn--stroke.c-btn--reverse, .alternate .c-tab-group__tab a.c-btn--reverse, .c-pager .c-btn--reverse.page-numbers, .c-pager .c-btn--reverse.prev,
.c-pager .c-btn--reverse.next {
  box-shadow: 0 0 0 1px white inset;
  color: #ffffff;
}
.c-btn--stroke.c-btn--reverse:hover, .alternate .c-tab-group__tab a.c-btn--reverse:hover, .c-pager .c-btn--reverse.page-numbers:hover, .c-pager .c-btn--reverse.prev:hover,
.c-pager .c-btn--reverse.next:hover, .c-btn--stroke.c-btn--reverse:focus, .alternate .c-tab-group__tab a.c-btn--reverse:focus, .c-pager .c-btn--reverse.page-numbers:focus, .c-pager .c-btn--reverse.prev:focus,
.c-pager .c-btn--reverse.next:focus {
  color: #2e3192;
  box-shadow: 0 0 0 1px #2e3192 inset;
}
.c-btn--stroke.c-btn--reverse:after, .alternate .c-tab-group__tab a.c-btn--reverse:after, .c-pager .c-btn--reverse.page-numbers:after, .c-pager .c-btn--reverse.prev:after,
.c-pager .c-btn--reverse.next:after {
  color: #fde92b;
}
.c-btn--stroke.disabled, .alternate .c-tab-group__tab a.disabled, .c-pager .disabled.page-numbers, .c-pager .disabled.prev,
.c-pager .disabled.next, .c-btn--stroke.added, .alternate .c-tab-group__tab a.added, .c-pager .added.page-numbers, .c-pager .added.prev,
.c-pager .added.next, .c-btn--stroke.loading, .alternate .c-tab-group__tab a.loading, .c-pager .loading.page-numbers, .c-pager .loading.prev,
.c-pager .loading.next {
  color: rgba(46, 49, 146, 0.2);
  box-shadow: 0 0 0 1px rgba(46, 49, 146, 0.2) inset;
}

.c-btn--text, .wc-block-checkout button.wc-block-components-address-form__address_2-toggle {
  background: none;
  color: #1c52da;
}
.c-btn--text:hover, .wc-block-checkout button.wc-block-components-address-form__address_2-toggle:hover {
  background: #d9f3fd;
  color: #1c52da;
}

.c-btn--large {
  font-size: 1.2222222222rem;
  font-size: 22px;
  line-height: 1.3636363636;
  padding: 12px;
}
@media (min-width: 46.25em) {
  .c-btn--large {
    padding: 12px 24px;
    font-size: 1.5555555556rem;
    font-size: 28px;
    line-height: 1.2857142857;
  }
}

.c-btn--small, .alternate .c-tab-group__tab a, .c-pager .page-numbers {
  padding: 6px 12px;
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 1.5;
}

.c-btn--wide {
  padding-left: 20%;
  padding-right: 20%;
}

.c-btn--full, .wc-block-checkout button.wc-block-components-address-form__address_2-toggle {
  width: 100% !important;
}

.c-btn--inline {
  display: inline-block;
  width: auto;
}

.c-btn--round {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 100%;
  padding: 12px;
  width: 1.35em;
  height: 1.35em;
  font-size: 2.6666666667rem;
  font-size: 48px;
  line-height: 1;
}

.c-btn--float {
  box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.25), 3px 3px 3px rgba(0, 0, 0, 0.25);
}

.c-btn--icon {
  padding: 0;
  width: 1.5em;
  height: 1.5em;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 2em;
}

.c-btn-group {
  box-shadow: inset 0 0 0 1px #cccccc;
  border-radius: 6px;
  padding: 3px;
  display: inline-block;
}
.c-btn-group .c-btn, .c-btn-group .woocommerce button, .woocommerce .c-btn-group button,
.c-btn-group .woocommerce .button,
.woocommerce .c-btn-group .button, .c-btn-group .wc-block-checkout button.wc-block-components-address-form__address_2-toggle, .wc-block-checkout .c-btn-group button.wc-block-components-address-form__address_2-toggle, .c-btn-group .alternate .c-tab-group__tab a, .alternate .c-tab-group__tab .c-btn-group a, .c-btn-group .c-pager .page-numbers, .c-pager .c-btn-group .page-numbers, .c-btn-group .c-pager .prev, .c-pager .c-btn-group .prev,
.c-btn-group .c-pager .next,
.c-pager .c-btn-group .next {
  border-radius: 4px;
  box-shadow: none !important;
  margin: 0;
  width: auto;
  line-height: 1.4;
}
.c-btn-group .c-btn:not([class*=c-btn-]), .c-btn-group .woocommerce button:not([class*=c-btn-]), .woocommerce .c-btn-group button:not([class*=c-btn-]),
.c-btn-group .woocommerce .button:not([class*=c-btn-]),
.woocommerce .c-btn-group .button:not([class*=c-btn-]), .c-btn-group .wc-block-checkout button.wc-block-components-address-form__address_2-toggle:not([class*=c-btn-]), .wc-block-checkout .c-btn-group button.wc-block-components-address-form__address_2-toggle:not([class*=c-btn-]), .c-btn-group .alternate .c-tab-group__tab a:not([class*=c-btn-]), .alternate .c-tab-group__tab .c-btn-group a:not([class*=c-btn-]), .c-btn-group .c-pager .page-numbers:not([class*=c-btn-]), .c-pager .c-btn-group .page-numbers:not([class*=c-btn-]), .c-btn-group .c-pager .prev:not([class*=c-btn-]), .c-pager .c-btn-group .prev:not([class*=c-btn-]),
.c-btn-group .c-pager .next:not([class*=c-btn-]),
.c-pager .c-btn-group .next:not([class*=c-btn-]) {
  padding: 12px;
}
.c-btn-group .c-btn:hover, .c-btn-group .woocommerce button:hover, .woocommerce .c-btn-group button:hover,
.c-btn-group .woocommerce .button:hover,
.woocommerce .c-btn-group .button:hover, .c-btn-group .wc-block-checkout button.wc-block-components-address-form__address_2-toggle:hover, .wc-block-checkout .c-btn-group button.wc-block-components-address-form__address_2-toggle:hover, .c-btn-group .alternate .c-tab-group__tab a:hover, .alternate .c-tab-group__tab .c-btn-group a:hover, .c-btn-group .c-pager .page-numbers:hover, .c-pager .c-btn-group .page-numbers:hover, .c-btn-group .c-pager .prev:hover, .c-pager .c-btn-group .prev:hover,
.c-btn-group .c-pager .next:hover,
.c-pager .c-btn-group .next:hover {
  background: #d9f3fd;
  color: #1c52da;
}
.c-btn-group .c-btn.active, .c-btn-group .woocommerce button.active, .woocommerce .c-btn-group button.active,
.c-btn-group .woocommerce .active.button,
.woocommerce .c-btn-group .active.button, .c-btn-group .wc-block-checkout button.active.wc-block-components-address-form__address_2-toggle, .wc-block-checkout .c-btn-group button.active.wc-block-components-address-form__address_2-toggle, .c-btn-group .alternate .c-tab-group__tab a.active, .alternate .c-tab-group__tab .c-btn-group a.active, .c-btn-group .c-pager .active.page-numbers, .c-pager .c-btn-group .active.page-numbers, .c-btn-group .c-pager .active.prev, .c-pager .c-btn-group .active.prev,
.c-btn-group .c-pager .active.next,
.c-pager .c-btn-group .active.next {
  background: #1c52da;
  color: white !important;
  pointer-events: none;
}

/* ==========================================================================
   #CART COUNTER
   ========================================================================== */
.c-cart-counter .count {
  position: absolute;
  background: red;
  color: #ffffff;
  border-radius: 99px;
  width: 1.5em;
  height: 1.5em;
  display: flex;
  top: 0;
  left: 0;
  align-items: center;
  justify-content: center;
  font-size: 0.7rem;
  padding: 3px;
}

/* ==========================================================================
   #COLLAGE
   ========================================================================== */
.c-collage {
  display: none;
  position: absolute;
  top: -999%;
  left: -999%;
  width: 1200px;
  box-sizing: border-box;
}
.c-collage .o-image__watermark {
  width: 150px;
  height: 150px;
}
.c-collage[data-count="12"] .o-image__watermark, .c-collage[data-count="11"] .o-image__watermark, .c-collage[data-count="10"] .o-image__watermark, .c-collage[data-count="9"] .o-image__watermark, .c-collage[data-count="8"] .o-image__watermark, .c-collage[data-count="7"] .o-image__watermark, .c-collage[data-count="6"] .o-image__watermark, .c-collage[data-count="5"] .o-image__watermark, .c-collage[data-count="4"] .o-image__watermark {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.c-collage__canvas {
  display: flex;
  border: 3px solid #ffffff;
  box-sizing: border-box;
}
[data-count="12"] .c-collage__canvas, [data-count="11"] .c-collage__canvas, [data-count="10"] .c-collage__canvas, [data-count="9"] .c-collage__canvas, [data-count="8"] .c-collage__canvas, [data-count="7"] .c-collage__canvas, [data-count="6"] .c-collage__canvas, [data-count="5"] .c-collage__canvas, [data-count="4"] .c-collage__canvas {
  flex-wrap: wrap;
}

.c-collage__item {
  background: no-repeat center/cover;
  width: 50%;
  height: 100%;
  border: 3px solid #ffffff;
  box-sizing: border-box;
  flex: 1;
}
[data-count="12"] .c-collage__item, [data-count="11"] .c-collage__item, [data-count="10"] .c-collage__item, [data-count="9"] .c-collage__item, [data-count="8"] .c-collage__item, [data-count="7"] .c-collage__item, [data-count="6"] .c-collage__item, [data-count="5"] .c-collage__item, [data-count="4"] .c-collage__item {
  flex: auto;
  height: 50%;
}
[data-count="6"] .c-collage__item, [data-count="5"] .c-collage__item {
  width: 30%;
}
[data-count="7"] .c-collage__item, [data-count="8"] .c-collage__item {
  width: 25%;
}
[data-count="10"] .c-collage__item, [data-count="9"] .c-collage__item {
  width: 20%;
}
[data-count="12"] .c-collage__item, [data-count="11"] .c-collage__item {
  width: 15%;
}

/* ==========================================================================
   #DASHBOARD
   ========================================================================== */
.c-dashboard__footer {
  padding: 12px 0;
  bottom: 0;
  z-index: 99999;
  left: 0;
  width: 100%;
}
@media (max-width: 46.24em) {
  .c-dashboard__footer {
    position: fixed;
  }
}

.c-dashboard__panel-header {
  margin-bottom: 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.c-dashboard__panel-overview {
  margin-bottom: 48px;
}

.c-dashboard__panel-content {
  margin-bottom: 48px;
}

/* ==========================================================================
   #FOOTER
   ========================================================================== */
.c-footer {
  padding: 12px 0;
}
.show-app-bar .c-footer {
  display: none;
}

@media (max-width: 46.24em) {
  .c-footer__menu {
    margin-bottom: 12px;
    text-align: center;
  }
}
.c-footer__menu ul, .c-footer__menu li {
  margin: 0;
  display: inline-block;
  list-style: none;
}
.c-footer__menu li {
  margin-right: -4px;
}
.c-footer__menu li:before {
  color: #666666;
  content: "|";
  display: inline;
  margin: 0 6px;
}
.c-footer__menu li:first-child:before {
  content: none;
}
.c-footer__menu a {
  font-size: 0.7777777778rem;
  font-size: 14px;
  line-height: 1.7142857143;
  color: #666666;
}
.c-footer__menu a:hover {
  text-decoration: underline;
}

.c-footer__copyright {
  text-align: center;
  color: #666666;
  font-size: 0.7777777778rem;
  font-size: 14px;
  line-height: 1.7142857143;
}
@media (min-width: 46.25em) {
  .c-footer__copyright {
    text-align: right;
  }
}

/* ==========================================================================
   #FORM
   ========================================================================== */
.c-form {
  padding: 0 12px;
}
.c-form.loading {
  pointer-events: none !important;
  opacity: 0.2;
  position: relative;
  transition: all 0.25s ease 0s;
}
.c-form.loading:after {
  content: "\f110";
  font-family: "Font Awesome 6 Free";
  font-weight: bold;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 999;
  transform: translate(-50%, -50%);
  transform-origin: center;
  color: #333333;
  animation: rotate 2s linear infinite;
}
.c-form.loading * {
  pointer-events: none !important;
}
.c-form.c-form--box {
  border: 1px solid #cccccc;
  border-radius: 6px;
  padding: 12px 12px 24px;
}
@media print {
  .c-form.c-form--box {
    display: none !important;
  }
}

.c-form__header {
  margin-bottom: 24px;
}

.c-form__field {
  margin-bottom: 24px;
}
.c-form__field .description {
  color: #666666;
  font-weight: 300;
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 1.5;
}
.c-form__field .error {
  color: #aa0000;
}
.c-form__field:not(.invalid) .error {
  display: none;
}
.c-form__field.invalid input, .c-form__field.invalid select, .c-form__field.invalid textarea {
  box-shadow: 0 0 3px 1px #aa0000;
}

.c-form__field-mask {
  position: relative;
}
.c-form__field-mask input:not(.c-form__field-control) {
  padding-right: 48px;
}
.c-form__field-mask.date:before {
  content: "\f073";
  font-weight: 400;
  color: #1c52da;
  font-family: "Font Awesome 6 Free";
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-appearance: none !important;
     -moz-appearance: none !important;
          appearance: none !important;
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
}

.c-form__field-prefix:before {
  content: "$"; /* or '%' */
  position: absolute;
  left: 0.5em;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
}

.c-form__field-control {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 99999;
}

.c-form__footer {
  margin-bottom: 24px;
}

/* ==========================================================================
   #GROUP
   ========================================================================== */
/* ==========================================================================
   #TYPOGRAPHY
   ========================================================================== */
/* Font variants
   ========================================================================== */
.u-type-font-primary {
  font-family: "Afacad", sans-serif;
}

.u-type-font-secondary {
  font-family: "Aleo", serif;
}

/* Size variants
   ========================================================================== */
.u-type-micro {
  font-size: 0.7777777778rem !important;
  font-size: 14px !important;
  line-height: 1.7142857143 !important;
}

.u-type-small {
  font-size: 0.8888888889rem !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
}

.u-type-base {
  font-size: 1rem !important;
  font-size: 18px !important;
  line-height: 1.3333333333 !important;
}

.u-type-large {
  font-size: 1.2222222222rem !important;
  font-size: 22px !important;
  line-height: 1.3636363636 !important;
}

.u-type-larger {
  font-size: 1.3222222222rem !important;
  font-size: 23.8px !important;
  line-height: 1.2605042017 !important;
}
@media (min-width: 46.25em) {
  .u-type-larger {
    font-size: 1.5555555556rem !important;
    font-size: 28px !important;
    line-height: 1.2857142857 !important;
  }
}

.u-type-largest {
  font-size: 1.4583333333rem !important;
  font-size: 26.25px !important;
  line-height: 1.3714285714 !important;
}
@media (min-width: 46.25em) {
  .u-type-largest {
    font-size: 1.9444444444rem !important;
    font-size: 35px !important;
    line-height: 1.2 !important;
  }
}

.u-type-huge {
  font-size: 2rem !important;
  font-size: 36px !important;
  line-height: 1.1666666667 !important;
}
@media (min-width: 46.25em) {
  .u-type-huge {
    font-size: 2.6666666667rem !important;
    font-size: 48px !important;
    line-height: 1.125 !important;
  }
}

/* Weight variants
   ========================================================================== */
.u-type-thin {
  font-weight: 100 !important;
}

.u-type-light {
  font-weight: 300 !important;
}

.u-type-regular {
  font-weight: 400 !important;
}

.u-type-semi-bold {
  font-weight: 600 !important;
}

.u-type-bold {
  font-weight: 700 !important;
}

.u-type-black {
  font-weight: 900 !important;
}

/* Other variants
   ========================================================================== */
.u-type-placeholder {
  background: yellow;
  color: #333333;
  padding: 0 3px;
}

.u-type-field-placeholder, .c-product--placeholder .c-product__body, .c-product--placeholder .c-product__name, .c-product--placeholder .c-product__attr, .c-product--placeholder .c-product__price, .c-group--placeholder .c-group__name, .c-group--placeholder .c-group__body, .c-group--placeholder .c-group__price, .c-group--placeholder .c-group__attr {
  display: inline-block;
  background: #999999;
  color: #999999;
  border-radius: 24px;
}

.u-type-uppercase {
  text-transform: uppercase;
}

.u-type-nowrap {
  display: inline-block;
  white-space: nowrap;
}

.c-group {
  background: #ffffff;
  padding: 6px;
  border-radius: 6px;
  box-shadow: 0 0 0 1px #cccccc;
  margin: 0 0 12px;
  position: relative;
  transition: all 0.25s ease 0s;
}
.c-group:hover {
  box-shadow: 0 0 0 1px #cccccc, 0 3px 10px rgba(0, 0, 0, 0.35);
}
@media (min-width: 46.25em) {
  .c-group {
    padding: 12px;
  }
}
.c-group * {
  pointer-events: none;
}
.c-group.loading {
  pointer-events: none !important;
  opacity: 0.2;
  position: relative;
}
.c-group.loading:after {
  content: "\f110";
  font-family: "Font Awesome 6 Free";
  font-weight: bold;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 999;
  transform: translate(-50%, -50%);
  transform-origin: center;
  color: #333333;
  animation: rotate 2s linear infinite;
}
.c-group.loading * {
  pointer-events: none !important;
}

.c-group--placeholder {
  pointer-events: none !important;
  opacity: 0.2;
  position: relative;
}
.c-group--placeholder:after {
  content: "\f110";
  font-family: "Font Awesome 6 Free";
  font-weight: bold;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 999;
  transform: translate(-50%, -50%);
  transform-origin: center;
  color: #333333;
  animation: rotate 2s linear infinite;
}
.c-group--placeholder:after {
  font-size: 1.5555555556rem;
  font-size: 28px;
  line-height: 1.2857142857;
}
.c-group--placeholder * {
  pointer-events: none !important;
}
.c-group--placeholder:not(.visible) {
  display: none;
}

.c-group__details {
  position: relative;
  z-index: 1;
}
.c-group:not(.admin) .c-group__details {
  pointer-events: none;
}

.c-group__header {
  width: 100%;
  z-index: 2;
  margin-bottom: 12px;
}
@media (min-width: 46.25em) {
  .c-group__header {
    display: flex;
    justify-content: space-between;
    align-items: normal;
  }
}

.c-group__actions {
  pointer-events: all;
  margin-left: 6px;
  text-align: right;
}
.c-group__actions * {
  pointer-events: all;
}
.loading .c-group__actions {
  display: none;
}

.c-group__name {
  margin: 0;
}
.c-group:hover .c-group__name {
  color: #2e3192;
}
.c-group__lot {
  margin-bottom: 12px;
  color: #666666;
}

.c-group__views {
  color: #666666;
  white-space: nowrap;
}
@media (max-width: 46.24em) {
  .c-group__views {
    font-size: 0.7777777778rem;
    font-size: 14px;
    line-height: 1.7142857143;
  }
}

.c-group__attr {
  margin-bottom: 12px;
}

.c-group__body {
  width: 100%;
  position: relative;
  z-index: 1;
  margin-bottom: 36px;
}
@media (min-width: 46.25em) {
  .c-group__body {
    padding-right: 72px;
  }
}
.c-group__item {
  display: flex;
  margin-bottom: 12px;
}

.c-group__item-thumbnail {
  width: 50px;
  margin-right: 12px;
}

.c-group__item-details {
  flex: 1;
}

.c-group__footer {
  justify-content: space-between;
  display: flex;
  flex-direction: column;
}
@media (min-width: 46.25em) {
  .c-group__footer {
    display: flex;
    width: 100%;
    flex-direction: row;
    justify-content: flex-end;
    align-items: flex-end;
  }
}

.c-group__discount {
  margin-bottom: 12px;
  font-size: 0.7777777778rem;
  font-size: 14px;
  line-height: 1.2;
}

.c-group__value {
  color: #666666;
  text-decoration: line-through;
}

.c-group__saving {
  display: inline-block;
  border-radius: 100px;
  border: 1px solid #e81a4b;
  padding: 0 6px;
  margin-left: 12px;
  color: #e81a4b;
}

.c-group__totals {
  flex: 1;
}

.c-group__price {
  font-size: 1.5555555556rem;
  font-size: 28px;
  line-height: 1;
}
@media (min-width: 46.25em) {
  .c-group__price {
    font-size: 1.9444444444rem;
    font-size: 35px;
    line-height: 1;
  }
}
.c-group__attr {
  color: #666666;
  margin-bottom: 12px;
}
@media (max-width: 46.24em) {
  .c-group__attr {
    font-size: 0.8888888889rem;
    font-size: 16px;
    line-height: 1.2;
  }
}
.c-group__sold {
  text-align: right;
}

.c-group__total {
  text-align: right;
  font-size: 1.5555555556rem;
  font-size: 28px;
  line-height: 1;
}
@media (min-width: 46.25em) {
  .c-group__total {
    font-size: 1.9444444444rem;
    font-size: 35px;
    line-height: 1;
  }
}

.c-group__link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: all;
}

/* ==========================================================================
   #HEADER
   ========================================================================== */
.c-header {
  padding: 12px 0;
  background: #ffffff;
  box-shadow: 0 4px 0 #e81a4b;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  height: 70px;
  box-sizing: border-box;
}
@media (min-width: 46.25em) {
  .c-header {
    height: 90px;
  }
}
@media print {
  .c-header {
    position: static;
  }
}

.c-header__container {
  display: flex;
  align-items: center;
}

.c-header__logo {
  margin-right: 24px;
  max-width: 200px;
}
@media (min-width: 46.25em) {
  .c-header__logo {
    max-width: 300px;
  }
}

.c-header__navigation {
  flex: 1;
}
.c-header__navigation ul, .c-header__navigation li {
  margin: 0;
  list-style: none;
}
.c-header__navigation ul {
  display: flex;
  justify-content: flex-end;
}
.c-header__navigation li {
  margin-left: 6px;
}
@media print {
  .c-header__navigation {
    display: none !important;
  }
}

/* ==========================================================================
   #ICONS
   ========================================================================== */
.c-icon {
  width: 1.8em;
  height: 1.8em;
  display: inline-block;
  padding: 0.5em;
  border-radius: 6px;
  position: relative;
  vertical-align: bottom;
  transition: all 0.25s ease 0s;
}
.c-icon i {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-icon:hover {
  background: #d9f3fd;
}
.c-icon:active {
  color: #00aeef;
}

.c-icon--small {
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 1.5;
}

/* ==========================================================================
   #MAIN
   ========================================================================== */
/* ==========================================================================
   #NOTICES
   ========================================================================== */
.c-notice {
  position: relative;
  padding: 12px 12px 12px 24px;
  margin-bottom: 12px;
  border-left: 6px solid #00aeef;
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.15);
  border-radius: 0 6px 6px 0;
  color: #000000;
  background: hsl(238.2, 52.0833333333%, 102.6470588235%);
}
@media print {
  .c-notice {
    display: none !important;
  }
}
.c-notice > i {
  color: #00aeef;
}
.c-notice.success {
  border-left: 6px solid #00a9a3;
  background: rgb(240.4, 255, 254.4816568047);
}
.c-notice.success > i {
  color: #00a9a3;
}
.c-notice.error {
  border-left: 6px solid #aa0000;
  background: #ffaaaa;
}
.c-notice.error > i {
  color: #aa0000;
}
.c-notice.warning {
  border-left: 6px solid #ffaa00;
  background: rgb(255, 246.5, 229.5);
}
.c-notice.warning > i {
  color: #ffaa00;
}
.c-notice.icon {
  padding-left: 48px;
}
.c-notice.icon i {
  position: absolute;
  top: 0.75em;
  left: 12px;
}

/* ==========================================================================
   #MODAL
   ========================================================================== */
.c-modal {
  background: #ffffff;
  margin-top: 24px;
  padding: 12px 0 24px;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid #cccccc;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
}
.c-modal:not(.active) {
  display: none;
}
@media print {
  .c-modal {
    border: none;
  }
}

.c-modal__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 12px;
  padding: 0 12px;
}

.c-modal__actions .c-btn {
  margin-top: 0;
}

.c-modal__body.loading {
  pointer-events: none !important;
  opacity: 0.2;
  position: relative;
}
.c-modal__body.loading:after {
  content: "\f110";
  font-family: "Font Awesome 6 Free";
  font-weight: bold;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 999;
  transform: translate(-50%, -50%);
  transform-origin: center;
  color: #333333;
  animation: rotate 2s linear infinite;
}
.c-modal__body.loading * {
  pointer-events: none !important;
}

.c-modal__footer {
  padding: 0 12px;
}

/* ==========================================================================
   #OPTION LIST
   ========================================================================== */
.c-option-list {
  border: 1px solid #cccccc;
  border-radius: 6px;
  overflow-y: auto;
  height: 300px;
}
.c-option-list legend {
  padding: 12px;
}
.invalid .c-option-list {
  box-shadow: 0 0 3px 1px #aa0000;
}
.invalid .c-option-list input {
  box-shadow: none;
}
.c-option-list.loading {
  pointer-events: none !important;
  opacity: 0.2;
  transition: all 0.25s ease 0s;
  position: relative;
}
.c-option-list.loading:after {
  content: "\f110";
  font-family: "Font Awesome 6 Free";
  font-weight: bold;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 999;
  transform: translate(-50%, -50%);
  transform-origin: center;
  color: #333333;
  animation: rotate 2s linear infinite;
}

.c-option-list__item {
  padding: 12px;
  display: block;
  margin: 0;
}
.c-option-list__item:hover {
  background: #f2f2f2;
}
.c-option-list__item:has(:checked) {
  background: #d9f3fd;
}

/* ==========================================================================
   #ORDER
   ========================================================================== */
.c-order {
  background: #ffffff;
  padding: 6px;
  border-radius: 6px;
  box-shadow: 0 0 0 1px #cccccc;
  margin: 0 0 12px;
  position: relative;
  transition: all 0.25s ease 0s;
}
.c-order:hover {
  box-shadow: 0 0 0 1px #cccccc, 0 3px 10px rgba(0, 0, 0, 0.35);
}
@media (min-width: 46.25em) {
  .c-order {
    padding: 12px;
  }
}
.c-order * {
  pointer-events: none;
}

.c-order__header {
  width: 100%;
  z-index: 2;
}
@media (min-width: 46.25em) {
  .c-order__header {
    display: flex;
    justify-content: space-between;
    align-items: normal;
  }
}

.c-order__actions {
  pointer-events: all;
}
.c-order__actions * {
  pointer-events: all;
}
.loading .c-order__actions {
  display: none;
}

.c-order__number {
  margin: 0;
}
.c-order:hover .c-order__number {
  color: #2e3192;
}

.c-order__seller {
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 1.5;
  position: relative;
  z-index: 999;
}
.c-order__seller * {
  pointer-events: all;
}

.c-order__date {
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 1.5;
}

.c-order__status {
  margin-bottom: 6px;
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 1.5;
}
@media (min-width: 46.25em) {
  .c-order__status {
    text-align: right;
  }
}

.c-order__tracking {
  position: relative;
  z-index: 999;
  pointer-events: all;
  margin-bottom: 6px;
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 1.5;
}
@media (min-width: 46.25em) {
  .c-order__tracking {
    text-align: right;
  }
}

.c-order__body {
  position: relative;
  z-index: 1;
  margin: 12px 0 0;
}
@media (min-width: 46.25em) {
  .c-order__body {
    padding-right: 72px;
  }
}

.c-order__total {
  text-align: right;
  font-size: 1.5555555556rem;
  font-size: 28px;
  line-height: 1;
}
@media (min-width: 46.25em) {
  .c-order__total {
    font-size: 1.9444444444rem;
    font-size: 35px;
    line-height: 1;
  }
}

.c-order__link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: all;
}

/* ==========================================================================
   #ORDER DETAILS
   ========================================================================== */
.c-order-details__header {
  margin-bottom: 24px;
}
@media (min-width: 46.25em) {
  .c-order-details__header {
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: flex-start;
    flex-direction: row-reverse;
  }
}

.c-order-details__body {
  color: #666666;
  margin-bottom: 48px;
}

.c-order-details__shipping {
  margin-bottom: 48px;
}

.c-order-details__commerce {
  padding-bottom: 24px;
  margin-bottom: 24px;
  border-bottom: 1px solid #cccccc;
}

.c-order-details__order-totals * {
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 1.5;
}

.c-order-details__footer p {
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 1.4;
}

@media (min-width: 46.25em) {
  .c-order-details__actions {
    display: flex;
  }
  .c-order-details__actions a {
    flex: 1;
  }
}
.c-order-details__actions .added_to_cart {
  display: none;
}

.c-order-details__item {
  display: flex;
  align-items: center;
  width: 100%;
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 1.5;
}
.c-order-details__item .value {
  flex: 1;
  text-align: right;
}
@media (min-width: 46.25em) {
  .c-order-details__item.name .value {
    text-align: left;
  }
}

.c-order-details__item-thumbnail {
  vertical-align: middle;
  display: inline-block;
  width: 60px;
  margin-right: 12px;
}
@media (max-width: 46.24em) {
  .c-order-details__item-thumbnail {
    display: none;
  }
}
@media print {
  .c-order-details__item-thumbnail {
    display: none !important;
  }
}

.c-order-details__name {
  margin-bottom: 24px;
}
@media (min-width: 46.25em) {
  .c-order-details__name {
    margin-right: 12px;
  }
}

.c-order-details__attr i {
  color: #999999;
}
.c-order-details__attr#product-details-views {
  color: #666666;
}
.c-order-details__attr#product-details-listed {
  color: #666666;
}
.c-order-details__attr span {
  color: #000000;
}

.c-order-details__description p {
  color: #333333;
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 1.5;
}

@media (min-width: 46.25em) {
  .c-order-details__price {
    text-align: right;
  }
}

.c-order-details__gallery {
  margin-bottom: 12px;
  position: relative;
}
.c-order-details__gallery ul, .c-order-details__gallery li {
  list-style: none;
}
.c-order-details__gallery ul {
  -ms-overflow-style: none; /* Internet Explorer 10+ */
  scrollbar-width: none; /* Firefox */
  padding: 6px;
  margin: 0;
  width: 100%;
  text-align: center;
  white-space: nowrap;
  overflow-x: auto;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 9;
}
.c-order-details__gallery ul::-webkit-scrollbar {
  display: none;
}
@media (min-width: 46.25em) {
  .c-order-details__gallery ul {
    padding-bottom: 12px;
  }
}
.c-order-details__gallery li {
  display: inline-block;
  margin-bottom: 0;
}

.c-order-details__image {
  border-bottom: 1px solid #cccccc;
  border-top: 1px solid #cccccc;
}

.c-order-details__thumbnail {
  width: 90px;
  border-radius: 4px;
  border: 1px solid #cccccc;
  margin-right: 6px;
  transition: all 0.25s ease 0s;
}
@media (max-width: 46.24em) {
  .c-order-details__thumbnail {
    width: 50px;
    margin-right: 3px;
  }
}
.c-order-details__thumbnail:hover {
  box-shadow: 0 0 0 3px #2e3192;
}
.c-order-details__thumbnail:last-child {
  margin-right: 0;
}
.c-order-details__thumbnail.current {
  box-shadow: 0 0 0 3px #2e3192, 0 0 0 5px #ffffff;
}
@media print {
  .c-order-details__thumbnail {
    display: none !important;
  }
}

/* ==========================================================================
   #PAGER
   ========================================================================== */
.c-pager {
  text-align: center;
  padding: 12px 0 48px;
}
.c-pager .page-numbers {
  display: inline-block;
  vertical-align: middle;
  min-width: 1.5em;
  border-color: #e6e6e6;
}
@media (max-width: 46.24em) {
  .c-pager .page-numbers {
    padding: 6px 12px;
    font-size: 0.8888888889rem;
    font-size: 16px;
    line-height: 1.5;
  }
}
.c-pager .page-numbers:hover {
  box-shadow: none;
}
.c-pager .prev,
.c-pager .next {
  border-color: #e6e6e6;
  text-transform: uppercase;
}
.c-pager .prev:hover,
.c-pager .next:hover {
  box-shadow: none;
}
@media (max-width: 46.24em) {
  .c-pager .prev {
    float: left;
  }
}
@media (max-width: 46.24em) {
  .c-pager .next {
    float: right;
  }
}
.c-pager .current {
  pointer-events: none;
  background: var(--button-color-primary);
  border-color: var(--button-color-primary);
  color: white;
}
.c-pager .dots {
  padding: 0;
  border: none;
  pointer-events: none;
  color: #999999;
}

/* ==========================================================================
   #PRE-FOOTER
   ========================================================================== */
.c-pre-footer {
  padding: 24px 0;
}

/* ==========================================================================
   #MAIN
   ========================================================================== */
.c-price {
  color: #00a9a3;
  flex: 1;
  font-family: "Aleo", serif;
  font-size: 2.6666666667rem;
  font-size: 48px;
  line-height: 1;
}
.c-price sup {
  font-size: 0.55em;
  top: -0.7em;
  font-family: "Afacad", sans-serif;
}
.c-price .currency {
  color: #333333;
  margin-right: 3px;
}

/* ==========================================================================
   #PRODUCT
   ========================================================================== */
.c-product {
  background: #ffffff;
  padding: 6px;
  border-radius: 6px;
  box-shadow: 0 0 0 1px #cccccc;
  margin: 0 0 12px;
  display: flex;
  position: relative;
  transition: all 0.25s ease 0s;
}
.c-product:hover {
  box-shadow: 0 0 0 1px #cccccc, 0 3px 10px rgba(0, 0, 0, 0.35);
}
@media (max-width: 19.99em) {
  .c-product {
    flex-wrap: wrap;
  }
}
@media (min-width: 46.25em) {
  .c-product {
    padding: 12px;
  }
}
.c-product.loading {
  pointer-events: none !important;
  opacity: 0.2;
  position: relative;
}
.c-product.loading:after {
  content: "\f110";
  font-family: "Font Awesome 6 Free";
  font-weight: bold;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 999;
  transform: translate(-50%, -50%);
  transform-origin: center;
  color: #333333;
  animation: rotate 2s linear infinite;
}
.c-product.loading * {
  pointer-events: none !important;
}
.c-product.disabled {
  pointer-events: none !important;
}
.c-product.disabled * {
  pointer-events: none !important;
}
.c-product * {
  pointer-events: none;
}

.c-product--placeholder {
  pointer-events: none !important;
  opacity: 0.2;
  position: relative;
}
.c-product--placeholder:after {
  content: "\f110";
  font-family: "Font Awesome 6 Free";
  font-weight: bold;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 999;
  transform: translate(-50%, -50%);
  transform-origin: center;
  color: #333333;
  animation: rotate 2s linear infinite;
}
.c-product--placeholder:after {
  font-size: 1.5555555556rem;
  font-size: 28px;
  line-height: 1.2857142857;
}
.c-product--placeholder * {
  pointer-events: none !important;
}
.c-product--placeholder:not(.visible) {
  display: none;
}

.c-product__thumbnail {
  border-radius: 4px;
}
@media (min-width: 20em) {
  .c-product__thumbnail {
    margin-right: 12px;
    min-width: 125px;
    width: 25%;
  }
}
.c-product__thumbnail .o-image {
  border: 1px solid #cccccc;
}

.c-product__details {
  flex: 1;
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.c-product:not(.admin) .c-product__details {
  pointer-events: none;
}

.c-product__header {
  width: 100%;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  align-items: normal;
}

.c-product__actions {
  pointer-events: all;
  margin-left: 6px;
  text-align: right;
}
.c-product__actions * {
  pointer-events: all;
}
.loading .c-product__actions {
  display: none;
}

.c-product__body {
  position: relative;
  z-index: 1;
}
.c-product__body:after {
  content: "";
}
@media (min-width: 46.25em) {
  .c-product__body {
    padding-right: 72px;
  }
}
.c-product__footer {
  flex: 1;
  justify-content: space-between;
  display: flex;
  flex-direction: column;
}
@media (min-width: 46.25em) {
  .c-product__footer {
    display: flex;
    width: 100%;
    flex-direction: row;
    justify-content: flex-end;
    align-items: flex-end;
  }
}

.c-product__views {
  color: #666666;
  white-space: nowrap;
}
@media (max-width: 46.24em) {
  .c-product__views {
    font-size: 0.7777777778rem;
    font-size: 14px;
    line-height: 1.7142857143;
  }
}

.c-product__name {
  margin-bottom: 0;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
  max-height: 3em; /* 2 lines * line-height */
  font-size: 1rem;
  font-size: 18px;
  line-height: 1.2;
  transition: all 0.25s ease 0s;
}
@media (min-width: 61.25em) {
  .c-product__name {
    font-size: 1.2222222222rem;
    font-size: 22px;
    line-height: 1.3636363636;
  }
}
.c-product:hover .c-product__name {
  color: #2e3192;
}
.c-product__attr {
  color: #666666;
  margin-bottom: 12px;
}
@media (max-width: 46.24em) {
  .c-product__attr {
    font-size: 0.8888888889rem;
    font-size: 16px;
    line-height: 1.2;
  }
}
@media (max-width: 46.24em) {
  .c-product__description {
    display: none;
  }
}
.c-product__description p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  text-overflow: ellipsis;
  max-height: 4.5em; /* 3 lines * line-height */
  font-weight: 300;
  font-family: "Aleo", serif;
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 1.2;
}

.c-product__price {
  font-size: 1.5555555556rem;
  font-size: 28px;
  line-height: 1;
}
@media (min-width: 46.25em) {
  .c-product__price {
    font-size: 1.9444444444rem;
    font-size: 35px;
    line-height: 1;
  }
}
.c-product__add-to-cart {
  pointer-events: all;
  flex: 1;
  display: flex;
  justify-content: flex-start;
  flex-direction: row-reverse;
  align-items: center;
}
.c-product__add-to-cart * {
  pointer-events: all;
}
.c-product__add-to-cart .added_to_cart {
  display: none;
}

.c-product__sold {
  text-align: right;
}

.c-product__link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: all;
}

/* ==========================================================================
   #PRODUCT DETAILS
   ========================================================================== */
.c-product-details__header {
  margin-bottom: 24px;
}
@media (min-width: 46.25em) {
  .c-product-details__header {
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: flex-start;
  }
}

.c-product-details__body {
  color: #666666;
  margin-bottom: 48px;
}

.c-product-details__commerce {
  padding-bottom: 24px;
  margin-bottom: 24px;
  border-bottom: 1px solid #cccccc;
}

.c-product-details__footer p {
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 1.4;
}

@media (min-width: 46.25em) {
  .c-product-details__actions {
    display: flex;
  }
  .c-product-details__actions a {
    flex: 1;
  }
}
.c-product-details__actions .added_to_cart {
  display: none;
}

.c-product-details__name {
  margin-bottom: 24px;
}
@media (min-width: 46.25em) {
  .c-product-details__name {
    margin-right: 12px;
  }
}

.c-product-details__attr {
  margin-bottom: 6px;
}
.c-product-details__attr#product-details-views, .c-product-details__attr#product-details-listed {
  color: #666666;
}
.c-product-details__attr span {
  color: #000000;
}

.c-product-details__description p {
  color: #333333;
  font-size: 0.8888888889rem;
  font-size: 16px;
  line-height: 1.5;
}

@media (min-width: 46.25em) {
  .c-product-details__price {
    text-align: right;
  }
}

.c-product-details__gallery-zoom {
  position: absolute;
  top: 6px;
  right: 6px;
  width: 2em;
  height: 2em;
  background: rgba(0, 0, 0, 0.35);
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 999;
  pointer-events: all;
  cursor: pointer;
  transition: all 0.25s ease 0s;
}
@media (min-width: 46.25em) {
  .c-product-details__gallery-zoom {
    width: 2.5em;
    height: 2.5em;
  }
}
.c-product-details__gallery-zoom:hover {
  background: rgba(0, 0, 0, 0.5);
}

.c-product-details__gallery {
  margin-bottom: 12px;
  position: relative;
}
.c-product-details__gallery ul, .c-product-details__gallery li {
  list-style: none;
}
.c-product-details__gallery ul {
  -ms-overflow-style: none; /* Internet Explorer 10+ */
  scrollbar-width: none; /* Firefox */
  padding: 6px;
  margin: 0;
  width: 100%;
  text-align: center;
  white-space: nowrap;
  overflow-x: auto;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 9;
}
.c-product-details__gallery ul::-webkit-scrollbar {
  display: none;
}
@media (min-width: 46.25em) {
  .c-product-details__gallery ul {
    padding-bottom: 12px;
  }
}
.c-product-details__gallery li {
  display: inline-block;
  margin-bottom: 0;
}

.c-product-details__image {
  background: black no-repeat center center/cover;
  border-bottom: 1px solid #cccccc;
  border-top: 1px solid #cccccc;
}

.c-product-details__image-container {
  backdrop-filter: blur(8px);
}

.c-product-details__thumbnail {
  width: 90px;
  border-radius: 4px;
  border: 1px solid #cccccc;
  margin-right: 6px;
  transition: all 0.25s ease 0s;
}
@media (max-width: 46.24em) {
  .c-product-details__thumbnail {
    width: 50px;
    margin-right: 3px;
  }
}
.c-product-details__thumbnail:hover {
  box-shadow: 0 0 0 3px #2e3192;
}
.c-product-details__thumbnail:last-child {
  margin-right: 0;
}
.c-product-details__thumbnail.current {
  box-shadow: 0 0 0 3px #2e3192, 0 0 0 5px #ffffff;
}

/* ==========================================================================
   #PRODUCT LIST
   ========================================================================== */
.c-product-list__item {
  display: flex;
  margin-bottom: 12px;
}

.c-product-list__item-thumbnail {
  width: 50px;
  margin-right: 12px;
}

.c-product-list__item-details {
  flex: 1;
}

/* ==========================================================================
   #PROFILE
   ========================================================================== */
.c-profile {
  margin-top: 24px;
}

.c-profile__header {
  margin-bottom: 24px;
  position: relative;
}

.c-profile__username {
  font-weight: 600;
  margin-bottom: 0;
}

.c-profile__location {
  color: #666666;
  margin-bottom: 12px;
}

.c-profile__trusted-seller {
  margin-bottom: 12px;
}

.c-profile__attr {
  margin-bottom: 6px;
}
.c-profile__attr span {
  color: #000000;
}

@media (max-width: 26.24em) {
  .c-profile__share .c-btn {
    width: 100%;
  }
}

.c-profile__display-options {
  margin-bottom: 24px;
}

.c-profile__shop-section {
  margin-bottom: 48px;
}

/* ==========================================================================
   #RECENTLY VIEWED
   ========================================================================== */
/* ==========================================================================
   #BORDERS
   ========================================================================== */
.u-border, .c-recently-viewed__sold {
  background: #ffffff;
  padding: 6px;
  border: 1px solid #cccccc;
  border-radius: 6px;
}

.u-border--shadow {
  border: 1px solid #e6e6e6;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
}

.c-recently-viewed ul, .c-recently-viewed li {
  margin: 0;
  list-style: none;
}
.c-recently-viewed ul {
  -ms-overflow-style: none; /* Internet Explorer 10+ */
  scrollbar-width: none; /* Firefox */
  white-space: nowrap;
  margin: 0;
  padding: 0;
  display: flex;
  overflow-x: auto;
}
.c-recently-viewed ul::-webkit-scrollbar {
  display: none;
}
@media (max-width: 46.24em) {
  .c-recently-viewed ul {
    padding: 6px 0 6px 12px;
    margin: 0 -12px;
  }
}
.c-recently-viewed li {
  display: inline-block;
  width: 250px;
  flex: 0 0 250px;
  white-space: normal;
  vertical-align: top;
  position: relative;
}
.c-recently-viewed a {
  display: block;
  background: #ffffff;
  padding: 6px;
  border-radius: 6px;
  box-shadow: 0 0 0 1px #cccccc;
  margin: 0 12px 12px 0;
  height: 100%;
  box-sizing: border-box;
}
.c-recently-viewed a .current {
  display: block;
  color: #666666;
}

.c-recently-viewed__thumbnail {
  width: 100%;
  display: block;
  position: relative;
  margin-bottom: 6px;
  overflow: hidden;
  border-radius: 4px;
}
.c-recently-viewed__thumbnail:before {
  content: "";
  display: block;
  height: 0;
  padding-bottom: 75%;
}

.c-recently-viewed__title {
  color: #333333;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipse;
}

.c-recently-viewed__sold {
  font-size: 0.7777777778rem;
  font-size: 14px;
  line-height: 1;
  padding: 0 6px;
  position: absolute;
  bottom: 6px;
  left: 6px;
  z-index: 1;
}

/* ==========================================================================
   #SHOP
   ========================================================================== */
.c-shop__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 12px;
}

.c-shop__heading {
  color: #000000;
  flex: 1;
}

/* ==========================================================================
   #SHOW MORE
   ========================================================================== */
.c-show-more:not(.active) {
  display: none;
}

/* ==========================================================================
   #SLIDER
   ========================================================================== */
.c-slider .slide {
  position: relative;
  margin: 0;
  padding: 0 0 24px;
}
.c-slider .slide:before {
  content: none;
}

.flexslider {
  border: none;
  overflow: hidden;
}

@media (max-width: 46.24em) {
  .c-slider--carousel .flex-direction-nav {
    display: none;
  }
}
.flex-direction-nav li {
  padding: 0;
}
.flex-direction-nav li:before {
  content: none;
}
.flex-direction-nav a:before {
  font-size: 22px;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  color: #ffffff;
  background: #00a9a3;
  border-radius: 96px;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.flex-direction-nav a.flex-prev:before {
  content: "\f053";
  text-shadow: none;
}
.flex-direction-nav a.flex-next:before {
  content: "\f054";
  text-shadow: none;
}

.flex-control-nav {
  position: static;
}
.flex-control-nav li {
  padding: 0;
}
.flex-control-nav li:before {
  content: none;
}
.flex-control-nav li a {
  background: #1c52da;
  box-shadow: none;
  width: 6px;
  height: 6px;
  transition: all 0.25s ease 0s;
}
.flex-control-nav li a:hover {
  background: #2e3192;
}
.flex-control-nav li a.flex-active {
  background: #00a9a3;
}

/* ==========================================================================
   #TAB GROUP
   ========================================================================== */
.c-tab-group__tabs {
  list-style: none;
  display: flex;
  margin: 24px 0;
  padding: 0;
  width: 100%;
  border-bottom: 1px solid #cccccc;
}
.c-tab-group__tabs.alternate {
  padding: 3px;
  border-radius: 6px;
  box-shadow: inset 0 0 0 1px #cccccc;
  border: none;
  margin: 0;
}

.c-tab-group__tab {
  list-style: none;
  margin: 0;
  width: 100%;
  color: #2e3192;
  transition: box-shadow 0.25s ease 0s;
}
.c-tab-group__tab a {
  padding: 12px;
  display: block;
  text-align: center;
  color: inherit;
}
.c-tab-group__tab:hover {
  position: relative;
  z-index: 9;
  color: #2e3192;
}
.c-tab-group__tab.active {
  color: #2e3192;
  pointer-events: none;
  box-shadow: inset 0 -4px 0 #1c52da;
}
.alternate .c-tab-group__tab {
  box-shadow: none !important;
}
.alternate .c-tab-group__tab a {
  border-radius: 4px;
  box-shadow: none !important;
  margin: 0;
}
.alternate .c-tab-group__tab.active a {
  box-shadow: none !important;
  pointer-events: none;
}

.c-tab-group__panel:not(.active) {
  display: none;
}

/* ==========================================================================
   #UPLOAD PREVIEW
   ========================================================================== */
.c-upload-preview {
  margin-bottom: 24px;
}

.c-upload-preview__thumbnail {
  display: inline-block;
  width: 80px;
  border: 1px solid #cccccc;
  margin-right: 3px;
  border-radius: 3px;
}

.c-upload-preview__remove {
  background: #ffffff;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  position: absolute;
  bottom: 6px;
  right: 6px;
  z-index: 9;
  box-shadow: -1px 2px 5px rgba(0, 0, 0, 0.5);
}
@media (min-width: 61.25em) {
  .c-upload-preview__remove {
    display: none;
  }
}
.c-upload-preview__thumbnail:hover .c-upload-preview__remove {
  display: flex;
}

/* ==========================================================================
   #ALIGN
   ========================================================================== */
.u-align-right {
  text-align: right !important;
}

.u-align-left {
  text-align: left !important;
}

.u-align-center {
  text-align: center !important;
}

@media (min-width: 20em) {
  .u-align-left--mobile {
    text-align: left !important;
  }
}

@media (min-width: 20em) {
  .u-align-right--mobile {
    text-align: right !important;
  }
}

@media (min-width: 20em) {
  .u-align-center--mobile {
    text-align: center !important;
  }
}

@media (min-width: 26.25em) {
  .u-align-left--phablet {
    text-align: left !important;
  }
}

@media (min-width: 26.25em) {
  .u-align-right--phablet {
    text-align: right !important;
  }
}

@media (min-width: 26.25em) {
  .u-align-center--phablet {
    text-align: center !important;
  }
}

@media (min-width: 46.25em) {
  .u-align-left--tablet {
    text-align: left !important;
  }
}

@media (min-width: 46.25em) {
  .u-align-right--tablet {
    text-align: right !important;
  }
}

@media (min-width: 46.25em) {
  .u-align-center--tablet {
    text-align: center !important;
  }
}

@media (min-width: 61.25em) {
  .u-align-left--desktop {
    text-align: left !important;
  }
}

@media (min-width: 61.25em) {
  .u-align-right--desktop {
    text-align: right !important;
  }
}

@media (min-width: 61.25em) {
  .u-align-center--desktop {
    text-align: center !important;
  }
}

@media (min-width: 81.25em) {
  .u-align-left--wide {
    text-align: left !important;
  }
}

@media (min-width: 81.25em) {
  .u-align-right--wide {
    text-align: right !important;
  }
}

@media (min-width: 81.25em) {
  .u-align-center--wide {
    text-align: center !important;
  }
}

/* ==========================================================================
   #ASPECT RATIO
   ========================================================================== */
.u-1\:1:before {
  padding-bottom: 100%;
}

@media (min-width: 20em) {
  .u-1\:1--mobile:before {
    padding-bottom: 100% !important;
  }
}

@media (min-width: 26.25em) {
  .u-1\:1--phablet:before {
    padding-bottom: 100% !important;
  }
}

@media (min-width: 46.25em) {
  .u-1\:1--tablet:before {
    padding-bottom: 100% !important;
  }
}

@media (min-width: 61.25em) {
  .u-1\:1--desktop:before {
    padding-bottom: 100% !important;
  }
}

@media (min-width: 81.25em) {
  .u-1\:1--wide:before {
    padding-bottom: 100% !important;
  }
}

.u-2\:1:before {
  padding-bottom: 50%;
}

@media (min-width: 20em) {
  .u-2\:1--mobile:before {
    padding-bottom: 50% !important;
  }
}

@media (min-width: 26.25em) {
  .u-2\:1--phablet:before {
    padding-bottom: 50% !important;
  }
}

@media (min-width: 46.25em) {
  .u-2\:1--tablet:before {
    padding-bottom: 50% !important;
  }
}

@media (min-width: 61.25em) {
  .u-2\:1--desktop:before {
    padding-bottom: 50% !important;
  }
}

@media (min-width: 81.25em) {
  .u-2\:1--wide:before {
    padding-bottom: 50% !important;
  }
}

.u-4\:3:before {
  padding-bottom: 75%;
}

@media (min-width: 20em) {
  .u-4\:3--mobile:before {
    padding-bottom: 75% !important;
  }
}

@media (min-width: 26.25em) {
  .u-4\:3--phablet:before {
    padding-bottom: 75% !important;
  }
}

@media (min-width: 46.25em) {
  .u-4\:3--tablet:before {
    padding-bottom: 75% !important;
  }
}

@media (min-width: 61.25em) {
  .u-4\:3--desktop:before {
    padding-bottom: 75% !important;
  }
}

@media (min-width: 81.25em) {
  .u-4\:3--wide:before {
    padding-bottom: 75% !important;
  }
}

.u-16\:9:before {
  padding-bottom: 56.25%;
}

@media (min-width: 20em) {
  .u-16\:9--mobile:before {
    padding-bottom: 56.25% !important;
  }
}

@media (min-width: 26.25em) {
  .u-16\:9--phablet:before {
    padding-bottom: 56.25% !important;
  }
}

@media (min-width: 46.25em) {
  .u-16\:9--tablet:before {
    padding-bottom: 56.25% !important;
  }
}

@media (min-width: 61.25em) {
  .u-16\:9--desktop:before {
    padding-bottom: 56.25% !important;
  }
}

@media (min-width: 81.25em) {
  .u-16\:9--wide:before {
    padding-bottom: 56.25% !important;
  }
}

.u-image-ratio-share:before {
  padding-bottom: 52.5%;
}

@media (min-width: 20em) {
  .u-image-ratio-share--mobile:before {
    padding-bottom: 52.5% !important;
  }
}

@media (min-width: 26.25em) {
  .u-image-ratio-share--phablet:before {
    padding-bottom: 52.5% !important;
  }
}

@media (min-width: 46.25em) {
  .u-image-ratio-share--tablet:before {
    padding-bottom: 52.5% !important;
  }
}

@media (min-width: 61.25em) {
  .u-image-ratio-share--desktop:before {
    padding-bottom: 52.5% !important;
  }
}

@media (min-width: 81.25em) {
  .u-image-ratio-share--wide:before {
    padding-bottom: 52.5% !important;
  }
}

.u-image-ratio-profile:before {
  padding-bottom: 140%;
}

@media (min-width: 20em) {
  .u-image-ratio-profile--mobile:before {
    padding-bottom: 140% !important;
  }
}

@media (min-width: 26.25em) {
  .u-image-ratio-profile--phablet:before {
    padding-bottom: 140% !important;
  }
}

@media (min-width: 46.25em) {
  .u-image-ratio-profile--tablet:before {
    padding-bottom: 140% !important;
  }
}

@media (min-width: 61.25em) {
  .u-image-ratio-profile--desktop:before {
    padding-bottom: 140% !important;
  }
}

@media (min-width: 81.25em) {
  .u-image-ratio-profile--wide:before {
    padding-bottom: 140% !important;
  }
}

/* ==========================================================================
   #COLOR
   ========================================================================== */
.u-color-primary {
  color: #1c52da;
}
.u-color-primary--bg {
  background-color: #1c52da;
}
.u-color-primary--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #1c52da inset;
  color: #1c52da;
}
.u-color-primary--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-secondary {
  color: #00a9a3;
}
.u-color-secondary--bg {
  background-color: #00a9a3;
}
.u-color-secondary--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #00a9a3 inset;
  color: #00a9a3;
}
.u-color-secondary--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tbn-teal {
  color: #00a9a3;
}
.u-color-tbn-teal--bg {
  background-color: #00a9a3;
}
.u-color-tbn-teal--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #00a9a3 inset;
  color: #00a9a3;
}
.u-color-tbn-teal--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tbn-red {
  color: #e81a4b;
}
.u-color-tbn-red--bg {
  background-color: #e81a4b;
}
.u-color-tbn-red--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #e81a4b inset;
  color: #e81a4b;
}
.u-color-tbn-red--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tbn-yellow {
  color: #fde92b;
}
.u-color-tbn-yellow--bg {
  background-color: #fde92b;
}
.u-color-tbn-yellow--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #fde92b inset;
  color: #fde92b;
}
.u-color-tbn-yellow--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tbn-light-blue {
  color: #00aeef;
}
.u-color-tbn-light-blue--bg {
  background-color: #00aeef;
}
.u-color-tbn-light-blue--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #00aeef inset;
  color: #00aeef;
}
.u-color-tbn-light-blue--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tbn-dark-blue {
  color: #2e3192;
}
.u-color-tbn-dark-blue--bg {
  background-color: #2e3192;
}
.u-color-tbn-dark-blue--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #2e3192 inset;
  color: #2e3192;
}
.u-color-tbn-dark-blue--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
  box-shadow: 0 0 0 2px #1c52da inset;
  color: #1c52da;
}
.u-color-tbn-dark-blue--bg.c-btn--solid:hover {
  background: #1c52da;
}
.u-color-tbn-soft-blue {
  color: #d9f3fd;
}
.u-color-tbn-soft-blue--bg {
  background-color: #d9f3fd;
}
.u-color-tbn-soft-blue--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #d9f3fd inset;
  color: #d9f3fd;
}
.u-color-tbn-soft-blue--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tbn-action-blue {
  color: #1c52da;
}
.u-color-tbn-action-blue--bg {
  background-color: #1c52da;
}
.u-color-tbn-action-blue--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #1c52da inset;
  color: #1c52da;
}
.u-color-tbn-action-blue--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tbn-purple {
  color: #a967aa;
}
.u-color-tbn-purple--bg {
  background-color: #a967aa;
}
.u-color-tbn-purple--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #a967aa inset;
  color: #a967aa;
}
.u-color-tbn-purple--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tbn-green {
  color: #91be4a;
}
.u-color-tbn-green--bg {
  background-color: #91be4a;
}
.u-color-tbn-green--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #91be4a inset;
  color: #91be4a;
}
.u-color-tbn-green--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tbn-orange {
  color: #ff9500;
}
.u-color-tbn-orange--bg {
  background-color: #ff9500;
}
.u-color-tbn-orange--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #ff9500 inset;
  color: #ff9500;
}
.u-color-tbn-orange--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-success {
  color: #00a000;
}
.u-color-success--bg {
  background-color: #00a000;
}
.u-color-success--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #00a000 inset;
  color: #00a000;
}
.u-color-success--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-warning {
  color: #ffaa00;
}
.u-color-warning--bg {
  background-color: #ffaa00;
}
.u-color-warning--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #ffaa00 inset;
  color: #ffaa00;
}
.u-color-warning--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-error {
  color: #aa0000;
}
.u-color-error--bg {
  background-color: #aa0000;
}
.u-color-error--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #aa0000 inset;
  color: #aa0000;
}
.u-color-error--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-white {
  color: #ffffff;
}
.u-color-tint-white--bg {
  background-color: #ffffff;
}
.u-color-tint-white--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #ffffff inset;
  color: #ffffff;
}
.u-color-tint-white--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-5 {
  color: #f2f2f2;
}
.u-color-tint-5--bg {
  background-color: #f2f2f2;
}
.u-color-tint-5--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #f2f2f2 inset;
  color: #f2f2f2;
}
.u-color-tint-5--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-10 {
  color: #e6e6e6;
}
.u-color-tint-10--bg {
  background-color: #e6e6e6;
}
.u-color-tint-10--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #e6e6e6 inset;
  color: #e6e6e6;
}
.u-color-tint-10--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-15 {
  color: #d9d9d9;
}
.u-color-tint-15--bg {
  background-color: #d9d9d9;
}
.u-color-tint-15--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #d9d9d9 inset;
  color: #d9d9d9;
}
.u-color-tint-15--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-20 {
  color: #cccccc;
}
.u-color-tint-20--bg {
  background-color: #cccccc;
}
.u-color-tint-20--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #cccccc inset;
  color: #cccccc;
}
.u-color-tint-20--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-25 {
  color: #bfbfbf;
}
.u-color-tint-25--bg {
  background-color: #bfbfbf;
}
.u-color-tint-25--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #bfbfbf inset;
  color: #bfbfbf;
}
.u-color-tint-25--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-30 {
  color: #b3b3b3;
}
.u-color-tint-30--bg {
  background-color: #b3b3b3;
}
.u-color-tint-30--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #b3b3b3 inset;
  color: #b3b3b3;
}
.u-color-tint-30--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-35 {
  color: #a6a6a6;
}
.u-color-tint-35--bg {
  background-color: #a6a6a6;
}
.u-color-tint-35--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #a6a6a6 inset;
  color: #a6a6a6;
}
.u-color-tint-35--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-40 {
  color: #999999;
}
.u-color-tint-40--bg {
  background-color: #999999;
}
.u-color-tint-40--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #999999 inset;
  color: #999999;
}
.u-color-tint-40--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-45 {
  color: #8c8c8c;
}
.u-color-tint-45--bg {
  background-color: #8c8c8c;
}
.u-color-tint-45--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #8c8c8c inset;
  color: #8c8c8c;
}
.u-color-tint-45--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-50 {
  color: #808080;
}
.u-color-tint-50--bg {
  background-color: #808080;
}
.u-color-tint-50--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #808080 inset;
  color: #808080;
}
.u-color-tint-50--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-55 {
  color: #737373;
}
.u-color-tint-55--bg {
  background-color: #737373;
}
.u-color-tint-55--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #737373 inset;
  color: #737373;
}
.u-color-tint-55--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-60 {
  color: #666666;
}
.u-color-tint-60--bg {
  background-color: #666666;
}
.u-color-tint-60--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #666666 inset;
  color: #666666;
}
.u-color-tint-60--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-65 {
  color: #595959;
}
.u-color-tint-65--bg {
  background-color: #595959;
}
.u-color-tint-65--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #595959 inset;
  color: #595959;
}
.u-color-tint-65--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-70 {
  color: #4d4d4d;
}
.u-color-tint-70--bg {
  background-color: #4d4d4d;
}
.u-color-tint-70--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #4d4d4d inset;
  color: #4d4d4d;
}
.u-color-tint-70--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-75 {
  color: #404040;
}
.u-color-tint-75--bg {
  background-color: #404040;
}
.u-color-tint-75--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #404040 inset;
  color: #404040;
}
.u-color-tint-75--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-80 {
  color: #333333;
}
.u-color-tint-80--bg {
  background-color: #333333;
}
.u-color-tint-80--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #333333 inset;
  color: #333333;
}
.u-color-tint-80--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-85 {
  color: #262626;
}
.u-color-tint-85--bg {
  background-color: #262626;
}
.u-color-tint-85--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #262626 inset;
  color: #262626;
}
.u-color-tint-85--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-90 {
  color: #1a1a1a;
}
.u-color-tint-90--bg {
  background-color: #1a1a1a;
}
.u-color-tint-90--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #1a1a1a inset;
  color: #1a1a1a;
}
.u-color-tint-90--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
.u-color-tint-black {
  color: #000000;
}
.u-color-tint-black--bg {
  background-color: #000000;
}
.u-color-tint-black--bg.c-btn--stroke {
  background: none;
  box-shadow: 0 0 0 2px #000000 inset;
  color: #000000;
}
.u-color-tint-black--bg.c-btn--stroke:hover {
  color: #2e3192;
  border-color: #2e3192;
}
/* ==========================================================================
   #HEADINGS
   ========================================================================== */
/**
 * Redefine all of our basic heading styles against utility classes so as to
 * allow for double stranded heading hierarchy, e.g. we semantically need an H2,
 * but we want it to be sized like an H1:
 *
 *   <h2 class="u-h1"></h2>
 *
 */
/* ==========================================================================
   #HIDE
   ========================================================================== */
.u-hide {
  display: none !important;
}

.u-hide-visually {
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
}
.u-hide-visually a:focus, .u-hide-visually input:focus, .u-hide-visually button:focus {
  position: static;
  width: auto;
  height: auto;
}

.u-hide-scrollbar {
  -ms-overflow-style: none; /* Internet Explorer 10+ */
  scrollbar-width: none; /* Firefox */
}
.u-hide-scrollbar::-webkit-scrollbar {
  display: none;
}

@media print {
  .u-hide-for-print {
    display: none !important;
  }
}

/**
 * Responsive hide/show utilities generated per breakpoint.
 */
@media (min-width: 320px) {
  .u-hide--mobile {
    display: none !important;
  }
}

@media (max-width: 319px) {
  .u-show--mobile {
    display: none !important;
  }
}

@media (min-width: 320px) {
  .u-hide--visually--mobile {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
}

@media (min-width: 420px) {
  .u-hide--phablet {
    display: none !important;
  }
}

@media (max-width: 419px) {
  .u-show--phablet {
    display: none !important;
  }
}

@media (min-width: 420px) {
  .u-hide--visually--phablet {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
}

@media (min-width: 740px) {
  .u-hide--tablet {
    display: none !important;
  }
}

@media (max-width: 739px) {
  .u-show--tablet {
    display: none !important;
  }
}

@media (min-width: 740px) {
  .u-hide--visually--tablet {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
}

@media (min-width: 980px) {
  .u-hide--desktop {
    display: none !important;
  }
}

@media (max-width: 979px) {
  .u-show--desktop {
    display: none !important;
  }
}

@media (min-width: 980px) {
  .u-hide--visually--desktop {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
}

@media (min-width: 1300px) {
  .u-hide--wide {
    display: none !important;
  }
}

@media (max-width: 1299px) {
  .u-show--wide {
    display: none !important;
  }
}

@media (min-width: 1300px) {
  .u-hide--visually--wide {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
}

/**
 * Responsive hide/show utilities generated per breakpoint.
 */
@media (min-width: 20em) {
  .u-hide--mobile {
    display: none !important;
  }
}

@media (max-width: 19.99em) {
  .u-show--mobile {
    display: none !important;
  }
}

@media (min-width: 20em) {
  .u-hide-visually--mobile {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
  .u-hide-visually--mobile a:focus, .u-hide-visually--mobile input:focus, .u-hide-visually--mobile button:focus {
    position: static;
    width: auto;
    height: auto;
  }
}

@media (max-width: 19.99em) {
  .u-show-visually--mobile {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
  .u-show-visually--mobile a:focus, .u-show-visually--mobile input:focus, .u-show-visually--mobile button:focus {
    position: static;
    width: auto;
    height: auto;
  }
}

@media (min-width: 26.25em) {
  .u-hide--phablet {
    display: none !important;
  }
}

@media (max-width: 26.24em) {
  .u-show--phablet {
    display: none !important;
  }
}

@media (min-width: 26.25em) {
  .u-hide-visually--phablet {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
  .u-hide-visually--phablet a:focus, .u-hide-visually--phablet input:focus, .u-hide-visually--phablet button:focus {
    position: static;
    width: auto;
    height: auto;
  }
}

@media (max-width: 26.24em) {
  .u-show-visually--phablet {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
  .u-show-visually--phablet a:focus, .u-show-visually--phablet input:focus, .u-show-visually--phablet button:focus {
    position: static;
    width: auto;
    height: auto;
  }
}

@media (min-width: 46.25em) {
  .u-hide--tablet {
    display: none !important;
  }
}

@media (max-width: 46.24em) {
  .u-show--tablet {
    display: none !important;
  }
}

@media (min-width: 46.25em) {
  .u-hide-visually--tablet {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
  .u-hide-visually--tablet a:focus, .u-hide-visually--tablet input:focus, .u-hide-visually--tablet button:focus {
    position: static;
    width: auto;
    height: auto;
  }
}

@media (max-width: 46.24em) {
  .u-show-visually--tablet {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
  .u-show-visually--tablet a:focus, .u-show-visually--tablet input:focus, .u-show-visually--tablet button:focus {
    position: static;
    width: auto;
    height: auto;
  }
}

@media (min-width: 61.25em) {
  .u-hide--desktop {
    display: none !important;
  }
}

@media (max-width: 61.24em) {
  .u-show--desktop {
    display: none !important;
  }
}

@media (min-width: 61.25em) {
  .u-hide-visually--desktop {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
  .u-hide-visually--desktop a:focus, .u-hide-visually--desktop input:focus, .u-hide-visually--desktop button:focus {
    position: static;
    width: auto;
    height: auto;
  }
}

@media (max-width: 61.24em) {
  .u-show-visually--desktop {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
  .u-show-visually--desktop a:focus, .u-show-visually--desktop input:focus, .u-show-visually--desktop button:focus {
    position: static;
    width: auto;
    height: auto;
  }
}

@media (min-width: 81.25em) {
  .u-hide--wide {
    display: none !important;
  }
}

@media (max-width: 81.24em) {
  .u-show--wide {
    display: none !important;
  }
}

@media (min-width: 81.25em) {
  .u-hide-visually--wide {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
  .u-hide-visually--wide a:focus, .u-hide-visually--wide input:focus, .u-hide-visually--wide button:focus {
    position: static;
    width: auto;
    height: auto;
  }
}

@media (max-width: 81.24em) {
  .u-show-visually--wide {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
  .u-show-visually--wide a:focus, .u-show-visually--wide input:focus, .u-show-visually--wide button:focus {
    position: static;
    width: auto;
    height: auto;
  }
}

/* ==========================================================================
   #PATTERNS
   ========================================================================== */
.u-pattern {
  background: url(../img/pattern-diamond.jpg) repeat fixed top center/100px;
}
@media (max-width: 46.24em) {
  .u-pattern {
    background-size: 70px;
  }
}

.u-pattern--blend {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  mix-blend-mode: multiply;
}
.u-pattern--blend + div {
  position: relative;
}

/* ==========================================================================
   #PLACEHOLDERS
   ========================================================================== */
.u-placeholder-text {
  background-color: yellow;
  color: #333333;
}

.u-placeholder-border {
  overflow: auto;
  border: 1px dashed rgba(0, 0, 0, 0.3);
  padding: 12px;
}
.u-placeholder-border .u-placeholder-border--red {
  border: 1px dashed rgba(255, 0, 0, 0.3);
}
.u-placeholder-border .u-placeholder-border--blue {
  border: 1px dashed rgba(0, 0, 255, 0.3);
}
.u-placeholder-border .u-placeholder-border--green {
  border: 1px dashed rgba(0, 128, 0, 0.5);
}
.u-placeholder-border .u-placeholder-border--yellow {
  border: 1px dashed #ffd200;
}
.u-placeholder-border .u-placeholder-border--purple {
  border: 1px dashed rgba(128, 0, 128, 0.5);
}

/* ==========================================================================
   #SPACINGS
   ========================================================================== */
/**
 * Utility classes to put specific spacing values onto elements. The below loop
 * will generate us a suite of classes like:
 *
 *   .u-margin {}
 *   .u-padding-left-large {}
 *   .u-margin-right-small {}
 *   .u-padding {}
 *   .u-padding-right-none {}
 *   .u-padding-horizontal {}
 *   .u-padding-vertical-small {}
 */
.u-padding {
  padding: 24px !important;
}

.u-padding-tiny {
  padding: 6px !important;
}

.u-padding-small {
  padding: 12px !important;
}

.u-padding-large {
  padding: 48px !important;
}

.u-padding-huge {
  padding: 96px !important;
}

.u-padding-none {
  padding: 0 !important;
}

.u-padding-top {
  padding-top: 24px !important;
}

.u-padding-top-tiny {
  padding-top: 6px !important;
}

.u-padding-top-small {
  padding-top: 12px !important;
}

.u-padding-top-large {
  padding-top: 48px !important;
}

.u-padding-top-huge {
  padding-top: 96px !important;
}

.u-padding-top-none {
  padding-top: 0 !important;
}

.u-padding-right {
  padding-right: 24px !important;
}

.u-padding-right-tiny {
  padding-right: 6px !important;
}

.u-padding-right-small {
  padding-right: 12px !important;
}

.u-padding-right-large {
  padding-right: 48px !important;
}

.u-padding-right-huge {
  padding-right: 96px !important;
}

.u-padding-right-none {
  padding-right: 0 !important;
}

.u-padding-bottom {
  padding-bottom: 24px !important;
}

.u-padding-bottom-tiny {
  padding-bottom: 6px !important;
}

.u-padding-bottom-small {
  padding-bottom: 12px !important;
}

.u-padding-bottom-large {
  padding-bottom: 48px !important;
}

.u-padding-bottom-huge {
  padding-bottom: 96px !important;
}

.u-padding-bottom-none {
  padding-bottom: 0 !important;
}

.u-padding-left {
  padding-left: 24px !important;
}

.u-padding-left-tiny {
  padding-left: 6px !important;
}

.u-padding-left-small {
  padding-left: 12px !important;
}

.u-padding-left-large {
  padding-left: 48px !important;
}

.u-padding-left-huge {
  padding-left: 96px !important;
}

.u-padding-left-none {
  padding-left: 0 !important;
}

.u-padding-horizontal {
  padding-left: 24px !important;
  padding-right: 24px !important;
}

.u-padding-horizontal-tiny {
  padding-left: 6px !important;
  padding-right: 6px !important;
}

.u-padding-horizontal-small {
  padding-left: 12px !important;
  padding-right: 12px !important;
}

.u-padding-horizontal-large {
  padding-left: 48px !important;
  padding-right: 48px !important;
}

.u-padding-horizontal-huge {
  padding-left: 96px !important;
  padding-right: 96px !important;
}

.u-padding-horizontal-none {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.u-padding-vertical {
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}

.u-padding-vertical-tiny {
  padding-top: 6px !important;
  padding-bottom: 6px !important;
}

.u-padding-vertical-small {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}

.u-padding-vertical-large {
  padding-top: 48px !important;
  padding-bottom: 48px !important;
}

.u-padding-vertical-huge {
  padding-top: 96px !important;
  padding-bottom: 96px !important;
}

.u-padding-vertical-none {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.u-margin {
  margin: 24px !important;
}

.u-margin-tiny {
  margin: 6px !important;
}

.u-margin-small {
  margin: 12px !important;
}

.u-margin-large {
  margin: 48px !important;
}

.u-margin-huge {
  margin: 96px !important;
}

.u-margin-none {
  margin: 0 !important;
}

.u-margin-top {
  margin-top: 24px !important;
}

.u-margin-top-tiny {
  margin-top: 6px !important;
}

.u-margin-top-small {
  margin-top: 12px !important;
}

.u-margin-top-large {
  margin-top: 48px !important;
}

.u-margin-top-huge {
  margin-top: 96px !important;
}

.u-margin-top-none {
  margin-top: 0 !important;
}

.u-margin-right {
  margin-right: 24px !important;
}

.u-margin-right-tiny {
  margin-right: 6px !important;
}

.u-margin-right-small {
  margin-right: 12px !important;
}

.u-margin-right-large {
  margin-right: 48px !important;
}

.u-margin-right-huge {
  margin-right: 96px !important;
}

.u-margin-right-none {
  margin-right: 0 !important;
}

.u-margin-bottom {
  margin-bottom: 24px !important;
}

.u-margin-bottom-tiny {
  margin-bottom: 6px !important;
}

.u-margin-bottom-small {
  margin-bottom: 12px !important;
}

.u-margin-bottom-large {
  margin-bottom: 48px !important;
}

.u-margin-bottom-huge {
  margin-bottom: 96px !important;
}

.u-margin-bottom-none {
  margin-bottom: 0 !important;
}

.u-margin-left {
  margin-left: 24px !important;
}

.u-margin-left-tiny {
  margin-left: 6px !important;
}

.u-margin-left-small {
  margin-left: 12px !important;
}

.u-margin-left-large {
  margin-left: 48px !important;
}

.u-margin-left-huge {
  margin-left: 96px !important;
}

.u-margin-left-none {
  margin-left: 0 !important;
}

.u-margin-horizontal {
  margin-left: 24px !important;
  margin-right: 24px !important;
}

.u-margin-horizontal-tiny {
  margin-left: 6px !important;
  margin-right: 6px !important;
}

.u-margin-horizontal-small {
  margin-left: 12px !important;
  margin-right: 12px !important;
}

.u-margin-horizontal-large {
  margin-left: 48px !important;
  margin-right: 48px !important;
}

.u-margin-horizontal-huge {
  margin-left: 96px !important;
  margin-right: 96px !important;
}

.u-margin-horizontal-none {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.u-margin-vertical {
  margin-top: 24px !important;
  margin-bottom: 24px !important;
}

.u-margin-vertical-tiny {
  margin-top: 6px !important;
  margin-bottom: 6px !important;
}

.u-margin-vertical-small {
  margin-top: 12px !important;
  margin-bottom: 12px !important;
}

.u-margin-vertical-large {
  margin-top: 48px !important;
  margin-bottom: 48px !important;
}

.u-margin-vertical-huge {
  margin-top: 96px !important;
  margin-bottom: 96px !important;
}

.u-margin-vertical-none {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* ==========================================================================
   #WIDTHS
   ========================================================================== */
/**
 * Generates responsive utility classes like:
 *   .u-1/2
 *   .u-1/3--tablet
 */
.u-1\/1 {
  width: 100% !important;
}

.u-1\/2 {
  width: 50% !important;
}

.u-2\/2 {
  width: 100% !important;
}

.u-1\/3 {
  width: 33.3333333333% !important;
}

.u-2\/3 {
  width: 66.6666666667% !important;
}

.u-3\/3 {
  width: 100% !important;
}

.u-1\/4 {
  width: 25% !important;
}

.u-2\/4 {
  width: 50% !important;
}

.u-3\/4 {
  width: 75% !important;
}

.u-4\/4 {
  width: 100% !important;
}

.u-1\/5 {
  width: 20% !important;
}

.u-2\/5 {
  width: 40% !important;
}

.u-3\/5 {
  width: 60% !important;
}

.u-4\/5 {
  width: 80% !important;
}

.u-5\/5 {
  width: 100% !important;
}

@media (min-width: 20em) {
  .u-1\/1--mobile {
    width: 100% !important;
  }
  .u-1\/2--mobile {
    width: 50% !important;
  }
  .u-2\/2--mobile {
    width: 100% !important;
  }
  .u-1\/3--mobile {
    width: 33.3333333333% !important;
  }
  .u-2\/3--mobile {
    width: 66.6666666667% !important;
  }
  .u-3\/3--mobile {
    width: 100% !important;
  }
  .u-1\/4--mobile {
    width: 25% !important;
  }
  .u-2\/4--mobile {
    width: 50% !important;
  }
  .u-3\/4--mobile {
    width: 75% !important;
  }
  .u-4\/4--mobile {
    width: 100% !important;
  }
  .u-1\/5--mobile {
    width: 20% !important;
  }
  .u-2\/5--mobile {
    width: 40% !important;
  }
  .u-3\/5--mobile {
    width: 60% !important;
  }
  .u-4\/5--mobile {
    width: 80% !important;
  }
  .u-5\/5--mobile {
    width: 100% !important;
  }
}
@media (min-width: 26.25em) {
  .u-1\/1--phablet {
    width: 100% !important;
  }
  .u-1\/2--phablet {
    width: 50% !important;
  }
  .u-2\/2--phablet {
    width: 100% !important;
  }
  .u-1\/3--phablet {
    width: 33.3333333333% !important;
  }
  .u-2\/3--phablet {
    width: 66.6666666667% !important;
  }
  .u-3\/3--phablet {
    width: 100% !important;
  }
  .u-1\/4--phablet {
    width: 25% !important;
  }
  .u-2\/4--phablet {
    width: 50% !important;
  }
  .u-3\/4--phablet {
    width: 75% !important;
  }
  .u-4\/4--phablet {
    width: 100% !important;
  }
  .u-1\/5--phablet {
    width: 20% !important;
  }
  .u-2\/5--phablet {
    width: 40% !important;
  }
  .u-3\/5--phablet {
    width: 60% !important;
  }
  .u-4\/5--phablet {
    width: 80% !important;
  }
  .u-5\/5--phablet {
    width: 100% !important;
  }
}
@media (min-width: 46.25em) {
  .u-1\/1--tablet {
    width: 100% !important;
  }
  .u-1\/2--tablet {
    width: 50% !important;
  }
  .u-2\/2--tablet {
    width: 100% !important;
  }
  .u-1\/3--tablet {
    width: 33.3333333333% !important;
  }
  .u-2\/3--tablet {
    width: 66.6666666667% !important;
  }
  .u-3\/3--tablet {
    width: 100% !important;
  }
  .u-1\/4--tablet {
    width: 25% !important;
  }
  .u-2\/4--tablet {
    width: 50% !important;
  }
  .u-3\/4--tablet {
    width: 75% !important;
  }
  .u-4\/4--tablet {
    width: 100% !important;
  }
  .u-1\/5--tablet {
    width: 20% !important;
  }
  .u-2\/5--tablet {
    width: 40% !important;
  }
  .u-3\/5--tablet {
    width: 60% !important;
  }
  .u-4\/5--tablet {
    width: 80% !important;
  }
  .u-5\/5--tablet {
    width: 100% !important;
  }
}
@media (min-width: 61.25em) {
  .u-1\/1--desktop {
    width: 100% !important;
  }
  .u-1\/2--desktop {
    width: 50% !important;
  }
  .u-2\/2--desktop {
    width: 100% !important;
  }
  .u-1\/3--desktop {
    width: 33.3333333333% !important;
  }
  .u-2\/3--desktop {
    width: 66.6666666667% !important;
  }
  .u-3\/3--desktop {
    width: 100% !important;
  }
  .u-1\/4--desktop {
    width: 25% !important;
  }
  .u-2\/4--desktop {
    width: 50% !important;
  }
  .u-3\/4--desktop {
    width: 75% !important;
  }
  .u-4\/4--desktop {
    width: 100% !important;
  }
  .u-1\/5--desktop {
    width: 20% !important;
  }
  .u-2\/5--desktop {
    width: 40% !important;
  }
  .u-3\/5--desktop {
    width: 60% !important;
  }
  .u-4\/5--desktop {
    width: 80% !important;
  }
  .u-5\/5--desktop {
    width: 100% !important;
  }
}
@media (min-width: 81.25em) {
  .u-1\/1--wide {
    width: 100% !important;
  }
  .u-1\/2--wide {
    width: 50% !important;
  }
  .u-2\/2--wide {
    width: 100% !important;
  }
  .u-1\/3--wide {
    width: 33.3333333333% !important;
  }
  .u-2\/3--wide {
    width: 66.6666666667% !important;
  }
  .u-3\/3--wide {
    width: 100% !important;
  }
  .u-1\/4--wide {
    width: 25% !important;
  }
  .u-2\/4--wide {
    width: 50% !important;
  }
  .u-3\/4--wide {
    width: 75% !important;
  }
  .u-4\/4--wide {
    width: 100% !important;
  }
  .u-1\/5--wide {
    width: 20% !important;
  }
  .u-2\/5--wide {
    width: 40% !important;
  }
  .u-3\/5--wide {
    width: 60% !important;
  }
  .u-4\/5--wide {
    width: 80% !important;
  }
  .u-5\/5--wide {
    width: 100% !important;
  }
}
/* ==========================================================================
   #JQUERY UI DATEPICKER OVERRIDES
   ========================================================================== */
#datepicker .ui-datepicker {
  border: none;
  background: none;
  padding: 0;
  width: 100%;
}
#datepicker .ui-datepicker-header {
  background: none;
  border: none;
  border-radius: 0;
  padding: 0 0 12px;
  text-align: center;
}
#datepicker .ui-datepicker-title {
  cursor: pointer;
  display: inline-block;
  line-height: 0;
}
#datepicker .ui-datepicker-title span {
  color: #333333;
  line-height: 1.4;
  transition: color 0.25s ease 0s;
}
#datepicker .ui-datepicker-title span:hover {
  color: #1c52da;
}
#datepicker .ui-datepicker-month {
  display: block;
}
#datepicker .ui-datepicker-year {
  display: block;
  font-weight: 300;
  font-size: 0.7777777778rem;
  font-size: 14px;
  line-height: 1.7142857143;
}
#datepicker .ui-state-hover {
  background: none;
  border: none;
}
#datepicker .ui-datepicker-next,
#datepicker .ui-datepicker-prev {
  cursor: pointer;
  text-align: center;
  color: #1c52da;
}
#datepicker .ui-datepicker-next span,
#datepicker .ui-datepicker-prev span {
  display: none;
}
#datepicker .ui-datepicker-next:after,
#datepicker .ui-datepicker-prev:after {
  content: "\f060";
  display: inline-block;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  line-height: 1.2;
  text-align: center;
  font-size: 32px;
}
#datepicker .ui-datepicker-next:hover,
#datepicker .ui-datepicker-prev:hover {
  color: #2e3192;
}
#datepicker .ui-datepicker-next {
  top: 50%;
  transform: translateY(-50%);
  right: 0;
}
#datepicker .ui-datepicker-next:after {
  content: "\f061";
}
#datepicker .ui-datepicker-prev {
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}
#datepicker .ui-datepicker-prev:after {
  content: "\f060";
}
#datepicker .ui-datepicker-calendar thead th {
  padding: 12px 0;
}
#datepicker .ui-datepicker-calendar thead th span {
  color: #ffffff;
}
#datepicker .ui-datepicker-calendar tbody tr:first-child td {
  padding-top: 12px;
}
#datepicker .ui-datepicker-calendar tbody td {
  text-align: center;
}
#datepicker .ui-state-default {
  border: none;
  background: none;
  text-align: center;
  display: inline-block;
  color: #333333;
  cursor: default;
  padding: 0;
  height: 40px;
  width: 100%;
  max-width: 40px;
  line-height: 40px;
  border-radius: 12px;
}
#datepicker .ui-state-default:hover {
  color: #333333;
}
#datepicker .ui-state-disabled {
  opacity: 0.5;
}
#datepicker .ui-datepicker-today a {
  background: #1c52da !important;
  color: #ffffff;
  cursor: pointer;
}
#datepicker .ui-datepicker-today a:hover {
  color: #ffffff;
}
#datepicker .has-event a {
  cursor: pointer;
  color: #ffffff;
  background: #1c52da;
  transition: background 0.25s ease 0s;
}
#datepicker .has-event a:hover {
  color: #ffffff;
  background: #2e3192;
}
#datepicker .has-event.current a {
  background: #2e3192;
}

/* ==========================================================================
   #FLEXSLIDER OVERRIDES
   ========================================================================== */
@font-face {
  font-family: "flexslider-icon";
  src: url("../fonts/flexslider-icon.eot");
  src: url("../fonts/flexslider-icon.eot?#iefix") format("embedded-opentype"), url("../fonts/flexslider-icon.woff") format("woff"), url("../fonts/flexslider-icon.ttf") format("truetype"), url("../fonts/flexslider-icon.svg#flexslider-icon") format("svg");
  font-weight: normal;
  font-style: normal;
}
/* ==========================================================================
   #LIGHTBOX OVERRIDES
   ========================================================================== */
.lb-cancel {
  background: url(../img/loading.gif) no-repeat;
}

.lb-nav a.lb-prev {
  background: url(../img/prev.png) left 48% no-repeat;
}
@media (max-width: 46.24em) {
  .lb-nav a.lb-prev {
    opacity: 1 !important;
  }
}

.lb-nav a.lb-next {
  background: url(../img/next.png) right 48% no-repeat;
}
@media (max-width: 46.24em) {
  .lb-nav a.lb-next {
    opacity: 1 !important;
  }
}

.lb-data .lb-close {
  background: url(../img/close.png) top right no-repeat;
}

/* ==========================================================================
   #NINJAFORMS OVERRIDES
   ========================================================================== */
.nf-form-fields-required {
  display: none;
}

.nf-error .ninja-forms-field {
  border: none;
  border-color: #aa0000;
}
.nf-error input[type=checkbox],
.nf-error input[type=radio] {
  border-color: #aa0000;
}

.nf-error-msg,
.ninja-forms-req-symbol {
  color: #aa0000;
  font-size: 0.7777777778rem;
  font-size: 14px;
  line-height: 1.2;
  font-style: italic;
}

.nf-form-fields-required {
  font-size: 0.7777777778rem;
  font-size: 14px;
  line-height: 1.2;
  margin-bottom: 12px;
  font-style: italic;
}

.nf-field-element input[type=checkbox],
.nf-field-element input[type=radio] {
  width: 1.35rem;
  height: 1.35rem;
  max-width: none;
}

.form-item {
  margin: 0 0 24px;
  position: relative;
}
.form-item.form-type-radio, .form-item.form-type-checkbox {
  margin: 0;
}

.form-required {
  color: #aa0000;
}

nf-field .nf-field-container {
  margin-bottom: 18px;
}

/* ==========================================================================
   #WOOCOMMERCE OVERRIDES
   ========================================================================== */
.woocommerce ul.order_details li {
  border: none;
}
.woocommerce .woocommerce-cart-form {
  background: #ffffff;
}
.woocommerce table {
  overflow: hidden;
}
.woocommerce table td, .woocommerce table th {
  background: #ffffff;
  border-width: 1px;
  border-color: #cccccc;
}
.woocommerce .coupon {
  text-align: left;
}
.woocommerce .coupon input#coupon_code {
  width: 100%;
  margin-bottom: 12px;
}
.woocommerce .cart_item .product-thumbnail a {
  position: relative;
  overflow: hidden;
  padding: 3px;
  display: inline-block;
  width: 50px;
  height: 50px;
  vertical-align: bottom;
  border-radius: 4px;
}
.woocommerce .cart_item .product-thumbnail a:before {
  content: "";
  display: block;
  width: 100%;
  height: 0;
  padding-bottom: 100%;
}
.woocommerce .cart_item .product-thumbnail .image-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.woocommerce .cart_item .product-thumbnail img {
  -o-object-position: center;
     object-position: center;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
  margin: 0;
}
.woocommerce .cart_item .product-name {
  width: 100%;
}
.woocommerce button br,
.woocommerce .button br,
.woocommerce a.button br,
.woocommerce a.button.alt br,
.woocommerce button.button br {
  display: none;
}
.woocommerce button:hover, .woocommerce button:focus,
.woocommerce .button:hover,
.woocommerce .button:focus,
.woocommerce a.button:hover,
.woocommerce a.button:focus,
.woocommerce a.button.alt:hover,
.woocommerce a.button.alt:focus,
.woocommerce button.button:hover,
.woocommerce button.button:focus {
  background: #2e3192;
  color: #ffffff;
}
.woocommerce button:disabled,
.woocommerce .button:disabled,
.woocommerce a.button:disabled,
.woocommerce a.button.alt:disabled,
.woocommerce button.button:disabled {
  background: #e6e6e6;
}
.woocommerce button.checkout-button,
.woocommerce .button.checkout-button,
.woocommerce a.button.checkout-button,
.woocommerce a.button.alt.checkout-button,
.woocommerce button.button.checkout-button {
  width: 100%;
}
.woocommerce .cart-collaterals .cart_totals {
  width: 100%;
}

.wc-block-checkout form.wc-block-checkout__form .is-active label {
  font-size: 0.9em !important;
  transform: translateY(0.2em) scale(0.875) !important;
}
.wc-block-checkout .wp-block-woocommerce-checkout-order-summary-block {
  background: #ffffff;
}
.wc-block-checkout .wc-block-checkout__terms span a {
  text-decoration: underline;
}
.wc-block-checkout .wc-block-components-order-summary .wc-block-components-order-summary-item__image,
.wc-block-checkout .wc-block-components-order-summary .wc-block-components-product-metadata__description,
.wc-block-checkout .wc-block-components-order-summary .wc-block-components-order-summary-item__individual-prices {
  display: none;
}
.wc-block-checkout .wc-block-components-order-summary .wc-block-components-order-summary-item__description {
  padding-left: 0;
}
.wc-block-checkout .wc-block-components-order-summary .wc-block-components-order-summary-item {
  padding-top: 0;
}

.woocommerce-column {
  margin-bottom: 24px;
}

.wc-block-components-address-form__phone,
.woocommerce-customer-details--email,
.wc-block-components-product-low-stock-badge {
  display: none !important;
}

.woocommerce-form.woocommerce-form-login.login {
  padding: 0;
  border: none;
}

.woocommerce-order h2 {
  color: #000000;
}