/** Shopify CDN: Minification failed

Line 3907:20 Unexpected "{"
Line 3907:29 Expected ":"

**/
@charset "UTF-8";
:root {
  --tg-sys-state-hover-state-layer-opacity: 0.08;
  --tg-sys-state-focus-state-layer-opacity: 0.12;
  --tg-sys-state-pressed-state-layer-opacity: 0.12;
  --tg-sys-color-shadow1: rgba(var(--tg-sys-color-on-background-rgb), 0.12);
  --tg-sys-color-shadow2: rgba(var(--tg-sys-color-on-background-rgb), 0.16);
  --tg-sys-color-shadow3: rgba(var(--tg-sys-color-on-background-rgb), 0.2);
  --tg-sys-shadow: 0px 3px 1px -2px rgba(var(--tg-sys-color-on-background-rgb), 0.2), 0px 2px 2px 0px rgba(var(--tg-sys-color-on-background-rgb), 0.14), 0px 1px 5px 0px rgba(var(--tg-sys-color-on-background-rgb), 0.12);
  --tg-sys-typescale-display-large-font: var(--tg-ref-typescale-display-font);
  --tg-sys-typescale-display-large-style: var(--tg-ref-display-font-style);
  --tg-sys-typescale-display-large-weight: 400;
  --tg-sys-typescale-display-large-size: calc(var(--tg-ref-display-font-scale) * 81px);
  --tg-sys-typescale-display-large-line-height: 1.12;
  --tg-sys-typescale-display-large-tracking: -0.25px;
  --tg-sys-typescale-display-medium-font: var(--tg-ref-typescale-display-font);
  --tg-sys-typescale-display-medium-style: var(--tg-ref-display-font-style);
  --tg-sys-typescale-display-medium-weight: 400;
  --tg-sys-typescale-display-medium-size: calc(var(--tg-ref-display-font-scale) * 57px);
  --tg-sys-typescale-display-medium-line-height: 1.15;
  --tg-sys-typescale-display-medium-tracking: 0px;
  --tg-sys-typescale-display-small-font: var(--tg-ref-typescale-display-font);
  --tg-sys-typescale-display-small-style: var(--tg-ref-display-font-style);
  --tg-sys-typescale-display-small-weight: 400;
  --tg-sys-typescale-display-small-size: calc(var(--tg-ref-display-font-scale) * 36px);
  --tg-sys-typescale-display-small-line-height: 1.22;
  --tg-sys-typescale-display-small-tracking: 0px;
  --tg-sys-typescale-headline-large-font: var(--tg-ref-typescale-heading-font);
  --tg-sys-typescale-headline-large-style: var(--tg-ref-heading-font-style);
  --tg-sys-typescale-headline-large-weight: 400;
  --tg-sys-typescale-headline-large-size: calc(var(--tg-ref-heading-font-scale) * 32px);
  --tg-sys-typescale-headline-large-line-height: 1.25;
  --tg-sys-typescale-headline-large-tracking: 0px;
  --tg-sys-typescale-headline-medium-font: var(--tg-ref-typescale-heading-font);
  --tg-sys-typescale-headline-medium-style: var(--tg-ref-heading-font-style);
  --tg-sys-typescale-headline-medium-weight: 400;
  --tg-sys-typescale-headline-medium-size: calc(var(--tg-ref-heading-font-scale) * 28px);
  --tg-sys-typescale-headline-medium-line-height: 1.28;
  --tg-sys-typescale-headline-medium-tracking: 0px;
  --tg-sys-typescale-headline-small-font: var(--tg-ref-typescale-heading-font);
  --tg-sys-typescale-headline-small-style: var(--tg-ref-heading-font-style);
  --tg-sys-typescale-headline-small-weight: 400;
  --tg-sys-typescale-headline-small-size: calc(var(--tg-ref-heading-font-scale) * 25px);
  --tg-sys-typescale-headline-small-line-height: 1.33;
  --tg-sys-typescale-headline-small-tracking: 0px;
  --tg-sys-typescale-title-large-font: var(--tg-ref-typescale-heading-font);
  --tg-sys-typescale-title-large-style: var(--tg-ref-heading-font-style);
  --tg-sys-typescale-title-large-weight: 400;
  --tg-sys-typescale-title-large-size: calc(var(--tg-ref-heading-font-scale) * 20px);
  --tg-sys-typescale-title-large-line-height: 1.27;
  --tg-sys-typescale-title-large-tracking: 0px;
  --tg-sys-typescale-title-medium-font: var(--tg-ref-typescale-heading-font);
  --tg-sys-typescale-title-medium-style: var(--tg-ref-heading-font-style);
  --tg-sys-typescale-title-medium-weight: 500;
  --tg-sys-typescale-title-medium-size: calc(var(--tg-ref-heading-font-scale) * 16px);
  --tg-sys-typescale-title-medium-line-height: 1.5;
  --tg-sys-typescale-title-medium-tracking: 0.1px;
  --tg-sys-typescale-title-small-font: var(--tg-ref-typescale-heading-font);
  --tg-sys-typescale-title-small-style: var(--tg-ref-heading-font-style);
  --tg-sys-typescale-title-small-weight: 500;
  --tg-sys-typescale-title-small-size: calc(var(--tg-ref-heading-font-scale) * 14px);
  --tg-sys-typescale-title-small-line-height: 1.42;
  --tg-sys-typescale-title-small-tracking: 0.1px;
  --tg-sys-typescale-label-large-font: var(--tg-ref-typescale-text-font);
  --tg-sys-typescale-label-large-style: var(--tg-ref-text-font-style);
  --tg-sys-typescale-label-large-weight: 500;
  --tg-sys-typescale-label-large-size: calc(var(--tg-ref-text-font-scale) * 14px);
  --tg-sys-typescale-label-large-line-height: 1.43;
  --tg-sys-typescale-label-large-tracking: 0.1px;
  --tg-sys-typescale-label-medium-font: var(--tg-ref-typescale-text-font);
  --tg-sys-typescale-label-medium-style: var(--tg-ref-text-font-style);
  --tg-sys-typescale-label-medium-weight: 500;
  --tg-sys-typescale-label-medium-size: calc(var(--tg-ref-text-font-scale) * 12px);
  --tg-sys-typescale-label-medium-line-height: 1.33;
  --tg-sys-typescale-label-medium-tracking: 0.5px;
  --tg-sys-typescale-label-small-font: var(--tg-ref-typescale-text-font);
  --tg-sys-typescale-label-small-style: var(--tg-ref-text-font-style);
  --tg-sys-typescale-label-small-weight: 500;
  --tg-sys-typescale-label-small-size: calc(var(--tg-ref-text-font-scale) * 11px);
  --tg-sys-typescale-label-small-line-height: 1.45;
  --tg-sys-typescale-label-small-tracking: 0.5px;
  --tg-sys-typescale-body-large-font: var(--tg-ref-typescale-text-font);
  --tg-sys-typescale-body-large-style: var(--tg-ref-text-font-style);
  --tg-sys-typescale-body-large-weight: 400;
  --tg-sys-typescale-body-large-size: calc(var(--tg-ref-text-font-scale) * 16px);
  --tg-sys-typescale-body-large-line-height: 1.5;
  --tg-sys-typescale-body-large-tracking: 0.5px;
  --tg-sys-typescale-body-medium-font: var(--tg-ref-typescale-text-font);
  --tg-sys-typescale-body-medium-style: var(--tg-ref-text-font-style);
  --tg-sys-typescale-body-medium-weight: 400;
  --tg-sys-typescale-body-medium-size: calc(var(--tg-ref-text-font-scale) * 14px);
  --tg-sys-typescale-body-medium-line-height: 1.65;
  --tg-sys-typescale-body-medium-tracking: 0.25px;
  --tg-sys-typescale-body-small-font: var(--tg-ref-typescale-text-font);
  --tg-sys-typescale-body-small-style: var(--tg-ref-text-font-style);
  --tg-sys-typescale-body-small-weight: 400;
  --tg-sys-typescale-body-small-size: calc(var(--tg-ref-text-font-scale) * 12px);
  --tg-sys-typescale-body-small-line-height: 1.43;
  --tg-sys-typescale-body-small-tracking: 0.4px;
}
@media screen and (max-width: 640px) {
  :root {
    --tg-sys-typescale-display-large-size: calc(var(--tg-ref-display-font-scale) * 51px);
    --tg-sys-typescale-display-medium-size: calc(var(--tg-ref-display-font-scale) * 36px);
    --tg-sys-typescale-display-small-size: calc(var(--tg-ref-display-font-scale) * 28px);

    --tg-sys-typescale-headline-large-size: calc(var(--tg-ref-heading-font-scale) * 28px);
    --tg-sys-typescale-headline-medium-size: calc(var(--tg-ref-heading-font-scale) * 25px);
    --tg-sys-typescale-headline-small-size: calc(var(--tg-ref-heading-font-scale) * 22px);
  }
}

/**
  * ----------------------------------------------------------------------------
  * Aspect Ratio
  * ----------------------------------------------------------------------------
  */
.Ratio {
  position: relative;
  width: 100%;
  display: block;
}

.Ratio::before {
  display: block;
  padding-top: calc(100% / (var(--tg-aspect-ratio)));
  content: "";
}

.Ratio > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.Ratio > img, .Ratio > video {
  -o-object-fit: cover;
     object-fit: cover;
  max-height: 100%;
  max-width: 100%;
}

.Ratio--contain > img, .Ratio--contain > video {
  -o-object-fit: contain;
     object-fit: contain;
}

.Ratio--2x3 {
  --tg-aspect-ratio: 0.6666666;
}

.Ratio--3x4 {
  --tg-aspect-ratio: 0.75;
}

.Ratio--1x1 {
  --tg-aspect-ratio: 1;
}

.Ratio--4x3 {
  --tg-aspect-ratio: 1.3333333;
}

.Ratio--3x2 {
  --tg-aspect-ratio: 1.5;
}

.Ratio--16x9 {
  --tg-aspect-ratio: 1.7777777;
}

.Ratio--21x9 {
  --tg-aspect-ratio: 2.333333;
}

.Ratio--small {
  --tg-aspect-ratio: 2;
}

.Ratio--medium {
  --tg-aspect-ratio: 1.5;
}

.Ratio--large {
  --tg-aspect-ratio: 1;
}

@media screen and (min-width: 1008px) {
  .Ratio--small {
    --tg-aspect-ratio: 4;
  }
  .Ratio--medium {
    --tg-aspect-ratio: 3;
  }
  .Ratio--large {
    --tg-aspect-ratio: 2;
  }
}
/**
 * ----------------------------------------------------------------------------
 * Image overlay
 * ----------------------------------------------------------------------------
 */
.ImageOverlay {
  position: relative;
}

.ImageOverlay::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-color: rgba(0, 0, 0, 0.43);
  transition: background 0.3s, border-radius 0.3s, opacity 0.3s;
}

.ImageOverlay > * {
  z-index: 0;
}

/**
  * ----------------------------------------------------------------------------
  * Background image overlay
  * ----------------------------------------------------------------------------
  */
.BackgroundOverlay {
  content: "";
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  position: absolute;
  background-color: rgba(0, 0, 0, 0.43);
  z-index: -1;
}

.BackgroundOverlay--indexAuto {
  z-index: auto;
}

@keyframes loader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.Image--loader {
  position: absolute;
  display: block;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: 0;
  visibility: hidden;
  margin: auto;
  pointer-events: none;
  overflow: hidden;
  z-index: -1;
  border: 2px solid var(--tg-sys-color-theme);
  border-radius: 50%;
  border-top: 2px solid #fff;
  width: 20px;
  height: 20px;
  animation: loader-spin 2s linear infinite;
}

.Loading .Image--loader {
  opacity: 1;
  visibility: visible;
  z-index: 1;
}

feature-img {
  display: block;
}

.Image--withLoader + .Image--loader {
  opacity: 1;
  visibility: visible;
  z-index: 1;
}

.Image--withLoader.Image--loaded + .Image--loader,
.no-js .Image--withLoader + .Image--loader {
  opacity: 0;
  visibility: hidden;
  z-index: -1;
}

.Image--withLoader {
  opacity: 0;
}

.no-js .Image--withLoader {
  opacity: 1;
}

.Image--withLoader.Image--loaded {
  opacity: 1;
}

.Image--fadeIn {
  transition: opacity 0.5s ease;
}

.Hidden {
  display: none !important;
}

@media screen and (max-width: 640px) {
  .HiddenSmall {
    display: none !important;
  }
}
@media screen and (min-width: 641px) and (max-width: 1007px) {
  .HiddenMedium {
    display: none !important;
  }
}
@media screen and (min-width: 641px) {
  .HiddenMediumUp {
    display: none !important;
  }
}
@media screen and (max-width: 1007px) {
  .HiddenMediumDown {
    display: none !important;
  }
}
@media screen and (min-width: 1008px) {
  .HiddenLarge {
    display: none !important;
  }
}
/** text */
.TextMuted {
  color: var(--tg-sys-color-on-surface-variant) !important;
}

.TextStart {
  text-align: start !important;
}

.TextEnd {
  text-align: end !important;
}

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

.VisuallyHidden {
  position: absolute !important;
  overflow: hidden;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
  word-wrap: normal !important;
}

.SkipToContentLink:focus {
  z-index: 9999;
  position: inherit;
  overflow: auto;
  width: auto;
  height: auto;
  clip: auto;
}

.StretchedLink::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  content: "";
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
*,
*:before,
*:after {
  box-sizing: border-box !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
    ========================================================================== */
/**
  * Remove the margin in all browsers.
  */
body {
  margin: 0;
  color: var(--tg-sys-color-on-background);
  background: var(--tg-sys-color-background);
  font-family: var(--tg-sys-typescale-body-medium-font);
  font-style: var(--tg-sys-typescale-body-medium-style);
  font-weight: var(--tg-sys-typescale-body-medium-weight);
  font-size: var(--tg-sys-typescale-body-medium-size);
  line-height: var(--tg-sys-typescale-body-medium-line-height);
  letter-spacing: var(--tg-sys-typescale-body-medium-tracking);
  -webkit-overflow-scrolling: touch;
}

/**
  * Render the `main` element consistently in IE.
  */
main {
  display: block;
}

/**
  * Correct the font size and margin on `h1` elements within `section` and
  * `article` contexts in Chrome, Firefox, and Safari.
  */
p {
  margin-top: 0;
  margin-bottom: 1rem;
}
p:last-child {
  margin-bottom: 0;
}

h1 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-family: var(--tg-sys-typescale-headline-large-font);
  font-style: var(--tg-sys-typescale-headline-large-style);
  font-weight: var(--tg-sys-typescale-headline-large-weight);
  font-size: var(--tg-sys-typescale-headline-large-size);
  line-height: var(--tg-sys-typescale-headline-large-line-height);
  letter-spacing: var(--tg-sys-typescale-headline-large-tracking);
}

h2 {
  margin-top: 0;
  margin-bottom: 0.75rem;
  font-family: var(--tg-sys-typescale-headline-medium-font);
  font-style: var(--tg-sys-typescale-headline-medium-style);
  font-weight: var(--tg-sys-typescale-headline-medium-weight);
  font-size: var(--tg-sys-typescale-headline-medium-size);
  line-height: var(--tg-sys-typescale-headline-medium-line-height);
  letter-spacing: var(--tg-sys-typescale-headline-medium-tracking);
}

h3 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-family: var(--tg-sys-typescale-headline-small-font);
  font-style: var(--tg-sys-typescale-headline-small-style);
  font-weight: var(--tg-sys-typescale-headline-small-weight);
  font-size: var(--tg-sys-typescale-headline-small-size);
  line-height: var(--tg-sys-typescale-headline-small-line-height);
  letter-spacing: var(--tg-sys-typescale-headline-small-tracking);
}

h4 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-family: var(--tg-sys-typescale-title-large-font);
  font-style: var(--tg-sys-typescale-title-large-style);
  font-weight: var(--tg-sys-typescale-title-large-weight);
  font-size: var(--tg-sys-typescale-title-large-size);
  line-height: var(--tg-sys-typescale-title-large-line-height);
  letter-spacing: var(--tg-sys-typescale-title-large-tracking);
}

h5 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-family: var(--tg-sys-typescale-title-medium-font);
  font-style: var(--tg-sys-typescale-title-medium-style);
  font-weight: var(--tg-sys-typescale-title-medium-weight);
  font-size: var(--tg-sys-typescale-title-medium-size);
  line-height: var(--tg-sys-typescale-title-medium-line-height);
  letter-spacing: var(--tg-sys-typescale-title-medium-tracking);
}

h6 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-family: var(--tg-sys-typescale-title-small-font);
  font-style: var(--tg-sys-typescale-title-small-style);
  font-weight: var(--tg-sys-typescale-title-small-weight);
  font-size: var(--tg-sys-typescale-title-small-size);
  line-height: var(--tg-sys-typescale-title-small-line-height);
  letter-spacing: var(--tg-sys-typescale-title-small-tracking);
}

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

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

/* Text-level semantics
    ========================================================================== */
/**
  * Remove the gray background on active links in IE 10.
  */
a {
  background-color: transparent;
  color: var(--tg-sys-color-on-background);
  text-decoration: none;
}

a:active, a:hover {
  outline: 0;
}

ol,
ul {
  -webkit-padding-start: 2rem;
          padding-inline-start: 2rem;
}

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

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

dt {
  font-weight: 700;
}

dd {
  margin-bottom: 0.5rem;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
}

blockquote {
  font-style: italic;
  color: rgba(var(--tg-sys-color-on-background-rgb), 0.75);
  -webkit-border-start: 0.2rem solid rgba(var(--tg-sys-color-on-background-rgb), 0.2);
          border-inline-start: 0.2rem solid rgba(var(--tg-sys-color-on-background-rgb), 0.2);
  -webkit-padding-start: 1rem;
          padding-inline-start: 1rem;
}

@media screen and (min-width: 641px) {
  blockquote {
    -webkit-padding-start: 1.5rem;
            padding-inline-start: 1.5rem;
  }
}
/**
  * 1. Remove the bottom border in Chrome 57-
  * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
  */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}

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

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

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

table {
  caption-side: bottom;
  border-collapse: collapse;
}

caption {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  text-align: start;
}

th {
  text-align: inherit;
  text-align: -webkit-match-parent;
}

thead,
tbody,
tfoot,
tr,
td,
th {
  border-color: inherit;
  border-style: solid;
  border-width: 0;
}

table:not([class]) {
  table-layout: fixed;
  border-collapse: collapse;
  border-style: hidden;
  box-shadow: 0 0 0 1px rgba(var(--tg-sys-color-outline-rgb), 0.8);
  margin-bottom: 0.5rem;
}

table:not([class]) td,
table:not([class]) th {
  padding: 0.5em 0.75em;
  border: 1px solid rgba(var(--tg-sys-color-outline-rgb), 0.8);
  border-color: rgba(var(--tg-sys-color-outline-rgb), 0.8);
}

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

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

button {
  color: var(--tg-sys-color-on-background);
}

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

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

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

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

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

/**
  * Correct the padding in Firefox.
  */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

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

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

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

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

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

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

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

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

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

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

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

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

img,
video,
iframe {
  max-inline-size: 100%;
  block-size: auto;
}

:root {
  --duration-short: 100ms;
  --duration-default: 200ms;
  --duration-long: 500ms;
}

summary {
  cursor: pointer;
  list-style: none;
  position: relative;
}

summary::-webkit-details-marker {
  display: none;
}

.no-js:not(html) {
  display: none !important;
}

html.no-js .no-js:not(html) {
  display: block !important;
}

.no-js-inline {
  display: none !important;
}

html.no-js .no-js-inline {
  display: inline-block !important;
}

html.no-js .no-js-hidden {
  display: none !important;
}

/* base-focus */
/*
  Focus ring - default (with offset)
*/
*:focus:not(:focus-visible) {
  outline: 0;
  box-shadow: none;
}

*:focus-visible {
  outline: 2px solid rgba(var(--tg-sys-color-on-background-rgb), 0.5);
  outline-offset: 0.3rem;
  box-shadow: 0 0 0 0.3rem var(--tg-sys-color-background), 0 0 0.5rem 0.4rem rgba(var(--tg-sys-color-on-background-rgb), 0.3);
}

/* Fallback - for browsers that don't support :focus-visible, a fallback is set for :focus */
.focused,
.no-js *:focus {
  outline: 0.2rem solid rgba(var(--tg-sys-color-on-background-rgb), 0.5);
  outline-offset: 0.3rem;
  box-shadow: 0 0 0 0.3rem var(--tg-sys-color-background), 0 0 0.5rem 0.4rem rgba(var(--tg-sys-color-on-background-rgb), 0.3);
}

/* Negate the fallback side-effect for browsers that support :focus-visible */
.no-js *:focus:not(:focus-visible) {
  outline: 0;
  box-shadow: none;
}

/*
  Focus ring - inset
*/
.focus-inset:focus-visible {
  outline: 0.2rem solid rgba(var(--tg-sys-color-on-background-rgb), 0.5);
  outline-offset: -0.2rem;
  box-shadow: 0 0 0.2rem 0 rgba(var(--tg-sys-color-on-background-rgb), 0.3);
}

.focused.focus-inset,
.no-js .focus-inset:focus {
  outline: 0.2rem solid rgba(var(--tg-sys-color-on-background-rgb), 0.5);
  outline-offset: -0.2rem;
  box-shadow: 0 0 0.2rem 0 rgba(var(--tg-sys-color-on-background-rgb), 0.3);
}

.no-js .focus-inset:focus:not(:focus-visible) {
  outline: 0;
  box-shadow: none;
}

/*
  Focus ring - none
*/
/* Dangerous for a11y - Use with care */
.focus-none {
  box-shadow: none !important;
  outline: 0 !important;
}

.focus-offset:focus-visible {
  outline: 0.2rem solid rgba(var(--tg-sys-color-on-background-rgb), 0.5);
  outline-offset: 1rem;
  box-shadow: 0 0 0 1rem var(--tg-sys-color-background), 0 0 0.2rem 1.2rem rgba(var(--tg-sys-color-on-background-rgb), 0.3);
}

.focus-offset.focused,
.no-js .focus-offset:focus {
  outline: 0.2rem solid rgba(var(--tg-sys-color-on-background-rgb), 0.5);
  outline-offset: 1rem;
  box-shadow: 0 0 0 1rem var(--tg-sys-color-background), 0 0 0.2rem 1.2rem rgba(var(--tg-sys-color-on-background-rgb), 0.3);
}

.no-js .focus-offset:focus:not(:focus-visible) {
  outline: 0;
  box-shadow: none;
}

.Form__Input:focus-visible,
.Form__Select:focus-visible {
  box-shadow: 0 0 0 2px var(--tg-sys-color-on-background);
  outline: 0;
}

.Form__Input:focus,
.Form__Select:focus {
  box-shadow: 0 0 0 2px var(--tg-sys-color-on-background);
  outline: 0;
}

[role=main] .shopify-section:first-child {
  --section-is-first: 1;
}

.DisplayLarge {
  font-family: var(--tg-sys-typescale-display-large-font);
  font-style: var(--tg-sys-typescale-display-large-style);
  font-weight: var(--tg-sys-typescale-display-large-weight);
  font-size: var(--tg-sys-typescale-display-large-size);
  line-height: var(--tg-sys-typescale-display-large-line-height);
  letter-spacing: var(--tg-sys-typescale-display-large-tracking);
}

.DisplayMedium {
  font-family: var(--tg-sys-typescale-display-medium-font);
  font-style: var(--tg-sys-typescale-display-medium-style);
  font-weight: var(--tg-sys-typescale-display-medium-weight);
  font-size: var(--tg-sys-typescale-display-medium-size);
  line-height: var(--tg-sys-typescale-display-medium-line-height);
  letter-spacing: var(--tg-sys-typescale-display-medium-tracking);
}

.DisplaySmall {
  font-family: var(--tg-sys-typescale-display-small-font);
  font-style: var(--tg-sys-typescale-display-small-style);
  font-weight: var(--tg-sys-typescale-display-small-weight);
  font-size: var(--tg-sys-typescale-display-small-size);
  line-height: var(--tg-sys-typescale-display-small-line-height);
  letter-spacing: var(--tg-sys-typescale-display-small-tracking);
}

.HeadlineLarge {
  font-family: var(--tg-sys-typescale-headline-large-font);
  font-style: var(--tg-sys-typescale-headline-large-style);
  font-weight: var(--tg-sys-typescale-headline-large-weight);
  font-size: var(--tg-sys-typescale-headline-large-size);
  line-height: var(--tg-sys-typescale-headline-large-line-height);
  letter-spacing: var(--tg-sys-typescale-headline-large-tracking);
}

.HeadlineMedium {
  font-family: var(--tg-sys-typescale-headline-medium-font);
  font-style: var(--tg-sys-typescale-headline-medium-style);
  font-weight: var(--tg-sys-typescale-headline-medium-weight);
  font-size: var(--tg-sys-typescale-headline-medium-size);
  line-height: var(--tg-sys-typescale-headline-medium-line-height);
  letter-spacing: var(--tg-sys-typescale-headline-medium-tracking);
}

.HeadlineSmall {
  font-family: var(--tg-sys-typescale-headline-small-font);
  font-style: var(--tg-sys-typescale-headline-small-style);
  font-weight: var(--tg-sys-typescale-headline-small-weight);
  font-size: var(--tg-sys-typescale-headline-small-size);
  line-height: var(--tg-sys-typescale-headline-small-line-height);
  letter-spacing: var(--tg-sys-typescale-headline-small-tracking);
}

.TitleLarge {
  font-family: var(--tg-sys-typescale-title-large-font);
  font-style: var(--tg-sys-typescale-title-large-style);
  font-weight: var(--tg-sys-typescale-title-large-weight);
  font-size: var(--tg-sys-typescale-title-large-size);
  line-height: var(--tg-sys-typescale-title-large-line-height);
  letter-spacing: var(--tg-sys-typescale-title-large-tracking);
}

.TitleMedium {
  font-family: var(--tg-sys-typescale-title-medium-font);
  font-style: var(--tg-sys-typescale-title-medium-style);
  font-weight: var(--tg-sys-typescale-title-medium-weight);
  font-size: var(--tg-sys-typescale-title-medium-size);
  line-height: var(--tg-sys-typescale-title-medium-line-height);
  letter-spacing: var(--tg-sys-typescale-title-medium-tracking);
}

.TitleSmall {
  font-family: var(--tg-sys-typescale-title-small-font);
  font-style: var(--tg-sys-typescale-title-small-style);
  font-weight: var(--tg-sys-typescale-title-small-weight);
  font-size: var(--tg-sys-typescale-title-small-size);
  line-height: var(--tg-sys-typescale-title-small-line-height);
  letter-spacing: var(--tg-sys-typescale-title-small-tracking);
}

.LabelLarge {
  font-family: var(--tg-sys-typescale-label-large-font);
  font-style: var(--tg-sys-typescale-label-large-style);
  font-weight: var(--tg-sys-typescale-label-large-weight);
  font-size: var(--tg-sys-typescale-label-large-size);
  line-height: var(--tg-sys-typescale-label-large-line-height);
  letter-spacing: var(--tg-sys-typescale-label-large-tracking);
}

.LabelMedium {
  font-family: var(--tg-sys-typescale-label-medium-font);
  font-style: var(--tg-sys-typescale-label-medium-style);
  font-weight: var(--tg-sys-typescale-label-medium-weight);
  font-size: var(--tg-sys-typescale-label-medium-size);
  line-height: var(--tg-sys-typescale-label-medium-line-height);
  letter-spacing: var(--tg-sys-typescale-label-medium-tracking);
}

.LabelSmall {
  font-family: var(--tg-sys-typescale-label-small-font);
  font-style: var(--tg-sys-typescale-label-small-style);
  font-weight: var(--tg-sys-typescale-label-small-weight);
  font-size: var(--tg-sys-typescale-label-small-size);
  line-height: var(--tg-sys-typescale-label-small-line-height);
  letter-spacing: var(--tg-sys-typescale-label-small-tracking);
}

.BodyLarge {
  font-family: var(--tg-sys-typescale-body-large-font);
  font-style: var(--tg-sys-typescale-body-large-style);
  font-weight: var(--tg-sys-typescale-body-large-weight);
  font-size: var(--tg-sys-typescale-body-large-size);
  line-height: var(--tg-sys-typescale-body-large-line-height);
  letter-spacing: var(--tg-sys-typescale-body-large-tracking);
}

.BodyMedium {
  font-family: var(--tg-sys-typescale-body-medium-font);
  font-style: var(--tg-sys-typescale-body-medium-style);
  font-weight: var(--tg-sys-typescale-body-medium-weight);
  font-size: var(--tg-sys-typescale-body-medium-size);
  line-height: var(--tg-sys-typescale-body-medium-line-height);
  letter-spacing: var(--tg-sys-typescale-body-medium-tracking);
}

.BodySmall {
  font-family: var(--tg-sys-typescale-body-small-font);
  font-style: var(--tg-sys-typescale-body-small-style);
  font-weight: var(--tg-sys-typescale-body-small-weight);
  font-size: var(--tg-sys-typescale-body-small-size);
  line-height: var(--tg-sys-typescale-body-small-line-height);
  letter-spacing: var(--tg-sys-typescale-body-small-tracking);
}

.TableWrapper {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.Table, .RTE table {
  --tg-table-bg: transparent;
  --tg-table-accent-bg: transparent;
  --tg-table-striped-color: var(--tg-sys-color-on-background);
  --tg-table-striped-bg: rgba(var(--tg-sys-color-on-background-rgb), 0.05);
  --tg-table-hover-color: var(--tg-sys-color-on-background);
  --tg-table-hover-bg: rgba(var(--tg-sys-color-on-background-rgb), 0.075);
  width: 100%;
  margin-bottom: 1rem;
  color: var(--tg-sys-color-on-background);
  vertical-align: top;
  border-color: var(--tg-sys-color-outline);
}
.Table > :not(caption) > * > *, .RTE table > :not(caption) > * > * {
  padding: 0.5rem 0.5rem;
  background-color: var(--tg-table-bg);
  border-bottom-width: 1px;
  box-shadow: inset 0 0 0 9999px var(--tg-table-accent-bg);
}
.Table > tbody, .RTE table > tbody {
  vertical-align: inherit;
}
.Table > thead, .RTE table > thead {
  vertical-align: bottom;
}
.Table td, .RTE table td {
  vertical-align: middle;
}

.Table--striped > tbody > tr:nth-of-type(odd) > *, .RTE table > tbody > tr:nth-of-type(odd) > * {
  background: var(--tg-table-striped-bg);
  color: var(--tg-table-striped-color);
}

.Table--hover > tbody > tr:hover > *, .RTE table > tbody > tr:hover > * {
  background: var(--tg-table-hover-bg);
  color: var(--tg-table-hover-color);
}

.Table--bordered > :not(caption) > *, .RTE table > :not(caption) > * {
  border-width: 1px 0;
}

.Table--bordered > :not(caption) > * > *, .RTE table > :not(caption) > * > * {
  border-width: 0 1px;
}

.Form__Submit {
  display: block;
}

.Form__Alert {
  margin-top: 0.5rem;
}

.Form__Item {
  margin-bottom: 1rem;
}

.Grid__Item .Form__Item {
  margin-bottom: 0;
}

.Form__ItemGroup {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}
.Form__ItemGroup > .Form__Item {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
}
.Form__ItemGroup > .Form__Item:first-child {
  -webkit-padding-end: 4px;
          padding-inline-end: 4px;
}
.Form__ItemGroup > .Form__Item:last-child {
  -webkit-padding-start: 4px;
          padding-inline-start: 4px;
}
.Form__ItemGroup > .Form__Item:focus {
  z-index: 3;
}
.Form__ItemGroup .Button, .Form__ItemGroup .shopify-payment-button__button.shopify-payment-button__button--unbranded {
  position: relative;
  z-index: 2;
}
.Form__ItemGroup .Button:focus, .Form__ItemGroup .shopify-payment-button__button.shopify-payment-button__button--unbranded:focus {
  z-index: 3;
}

.Form__Label {
  margin-bottom: 0.5rem;
}

.Form__Item--floatingLabel {
  position: relative;
}
.Form__Item--floatingLabel > .Form__Input, .Form__Item--floatingLabel > .Form__Select {
  height: calc(3.5rem + 2px);
  line-height: 1.25;
}
.Form__Item--floatingLabel > label {
  display: flex;
  align-items: center;
  position: absolute;
  color: rgba(var(--tg-sys-color-on-background-rgb), 0.5);
  top: 0;
  left: 0;
  height: auto;
  padding: 1rem 0.75rem;
  pointer-events: none;
  border: 1px solid transparent;
  transform-origin: 0 0;
  transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;
}
.Form__Item--floatingLabel > .Form__Input {
  padding: 1rem 0.75rem;
}
.Form__Item--floatingLabel > .Form__Input::-moz-placeholder {
  color: transparent;
}
.Form__Item--floatingLabel > .Form__Input:-ms-input-placeholder {
  color: transparent;
}
.Form__Item--floatingLabel > .Form__Input::placeholder {
  color: transparent;
}
.Form__Item--floatingLabel > .Form__Input:not(:-moz-placeholder-shown) {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.Form__Item--floatingLabel > .Form__Input:not(:-ms-input-placeholder) {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.Form__Item--floatingLabel > .Form__Input:focus, .Form__Item--floatingLabel > .Form__Input:not(:placeholder-shown) {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.Form__Item--floatingLabel > .Form__Input:-webkit-autofill {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.Form__Item--floatingLabel > .Form__Select {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.Form__Item--floatingLabel > .Form__Input:not(:-moz-placeholder-shown) ~ label {
  opacity: 0.65;
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.Form__Item--floatingLabel > .Form__Input:not(:-ms-input-placeholder) ~ label {
  opacity: 0.65;
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.Form__Item--floatingLabel > .Form__Input:focus ~ label, .Form__Item--floatingLabel > .Form__Input:not(:placeholder-shown) ~ label, .Form__Item--floatingLabel > .Form__Select ~ label {
  opacity: 0.65;
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.Form__Item--floatingLabel > .Form__Input:-webkit-autofill ~ label {
  opacity: 0.65;
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}

[dir=rtl] .Form__Item--floatingLabel > label {
  left: auto;
  right: 0;
}

.Form__Text {
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: var(--tg-sys-color-on-surface-variant);
}

.Form__Input {
  display: block;
  width: 100%;
  padding: 0.5rem 0.75rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--tg-sys-color-on-background);
  background-color: transparent;
  background-clip: padding-box;
  border: 1px solid var(--tg-sys-color-outline);
  border-radius: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.Form__Input::-moz-placeholder {
  color: var(--tg-sys-color-on-surface-variant);
  opacity: 1;
}

.Form__Input:-ms-input-placeholder {
  color: var(--tg-sys-color-on-surface-variant);
  opacity: 1;
}

.Form__Input::placeholder {
  color: var(--tg-sys-color-on-surface-variant);
  opacity: 1;
}

.Form__Input:disabled, .Form__Input[readonly] {
  background-color: rgba(var(--tg-sys-color-on-background-rgb), 0.04);
  opacity: 1;
}

textarea.Form__Input {
  min-height: calc(1.5em + 0.75rem + 2px);
}

.Form__InputGroup {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}

.Form__Select {
  display: block;
  width: 100%;
  padding: 0.375rem 2.25rem 0.375rem 0.75rem;
  -moz-padding-start: calc(0.75rem - 3px);
  font-weight: 400;
  line-height: 1.5;
  color: var(--tg-sys-color-on-background);
  background-color: transparent;
  background-image: var(--tg-component-icon-arrow-down);
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 16px 12px;
  border: 1px solid var(--tg-sys-color-outline);
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.Form__Select[multiple], .Form__Select[size]:not([size="1"]) {
  -webkit-padding-end: 0.75rem;
          padding-inline-end: 0.75rem;
  background-image: none;
}

.Form__Select:disabled {
  background-color: #e9ecef;
}

.Form__Select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #212529;
}

.FormCheck {
  display: block;
  min-height: 1.5rem;
  -webkit-padding-start: 1.5em;
          padding-inline-start: 1.5em;
  margin-bottom: 0.125rem;
}

.FormCheck .FormCheck__Input {
  float: left;
  -webkit-margin-start: -1.5em;
          margin-inline-start: -1.5em;
}

.FormCheck__Input {
  width: 1em;
  height: 1em;
  margin-top: 0.25em;
  vertical-align: top;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  border: 1px solid rgba(0, 0, 0, 0.25);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-print-color-adjust: exact;
  color-adjust: exact;
}

.FormCheck__Input[type=checkbox] {
  border-radius: 0.25em;
}

.FormCheck__Input[type=radio] {
  border-radius: 50%;
}

.FormCheck__Input:active {
  filter: brightness(90%);
}

.FormCheck__Input:focus {
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.FormCheck__Input:checked {
  background-color: #0d6efd;
  border-color: #0d6efd;
}

.FormCheck__Input:checked[type=checkbox] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
}

.FormCheck__Input:checked[type=radio] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
}

.FormCheck__Input[type=checkbox]:indeterminate {
  background-color: #0d6efd;
  border-color: #0d6efd;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
}

.FormCheck__Input:disabled {
  pointer-events: none;
  filter: none;
  opacity: 0.5;
}

.FormCheck__Input[disabled] ~ .FormCheck__Label, .FormCheck__Input:disabled ~ .FormCheck__Label {
  opacity: 0.5;
}

.Nav {
  display: flex;
  flex-wrap: wrap;
  -webkit-padding-start: 0;
          padding-inline-start: 0;
  margin-bottom: 0;
  list-style: none;
}

.Nav--vertical {
  flex-direction: column;
}
.Nav--vertical .Nav__Link {
  padding: 0.25rem 0;
}

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

.Nav__Link {
  display: block;
  padding: 0.5rem 1rem;
  position: relative;
  color: var(--tg-sys-color-on-background);
  text-decoration: none;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
  word-break: break-word;
}

.Nav__Link--underline {
  display: inline-block;
  padding: 0;
}
.Nav__Link--underline::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  display: block;
  bottom: -2px;
  background: currentColor;
  left: 0;
}
.Nav__Link--underline:hover:after {
  transform: scaleX(1);
  transform-origin: center left;
}

.Nav--small .Nav__Link {
  padding: 0.5rem;
}

.List {
  margin: 0;
  padding: 0;
}

.List--unstyle {
  list-style: none;
}

.List--inline {
  list-style: none;
  display: inline-flex;
  flex-wrap: wrap;
}

.List--horizontal {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}

.List--icons .List__Item {
  display: flex;
  align-items: center;
  padding: 4px;
}

.Animate--staggering .Animate__Item {
  opacity: 0;
}

.no-js .Animate--staggering .Animate__Item {
  opacity: 1;
}

.RTE {
  word-break: break-word;
}

.RTE:after {
  clear: both;
  content: "";
  display: block;
}

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

.RTE p {
  margin-bottom: 0.5rem;
}

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

.RTE table {
  table-layout: fixed;
}

@media screen and (min-width: 1008px) {
  .RTE table td {
    padding: 0.5rem 0.75rem;
  }
}
.RTE img {
  height: auto;
  max-width: 100%;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.RTE ul,
.RTE ol {
  list-style-position: inside;
  -webkit-padding-start: 2rem;
          padding-inline-start: 2rem;
}

.RTE li {
  list-style: inherit;
}

.RTE li:last-child {
  margin-bottom: 0;
}

.RTE a {
  opacity: 0.85;
  transition: text-decoration-thickness 100ms ease;
  text-decoration: underline;
  text-underline-offset: 4px;
  -webkit-text-decoration-color: var(--tg-sys-color-on-background);
          text-decoration-color: var(--tg-sys-color-on-background);
  text-decoration-thickness: 1px;
}

.RTE a:hover {
  opacity: 1;
  text-decoration-thickness: 1.5px;
  -webkit-text-decoration-color: var(--tg-sys-color-on-background);
          text-decoration-color: var(--tg-sys-color-on-background);
}

.RTE blockquote {
  display: inline-flex;
}

.RTE blockquote > * {
  margin: -0.5rem 0 -0.5rem 0;
}

.RTE table {
  font-family: var(--tg-sys-typescale-body-small-font);
  font-style: var(--tg-sys-typescale-body-small-style);
  font-weight: var(--tg-sys-typescale-body-small-weight);
  font-size: var(--tg-sys-typescale-body-small-size);
  line-height: var(--tg-sys-typescale-body-small-line-height);
  letter-spacing: var(--tg-sys-typescale-body-small-tracking);
}

.RTE :is(iframe[src*=youtube], iframe[src*="youtu.be"], iframe[src*=vimeo]) {
  aspect-ratio: 16/9;
  height: auto;
}

.RTE figure {
  margin: 0;
}

.Container {
  width: 100%;
  padding-right: calc(var(--tg-container-gutter-x) * 2);
  padding-left: calc(var(--tg-container-gutter-x) * 2);
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 641px) {
  .Container {
    padding-right: calc(var(--tg-container-gutter-x) * 3);
    padding-left: calc(var(--tg-container-gutter-x) * 3);
  }
}
@media screen and (min-width: 1280px) {
  .Container {
    padding-right: calc(var(--tg-container-gutter-x) * 4);
    padding-left: calc(var(--tg-container-gutter-x) * 4);
  }
}

.Container {
  max-width: var(--tg-container-max-width, 1280px);
}

.Container--narrow, .shopify-policy__container {
  max-width: 960px;
}

.Container--noGutter {
  padding: 0;
}

.Container--fluid {
  max-width: none;
}

.Container--relative {
  position: relative;
}

.Container--fitScreen {
  min-height: calc(var(--tg-window-height) - var(--tg-header-height, 0px) - var(--tg-announcement-bar-height, 0px) - var(--tg-page-header-height, 0px) - var(--tg-account-header-height, 0px) - 5rem);
}
@media screen and (min-width: 1280px) {
  .Container--fitScreen {
    min-height: calc(var(--tg-window-height) - var(--tg-header-height, 0px) - var(--tg-announcement-bar-height, 0px) - var(--tg-page-header-height, 0px) - var(--tg-account-header-height, 0px) - 7.5rem);
  }
}

.Container--fitScreenWithFooter {
  min-height: calc(var(--tg-window-height) - var(--tg-header-height, 0px) - var(--tg-announcement-bar-height, 0px) - var(--tg-page-header-height, 0px) - var(--tg-account-header-height, 0px) - var(--tg-footer-height, 0px) - 5rem);
}
@media screen and (min-width: 1280px) {
  .Container--fitScreenWithFooter {
    min-height: calc(var(--tg-window-height) - var(--tg-header-height, 0px) - var(--tg-announcement-bar-height, 0px) - var(--tg-page-header-height, 0px) - var(--tg-account-header-height, 0px) - var(--tg-footer-height, 0px) - 7.5rem);
  }
}

.Container--fitScreenFlexWithFooter {
  min-height: calc(var(--tg-window-height) - var(--tg-header-height, 0px) - var(--tg-announcement-bar-height, 0px) - var(--tg-page-header-height, 0px) - var(--tg-account-header-height, 0px) - var(--tg-footer-height, 0px) - 5rem);
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 1280px) {
  .Container--fitScreenFlexWithFooter {
    min-height: calc(var(--tg-window-height) - var(--tg-header-height, 0px) - var(--tg-announcement-bar-height, 0px) - var(--tg-page-header-height, 0px) - var(--tg-account-header-height, 0px) - var(--tg-footer-height, 0px) - 7.5rem);
  }
}

.Container--fitScreenFlex {
  min-height: calc(var(--tg-window-height) - var(--tg-header-height, 0px) - var(--tg-announcement-bar-height, 0px) - var(--tg-page-header-height, 0px) - var(--tg-account-header-height, 0px) - 5rem);
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 1280px) {
  .Container--fitScreenFlex {
    min-height: calc(var(--tg-window-height) - var(--tg-header-height, 0px) - var(--tg-announcement-bar-height, 0px) - var(--tg-page-header-height, 0px) - var(--tg-account-header-height, 0px) - 7.5rem);
  }
}

.Container--spacingContainerGutter {
  margin-top: calc(var(--tg-container-gutter-x) * 2);
  margin-bottom: calc(var(--tg-container-gutter-x) * 2);
}
@media screen and (min-width: 641px) {
  .Container--spacingContainerGutter {
    margin-top: calc(var(--tg-container-gutter-x) * 3);
    margin-bottom: calc(var(--tg-container-gutter-x) * 3);
  }
}
@media screen and (min-width: 1280px) {
  .Container--spacingContainerGutter {
    margin-top: calc(var(--tg-container-gutter-x) * 4);
    margin-bottom: calc(var(--tg-container-gutter-x) * 4);
  }
}

.Container--spacingMedium {
  margin-top: calc(var(--tg-container-gutter-y) * 1.5);
  margin-bottom: calc(var(--tg-container-gutter-y) * 1.5);
}
@media screen and (min-width: 641px) {
  .Container--spacingMedium {
    margin-top: calc(var(--tg-container-gutter-y) * 2);
    margin-bottom: calc(var(--tg-container-gutter-y) * 2);
  }
}
@media screen and (min-width: 1280px) {
  .Container--spacingMedium {
    margin-top: calc(var(--tg-container-gutter-y) * 3);
    margin-bottom: calc(var(--tg-container-gutter-y) * 3);
  }
}

.Container--spacingSmall {
  margin-top: calc(var(--tg-container-gutter-y) * 1);
  margin-bottom: calc(var(--tg-container-gutter-y) * 1);
}
@media screen and (min-width: 641px) {
  .Container--spacingSmall {
    margin-top: calc(var(--tg-container-gutter-y) * 1.5);
    margin-bottom: calc(var(--tg-container-gutter-y) * 1.5);
  }
}
@media screen and (min-width: 1280px) {
  .Container--spacingSmall {
    margin-top: calc(var(--tg-container-gutter-y) * 2);
    margin-bottom: calc(var(--tg-container-gutter-y) * 2);
  }
}

.Container--spacingLarge {
  margin-top: calc(var(--tg-container-gutter-y) * 2);
  margin-bottom: calc(var(--tg-container-gutter-y) * 2);
}
@media screen and (min-width: 641px) {
  .Container--spacingLarge {
    margin-top: calc(var(--tg-container-gutter-y) * 3);
    margin-bottom: calc(var(--tg-container-gutter-y) * 3);
  }
}
@media screen and (min-width: 1280px) {
  .Container--spacingLarge {
    margin-top: calc(var(--tg-container-gutter-y) * 4);
    margin-bottom: calc(var(--tg-container-gutter-y) * 4);
  }
}

.Container--spacingMediumPadding {
  padding-top: calc(var(--tg-container-gutter-y) * 1.5);
  padding-bottom: calc(var(--tg-container-gutter-y) * 1.5);
}
@media screen and (min-width: 641px) {
  .Container--spacingMediumPadding {
    padding-top: calc(var(--tg-container-gutter-y) * 2);
    padding-bottom: calc(var(--tg-container-gutter-y) * 2);
  }
}
@media screen and (min-width: 1280px) {
  .Container--spacingMediumPadding {
    padding-top: calc(var(--tg-container-gutter-y) * 3);
    padding-bottom: calc(var(--tg-container-gutter-y) * 3);
  }
}

.Container--spacingSmallPadding {
  padding-top: calc(var(--tg-container-gutter-y) * 1);
  padding-bottom: calc(var(--tg-container-gutter-y) * 1);
}
@media screen and (min-width: 641px) {
  .Container--spacingSmallPadding {
    padding-top: calc(var(--tg-container-gutter-y) * 1.5);
    padding-bottom: calc(var(--tg-container-gutter-y) * 1.5);
  }
}
@media screen and (min-width: 1280px) {
  .Container--spacingSmallPadding {
    padding-top: calc(var(--tg-container-gutter-y) * 2);
    padding-bottom: calc(var(--tg-container-gutter-y) * 2);
  }
}

.Container--spacingLargePadding {
  padding-top: calc(var(--tg-container-gutter-y) * 2);
  padding-bottom: calc(var(--tg-container-gutter-y) * 2);
}
@media screen and (min-width: 641px) {
  .Container--spacingLargePadding {
    padding-top: calc(var(--tg-container-gutter-y) * 3);
    padding-bottom: calc(var(--tg-container-gutter-y) * 3);
  }
}
@media screen and (min-width: 1280px) {
  .Container--spacingLargePadding {
    padding-top: calc(var(--tg-container-gutter-y) * 4);
    padding-bottom: calc(var(--tg-container-gutter-y) * 4);
  }
}

/*------------------------------------*\
    Grid
\*------------------------------------*/
.Grid {
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(var(--tg-grid-gutter-y) * -0.5);
  margin-right: calc(var(--tg-grid-gutter-x) * -0.5);
  margin-left: calc(var(--tg-grid-gutter-x) * -0.5);
}

.Grid__Item {
  box-sizing: border-box;
  flex-shrink: 0;
  flex-grow: 1;
  max-width: 100%;
  padding-left: calc(var(--tg-grid-gutter-x) * 0.5);
  padding-right: calc(var(--tg-grid-gutter-x) * 0.5);
  padding-top: calc(var(--tg-grid-gutter-y) * 0.5);
  padding-bottom: calc(var(--tg-grid-gutter-y) * 0.5);
  width: 100%;
}

.Carousel__Item {
  width: 100%;
}

/*------------------------------------*\
    Grid item widths，Carousel__Item 
\*------------------------------------*/
.\31 \/2, .\32 \/4, .\36 \/12 {
  flex: 0 0 auto;
  width: 50%;
}

.\31 \/3, .\34 \/12 {
  flex: 0 0 auto;
  width: 33.33333%;
}

.\32 \/3, .\38 \/12 {
  flex: 0 0 auto;
  width: 66.66667%;
}

.\31 \/4, .\33 \/12 {
  flex: 0 0 auto;
  width: 25%;
}

.\33 \/4, .\39 \/12 {
  flex: 0 0 auto;
  width: 75%;
}

.\31 \/5 {
  flex: 0 0 auto;
  width: 20%;
}

.\31 \/6 {
  flex: 0 0 auto;
  width: 16.66666%;
}

.\31 \/7 {
  flex: 0 0 auto;
  width: 14.28571%;
}

.\31 \/8 {
  flex: 0 0 auto;
  width: 12.5%;
}

.\31 \/9 {
  flex: 0 0 auto;
  width: 11.11111%;
}

.\31 \/10 {
  flex: 0 0 auto;
  width: 10%;
}

.\31 \/11 {
  flex: 0 0 auto;
  width: 9.0909%;
}

.\31 \/12 {
  flex: 0 0 auto;
  width: 8.33333%;
}

.\32 \/12 {
  flex: 0 0 auto;
  width: 16.66667%;
}

.\35 \/12 {
  flex: 0 0 auto;
  width: 41.66667%;
}

.\37 \/12 {
  flex: 0 0 auto;
  width: 58.33333%;
}

.\31 0\/12 {
  flex: 0 0 auto;
  width: 83.33333%;
}

.\31 1\/12 {
  flex: 0 0 auto;
  width: 91.66667%;
}

@media screen and (max-width: 640px) {
  .\31 \/2--small, .\32 \/4--small, .\36 \/12--small {
    flex: 0 0 auto;
    width: 50%;
  }
  .\31 \/3--small, .\34 \/12--small {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .\32 \/3--small, .\38 \/12--small {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .\31 \/4--small, .\33 \/12--small {
    flex: 0 0 auto;
    width: 25%;
  }
  .\33 \/4--small, .\39 \/12--small {
    flex: 0 0 auto;
    width: 75%;
  }
  .\31 \/5--small {
    flex: 0 0 auto;
    width: 20%;
  }
  .\31 \/6--small {
    flex: 0 0 auto;
    width: 16.66666%;
  }
  .\31 \/7--small {
    flex: 0 0 auto;
    width: 14.28571%;
  }
  .\31 \/8--small {
    flex: 0 0 auto;
    width: 12.5%;
  }
  .\31 \/9--small {
    flex: 0 0 auto;
    width: 11.11111%;
  }
  .\31 \/10--small {
    flex: 0 0 auto;
    width: 10%;
  }
  .\31 \/11--small {
    flex: 0 0 auto;
    width: 9.0909%;
  }
  .\31 \/12--small {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .\32 \/12--small {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .\35 \/12--small {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .\37 \/12--small {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .\31 0\/12--small {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .\31 1\/12--small {
    flex: 0 0 auto;
    width: 91.66667%;
  }
}
@media screen and (min-width: 641px) and (max-width: 1007px) {
  .\31 \/2--medium, .\32 \/4--medium, .\36 \/12--medium {
    flex: 0 0 auto;
    width: 50%;
  }
  .\31 \/3--medium, .\34 \/12--medium {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .\32 \/3--medium, .\38 \/12--medium {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .\31 \/4--medium, .\33 \/12--medium {
    flex: 0 0 auto;
    width: 25%;
  }
  .\33 \/4--medium, .\39 \/12--medium {
    flex: 0 0 auto;
    width: 75%;
  }
  .\31 \/5--medium {
    flex: 0 0 auto;
    width: 20%;
  }
  .\31 \/6--medium {
    flex: 0 0 auto;
    width: 16.66666%;
  }
  .\31 \/7--medium {
    flex: 0 0 auto;
    width: 14.28571%;
  }
  .\31 \/8--medium {
    flex: 0 0 auto;
    width: 12.5%;
  }
  .\31 \/9--medium {
    flex: 0 0 auto;
    width: 11.11111%;
  }
  .\31 \/10--medium {
    flex: 0 0 auto;
    width: 10%;
  }
  .\31 \/11--medium {
    flex: 0 0 auto;
    width: 9.0909%;
  }
  .\31 \/12--medium {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .\32 \/12--medium {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .\35 \/12--medium {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .\37 \/12--medium {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .\31 0\/12--medium {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .\31 1\/12--medium {
    flex: 0 0 auto;
    width: 91.66667%;
  }
}
@media screen and (max-width: 1007px) {
  .\31 \/2--medium-down, .\32 \/4--medium-down, .\36 \/12--medium-down {
    flex: 0 0 auto;
    width: 50%;
  }
  .\31 \/3--medium-down, .\34 \/12--medium-down {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .\32 \/3--medium-down, .\38 \/12--medium-down {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .\31 \/4--medium-down, .\33 \/12--medium-down {
    flex: 0 0 auto;
    width: 25%;
  }
  .\33 \/4--medium-down, .\39 \/12--medium-down {
    flex: 0 0 auto;
    width: 75%;
  }
  .\31 \/5--medium-down {
    flex: 0 0 auto;
    width: 20%;
  }
  .\31 \/6--medium-down {
    flex: 0 0 auto;
    width: 16.66666%;
  }
  .\31 \/7--medium-down {
    flex: 0 0 auto;
    width: 14.28571%;
  }
  .\31 \/8--medium-down {
    flex: 0 0 auto;
    width: 12.5%;
  }
  .\31 \/9--medium-down {
    flex: 0 0 auto;
    width: 11.11111%;
  }
  .\31 \/10--medium-down {
    flex: 0 0 auto;
    width: 10%;
  }
  .\31 \/11--medium-down {
    flex: 0 0 auto;
    width: 9.0909%;
  }
  .\31 \/12--medium-down {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .\32 \/12--medium-down {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .\35 \/12--medium-down {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .\37 \/12--medium-down {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .\31 0\/12--medium-down {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .\31 1\/12--medium-down {
    flex: 0 0 auto;
    width: 91.66667%;
  }
}
@media screen and (min-width: 641px) {
  .\31 \/2--medium-up, .\32 \/4--medium-up, .\36 \/12--medium-up {
    flex: 0 0 auto;
    width: 50%;
  }
  .\31 \/3--medium-up, .\34 \/12--medium-up {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .\32 \/3--medium-up, .\38 \/12--medium-up {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .\31 \/4--medium-up, .\33 \/12--medium-up {
    flex: 0 0 auto;
    width: 25%;
  }
  .\33 \/4--medium-up, .\39 \/12--medium-up {
    flex: 0 0 auto;
    width: 75%;
  }
  .\31 \/5--medium-up {
    flex: 0 0 auto;
    width: 20%;
  }
  .\31 \/6--medium-up {
    flex: 0 0 auto;
    width: 16.66666%;
  }
  .\31 \/7--medium-up {
    flex: 0 0 auto;
    width: 14.28571%;
  }
  .\31 \/8--medium-up {
    flex: 0 0 auto;
    width: 12.5%;
  }
  .\31 \/9--medium-up {
    flex: 0 0 auto;
    width: 11.11111%;
  }
  .\31 \/10--medium-up {
    flex: 0 0 auto;
    width: 10%;
  }
  .\31 \/11--medium-up {
    flex: 0 0 auto;
    width: 9.0909%;
  }
  .\31 \/12--medium-up {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .\32 \/12--medium-up {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .\35 \/12--medium-up {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .\37 \/12--medium-up {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .\31 0\/12--medium-up {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .\31 1\/12--medium-up {
    flex: 0 0 auto;
    width: 91.66667%;
  }
}
@media screen and (min-width: 1008px) {
  .\31 \/2--large, .\32 \/4--large, .\36 \/12--large {
    flex: 0 0 auto;
    width: 50%;
  }
  .\31 \/3--large, .\34 \/12--large {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .\32 \/3--large, .\38 \/12--large {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .\31 \/4--large, .\33 \/12--large {
    flex: 0 0 auto;
    width: 25%;
  }
  .\33 \/4--large, .\39 \/12--large {
    flex: 0 0 auto;
    width: 75%;
  }
  .\31 \/5--large {
    flex: 0 0 auto;
    width: 20%;
  }
  .\31 \/6--large {
    flex: 0 0 auto;
    width: 16.66666%;
  }
  .\31 \/7--large {
    flex: 0 0 auto;
    width: 14.28571%;
  }
  .\31 \/8--large {
    flex: 0 0 auto;
    width: 12.5%;
  }
  .\31 \/9--large {
    flex: 0 0 auto;
    width: 11.11111%;
  }
  .\31 \/10--large {
    flex: 0 0 auto;
    width: 10%;
  }
  .\31 \/11--large {
    flex: 0 0 auto;
    width: 9.0909%;
  }
  .\31 \/12--large {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .\32 \/12--large {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .\35 \/12--large {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .\37 \/12--large {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .\31 0\/12--large {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .\31 1\/12--large {
    flex: 0 0 auto;
    width: 91.66667%;
  }
}
@media screen and (min-width: 1280px) {
  .\31 \/2--x-large, .\32 \/4--x-large, .\36 \/12--x-large {
    flex: 0 0 auto;
    width: 50%;
  }
  .\31 \/3--x-large, .\34 \/12--x-large {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .\32 \/3--x-large, .\38 \/12--x-large {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .\31 \/4--x-large, .\33 \/12--x-large {
    flex: 0 0 auto;
    width: 25%;
  }
  .\33 \/4--x-large, .\39 \/12--x-large {
    flex: 0 0 auto;
    width: 75%;
  }
  .\31 \/5--x-large {
    flex: 0 0 auto;
    width: 20%;
  }
  .\31 \/6--x-large {
    flex: 0 0 auto;
    width: 16.66666%;
  }
  .\31 \/7--x-large {
    flex: 0 0 auto;
    width: 14.28571%;
  }
  .\31 \/8--x-large {
    flex: 0 0 auto;
    width: 12.5%;
  }
  .\31 \/9--x-large {
    flex: 0 0 auto;
    width: 11.11111%;
  }
  .\31 \/10--x-large {
    flex: 0 0 auto;
    width: 10%;
  }
  .\31 \/11--x-large {
    flex: 0 0 auto;
    width: 9.0909%;
  }
  .\31 \/12--x-large {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .\32 \/12--x-large {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .\35 \/12--x-large {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .\37 \/12--x-large {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .\31 0\/12--x-large {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .\31 1\/12--x-large {
    flex: 0 0 auto;
    width: 91.66667%;
  }
}
@media screen and (min-width: 1600px) {
  .\31 \/2--x-x-large, .\32 \/4--x-x-large, .\36 \/12--x-x-large {
    flex: 0 0 auto;
    width: 50%;
  }
  .\31 \/3--x-x-large, .\34 \/12--x-x-large {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .\32 \/3--x-x-large, .\38 \/12--x-x-large {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .\31 \/4--x-x-large, .\33 \/12--x-x-large {
    flex: 0 0 auto;
    width: 25%;
  }
  .\33 \/4--x-x-large, .\39 \/12--x-x-large {
    flex: 0 0 auto;
    width: 75%;
  }
  .\31 \/5--x-x-large {
    flex: 0 0 auto;
    width: 20%;
  }
  .\31 \/6--x-x-large {
    flex: 0 0 auto;
    width: 16.66666%;
  }
  .\31 \/7--x-x-large {
    flex: 0 0 auto;
    width: 14.28571%;
  }
  .\31 \/8--x-x-large {
    flex: 0 0 auto;
    width: 12.5%;
  }
  .\31 \/9--x-x-large {
    flex: 0 0 auto;
    width: 11.11111%;
  }
  .\31 \/10--x-x-large {
    flex: 0 0 auto;
    width: 10%;
  }
  .\31 \/11--x-x-large {
    flex: 0 0 auto;
    width: 9.0909%;
  }
  .\31 \/12--x-x-large {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .\32 \/12--x-x-large {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .\35 \/12--x-x-large {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .\37 \/12--x-x-large {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .\31 0\/12--x-x-large {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .\31 1\/12--x-x-large {
    flex: 0 0 auto;
    width: 91.66667%;
  }
}
.Button, .shopify-payment-button__button.shopify-payment-button__button--unbranded {
  --tg-compontent-button-border-radius: var(--tg-sys-button-border-radius);
  --tg-compontent-button-primary-background-color: var(--tg-sys-color-primary);
  --tg-compontent-button-primary-text-color: var(--tg-sys-color-on-primary);
  --tg-compontent-button-outline-border-color: var(--tg-sys-color-on-background);
  --tg-compontent-button-outline-text-color: var(--tg-sys-color-on-background);
  --tg-compontent-button-text-text-color: var(--tg-sys-color-primary);
  --tg-compontent-button-underline-text-color: var(--tg-sys-color-on-background);
  --tg-compontent-button-underline-text-color-active: var(--tg-sys-color-primary);
  --tg-compontent-button-play-background-color: var(--tg-sys-color-primary);
  --tg-compontent-button-play-text-color: var(--tg-sys-color-on-primary);
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  border: none;
  line-height: inherit;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  overflow: visible;
  vertical-align: middle;
  background: transparent;
  text-decoration: none;
  cursor: pointer;
  min-height: 44px;
  padding: 8px 24px;
  border-radius: var(--tg-compontent-button-border-radius);
  word-break: break-word;
  font-family: var(--tg-sys-typescale-label-large-font);
  font-style: var(--tg-sys-typescale-label-large-style);
  font-weight: var(--tg-sys-typescale-label-large-weight);
  font-size: var(--tg-sys-typescale-label-large-size);
  line-height: var(--tg-sys-typescale-label-large-line-height);
  letter-spacing: var(--tg-sys-typescale-label-large-tracking);
}
.Button::before, .shopify-payment-button__button.shopify-payment-button__button--unbranded::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  background-color: transparent;
  z-index: -1;
  border-radius: var(--tg-compontent-button-border-radius);
}

.Button--primary, .shopify-payment-button__button.shopify-payment-button__button--unbranded {
  background-color: var(--tg-compontent-button-primary-background-color);
  color: var(--tg-compontent-button-primary-text-color);
}
.Button--primary:hover, .shopify-payment-button__button.shopify-payment-button__button--unbranded:hover {
  box-shadow: var(--tg-sys-shadow);
  color: var(--tg-compontent-button-primary-text-color);
}
.Button--primary:hover::before, .shopify-payment-button__button.shopify-payment-button__button--unbranded:hover::before {
  opacity: var(--tg-sys-state-hover-state-layer-opacity);
  background-color: var(--tg-compontent-button-primary-text-color);
}
.Button--primary:focus, .shopify-payment-button__button.shopify-payment-button__button--unbranded:focus {
  color: var(--tg-compontent-button-primary-text-color);
}
.Button--primary:focus::before, .shopify-payment-button__button.shopify-payment-button__button--unbranded:focus::before {
  opacity: var(--tg-sys-state-focus-state-layer-opacity);
  background-color: var(--tg-compontent-button-primary-text-color);
}
.Button--primary:active, .shopify-payment-button__button.shopify-payment-button__button--unbranded:active, .Button--primary.Active, .Active.shopify-payment-button__button.shopify-payment-button__button--unbranded {
  color: var(--tg-compontent-button-primary-text-color);
}
.Button--primary:active::before, .shopify-payment-button__button.shopify-payment-button__button--unbranded:active::before, .Button--primary.Active::before, .Active.shopify-payment-button__button.shopify-payment-button__button--unbranded::before {
  opacity: var(--tg-sys-state-pressed-state-layer-opacity);
  background-color: var(--tg-compontent-button-primary-text-color);
}
.Button--primary:disabled, .shopify-payment-button__button.shopify-payment-button__button--unbranded:disabled, .Button--primary.Disabled, .Disabled.shopify-payment-button__button.shopify-payment-button__button--unbranded {
  background-color: rgba(var(--tg-sys-color-on-background-rgb), 0.12);
  color: rgba(var(--tg-sys-color-on-background-rgb), 0.38);
}

.Button--outline {
  border: 1px solid var(--tg-compontent-button-outline-border-color);
  color: var(--tg-compontent-button-outline-text-color);
}
.Button--outline:hover {
  color: var(--tg-compontent-button-outline-text-color);
}
.Button--outline:hover::before {
  opacity: var(--tg-sys-state-hover-state-layer-opacity);
  background-color: var(--tg-compontent-button-outline-text-color);
}
.Button--outline:focus {
  color: var(--tg-compontent-button-outline-text-color);
}
.Button--outline:focus::before {
  opacity: var(--tg-sys-state-focus-state-layer-opacity);
  background-color: var(--tg-compontent-button-outline-text-color);
}
.Button--outline:active, .Button--outline.Active {
  color: var(--tg-compontent-button-outline-text-color);
}
.Button--outline:active::before, .Button--outline.Active::before {
  opacity: var(--tg-sys-state-pressed-state-layer-opacity);
  background-color: var(--tg-compontent-button-outline-text-color);
}
.Button--outline:disabled, .Button--outline.Disabled {
  border-color: rgba(var(--tg-sys-color-on-background-rgb), 0.12);
  color: rgba(var(--tg-sys-color-on-background-rgb), 0.38);
}

.Button--text {
  color: var(--tg-compontent-button-text-text-color);
}
.Button--text:hover {
  color: var(--tg-compontent-button-text-text-color);
}
.Button--text:hover::before {
  opacity: var(--tg-sys-state-hover-state-layer-opacity);
  background-color: var(--tg-compontent-button-text-text-color);
}
.Button--text:focus {
  color: var(--tg-compontent-button-text-text-color);
}
.Button--text:focus::before {
  opacity: var(--tg-sys-state-focus-state-layer-opacity);
  background-color: var(--tg-compontent-button-text-text-color);
}
.Button--text:active, .Button--text.Active {
  color: var(--tg-compontent-button-text-text-color);
}
.Button--text:active::before, .Button--text.Active::before {
  opacity: var(--tg-sys-state-pressed-state-layer-opacity);
  background-color: var(--tg-compontent-button-text-text-color);
}
.Button--text:disabled, .Button--text.Disabled {
  opacity: 0.38;
  color: var(--tg-sys-color-on-background);
}

.Button--underline {
  min-width: auto;
  min-height: auto;
  color: var(--tg-compontent-button-underline-text-color);
  border: none;
  padding: 0.75rem 0;
}
.Button--underline:hover, .Button--underline:active, .Button--underline.Active {
  color: var(--tg-compontent-button-underline-text-color-active);
}
.Button--underline::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  display: block;
  bottom: 0.5rem;
  background: currentColor;
  left: 0;
}
.Button--underline:hover:after, .Button--underline:active:after, .Button--underline.Active:after {
  transition: all 0.25s ease-in;
  transform: scaleX(1.02);
  transform-origin: center left;
}

.Button.Button--icon, .Button--icon.shopify-payment-button__button.shopify-payment-button__button--unbranded {
  fill: var(--tg-sys-color-on-background);
  padding: 0.75rem;
}

.Button.Button--account, .Button--account.shopify-payment-button__button.shopify-payment-button__button--unbranded {
  padding: 0.625rem;
}

.Button.Button--play, .Button--play.shopify-payment-button__button.shopify-payment-button__button--unbranded {
  width: 3rem;
  height: 3rem;
  padding: 0.6rem;
  border-radius: 4rem;
  color: var(--tg-compontent-button-play-text-color);
  background: var(--tg-compontent-button-play-background-color);
  border-color: var(--tg-compontent-button-play-background-color);
}
@media screen and (min-width: 641px) {
  .Button.Button--play, .Button--play.shopify-payment-button__button.shopify-payment-button__button--unbranded {
    width: 4rem;
    height: 4rem;
    padding: 1rem;
  }
}
.Button.Button--play:hover, .Button--play.shopify-payment-button__button.shopify-payment-button__button--unbranded:hover {
  transform: scale(1.1);
}

.Button--small {
  padding: 0.25rem 0.75rem;
  font-family: var(--tg-sys-typescale-label-medium-font);
  font-style: var(--tg-sys-typescale-label-medium-style);
  font-weight: var(--tg-sys-typescale-label-medium-weight);
  font-size: var(--tg-sys-typescale-label-medium-size);
  line-height: var(--tg-sys-typescale-label-medium-line-height);
  letter-spacing: var(--tg-sys-typescale-label-medium-tracking);
}

.Button--full {
  width: 100%;
}

/** for pagination **/
.ButtonGroup {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
  align-items: center;
  margin: -0.25rem;
  flex-wrap: wrap;
}

.ButtonGroup > .Button, .ButtonGroup > .shopify-payment-button__button.shopify-payment-button__button--unbranded {
  position: relative;
  flex: 1 1 auto;
  margin: 0.25rem;
  flex-grow: 0;
}

.ButtonGroup > .Button:hover, .ButtonGroup > .shopify-payment-button__button.shopify-payment-button__button--unbranded:hover,
.ButtonGroup > .Button:focus,
.ButtonGroup > .shopify-payment-button__button.shopify-payment-button__button--unbranded:focus,
.ButtonGroup > .Button:active,
.ButtonGroup > .shopify-payment-button__button.shopify-payment-button__button--unbranded:active,
.ButtonGroup > .Button.Active,
.ButtonGroup > .Active.shopify-payment-button__button.shopify-payment-button__button--unbranded {
  z-index: 1;
}

.ButtonClose {
  box-sizing: content-box;
  width: 3rem;
  height: 3rem;
  padding: 0.25em 0.25em;
  color: #000;
  background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1.2rem auto no-repeat;
  border: 0;
  border-radius: 0.25rem;
  opacity: 0.5;
  z-index: 1;
}

.ButtonClose:hover {
  color: #000;
  text-decoration: none;
  opacity: 0.75;
}

.ButtonClose:disabled,
.ButtonClose.Disabled {
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  opacity: 0.25;
}

.ButtonClose--white {
  filter: invert(1) grayscale(100%) brightness(200%);
}

.Icon {
  --tg-component-icon-color: rgba(var(--tg-sys-color-on-background-rgb), 0.75);
  --tg-component-icon-active-color: var(--tg-sys-color-primary);
  display: inline-block;
  height: 20px;
  width: 20px;
  fill: currentColor;
  vertical-align: middle;
  stroke-width: 1px;
  background: 0 0;
  pointer-events: none;
}
.Active .Icon {
  fill: var(--tg-component-icon-active-color);
}

.Icon--sale {
  width: 12px;
  height: 12px;
}

.Icon--account {
  height: 24px;
  width: 24px;
}

.Icon--justify {
  height: 24px;
  width: 24px;
}

.Icon--play-fill {
  width: 1.8rem;
  height: 1.8rem;
}
@media screen and (min-width: 641px) {
  .Icon--play-fill {
    width: 2rem;
    height: 2rem;
  }
}

.Icon--media-view-in-space {
  width: 1.1rem;
  height: 1.1rem;
}
@media screen and (min-width: 641px) {
  .Icon--media-view-in-space {
    width: 1.5rem;
    height: 1.5rem;
  }
}

.Icon--sliders {
  width: 16px;
  height: 16px;
}

.Icon--layoutStroke {
  height: 20px;
  width: auto;
  stroke: var(--tg-component-icon-color);
  stroke-width: 3;
}
.Active .Icon--layoutStroke, .Icon--layoutStroke.Active {
  stroke: var(--tg-component-icon-active-color);
  stroke-width: 4;
}

.Badge {
  --tg-badge-custom-text-color: var(--tg-sys-color-on-background);
  --tg-badge-custom-background-color: var(--tg-sys-color-background);
  --tg-badge-sale-text-color: var(--tg-sys-color-on-background);
  --tg-badge-sale-background-color: var(--tg-sys-color-background);
  --tg-badge-info-text-color: var(--tg-sys-color-on-background);
  --tg-badge-info-background-color: var(--tg-sys-color-background);
  --tg-badge-sold-out-text-color: var(--tg-sys-color-on-background);
  --tg-badge-sold-out-background-color: var(--tg-sys-color-background);
  font-family: var(--tg-sys-typescale-label-small-font);
  font-style: var(--tg-sys-typescale-label-small-style);
  font-weight: var(--tg-sys-typescale-label-small-weight);
  font-size: var(--tg-sys-typescale-label-small-size);
  line-height: var(--tg-sys-typescale-label-small-line-height);
  letter-spacing: var(--tg-sys-typescale-label-small-tracking);
  display: inline-block;
  padding: 0.375rem 0.5rem;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  text-transform: uppercase;
  background-color: #000;
  color: #fff;
  word-break: break-word;
}
.Badge:empty {
  display: none;
}

.Badge--custom {
  color: var(--tg-badge-custom-text-color);
  background: var(--tg-badge-custom-background-color);
}

.Badge--onSale {
  color: var(--tg-badge-sale-text-color);
  background-color: var(--tg-badge-sale-background-color);
}

.Badge--info {
  color: var(--tg-badge-info-text-color);
  background: var(--tg-badge-info-background-color);
}

.Badge--soldOut {
  color: var(--tg-badge-sold-out-text-color);
  background: var(--tg-badge-sold-out-background-color);
}

.Toast:not(.Show) {
  display: none;
}

.SocialMedia {
  -webkit-margin-start: -0.875rem;
          margin-inline-start: -0.875rem;
}

/**
 * ----------------------------------------------------------------------------
 * Empty result
 * ----------------------------------------------------------------------------
 */
.EmptyResult {
  margin: 8rem auto;
  text-align: center;
  word-break: break-all;
}
.EmptyResult .EmptyResult__Title {
  font-family: var(--tg-sys-typescale-headline-medium-font);
  font-style: var(--tg-sys-typescale-headline-medium-style);
  font-weight: var(--tg-sys-typescale-headline-medium-weight);
  font-size: var(--tg-sys-typescale-headline-medium-size);
  line-height: var(--tg-sys-typescale-headline-medium-line-height);
  letter-spacing: var(--tg-sys-typescale-headline-medium-tracking);
  margin-bottom: 1rem;
}

.EmptyResult__Action {
  margin-top: 1rem;
}

@media screen and (min-width: 641px) {
  .EmptyResult {
    margin: 12rem auto;
  }
}
@media screen and (min-width: 1600px) {
  .EmptyResult {
    margin: 16rem auto;
  }
}
.SectionHeader {
  --tg-section-header-text-color: var(--tg-sys-color-on-background);
  --tg-compontent-button-outline-border-color: var(--tg-section-header-text-color);
  --tg-compontent-button-outline-text-color: var(--tg-section-header-text-color);
  margin-bottom: 1.5rem;
  word-break: break-word;
}
.SectionHeader .SectionHeader__Subheading {
  font-family: var(--tg-sys-typescale-title-medium-font);
  font-style: var(--tg-sys-typescale-title-medium-style);
  font-weight: var(--tg-sys-typescale-title-medium-weight);
  font-size: var(--tg-sys-typescale-title-medium-size);
  line-height: var(--tg-sys-typescale-title-medium-line-height);
  letter-spacing: var(--tg-sys-typescale-title-medium-tracking);
}
.SectionHeader .SectionHeader__Heading + .SectionHeader__Subheading {
  margin-top: 0.25rem;
}
.SectionHeader .SectionHeader__Description {
  font-family: var(--tg-sys-typescale-body-large-font);
  font-style: var(--tg-sys-typescale-body-large-style);
  font-weight: var(--tg-sys-typescale-body-large-weight);
  font-size: var(--tg-sys-typescale-body-large-size);
  line-height: var(--tg-sys-typescale-body-large-line-height);
  letter-spacing: var(--tg-sys-typescale-body-large-tracking);
}
.SectionHeader .SectionHeader__Heading:not(.CustomSize) {
  font-family: var(--tg-sys-typescale-headline-medium-font);
  font-style: var(--tg-sys-typescale-headline-medium-style);
  font-weight: var(--tg-sys-typescale-headline-medium-weight);
  font-size: var(--tg-sys-typescale-headline-medium-size);
  line-height: var(--tg-sys-typescale-headline-medium-line-height);
  letter-spacing: var(--tg-sys-typescale-headline-medium-tracking);
}

.SectionHeader--flex .SectionHeader__Heading {
  margin-bottom: 0;
}
@media screen and (min-width: 641px) {
  .SectionHeader--flex {
    display: flex;
    justify-content: space-between;
    margin-bottom: 2rem;
    flex-wrap: wrap;
  }
}
.SectionHeader--flex .SectionHeader__Left {
  color: var(--tg-section-header-text-color);
}
@media screen and (max-width: 640px) {
  .SectionHeader--flex .SectionHeader__Left + .SectionHeader__Right {
    margin-top: -0.5rem;
  }
}
@media screen and (min-width: 641px) {
  .SectionHeader--flex .SectionHeader__Left {
    width: 50%;
  }
}
@media screen and (min-width: 641px) {
  .SectionHeader--flex .SectionHeader__Right {
    width: 50%;
  }
}
.SectionHeader--flex .SectionHeader__Right .SectionHeader__Description + .SectionHeader__Button {
  margin-top: 0.5rem;
}

.SectionHeader__ButtonWrapper {
  margin-top: 1rem;
}

.SectionHeader--withContainerNoGutter {
  margin-left: 0;
  margin-right: 0;
  margin-top: calc(var(--tg-container-gutter-y) * 2);
  padding-left: calc(var(--tg-container-gutter-x) * 2);
  padding-right: calc(var(--tg-container-gutter-x) * 2);
}
@media screen and (min-width: 641px) {
  .SectionHeader--withContainerNoGutter {
    margin-top: calc(var(--tg-container-gutter-y) * 3);
    padding-left: calc(var(--tg-container-gutter-x) * 3);
    padding-right: calc(var(--tg-container-gutter-x) * 3);
  }
}
@media screen and (min-width: 1280px) {
  .SectionHeader--withContainerNoGutter {
    margin-top: calc(var(--tg-container-gutter-y) * 4);
    padding-left: calc(var(--tg-container-gutter-x) * 4);
    padding-right: calc(var(--tg-container-gutter-x) * 4);
  }
}

/**
 * ----------------------------------------------------------------------------
 * Share buttons
 * ----------------------------------------------------------------------------
 */
.ShareButtons {
  display: flex;
  align-items: center;
}
.ShareButtons .ShareTitle {
  font-family: var(--tg-sys-typescale-label-large-font);
  font-style: var(--tg-sys-typescale-label-large-style);
  font-weight: var(--tg-sys-typescale-label-large-weight);
  font-size: var(--tg-sys-typescale-label-large-size);
  line-height: var(--tg-sys-typescale-label-large-line-height);
  letter-spacing: var(--tg-sys-typescale-label-large-tracking);
}
.ShareButtons .ShareList {
  -webkit-margin-start: 1rem;
          margin-inline-start: 1rem;
}

.SvgPlaceholder {
  background: #696969;
  fill: #a1a1a1;
}

.Alert {
  --tg-alert-color-success-text: var(--tg-sys-color-on-background);
  --tg-alert-success-background: var(--tg-sys-color-background);
  --tg-alert-color-danger-text: #ba1b1b;
  --tg-alert-color-danger-background: var(--tg-sys-color-background);
  --tg-alert-color-info-text: var(--tg-sys-color-on-background);
  --tg-alert-info-background: var(--tg-sys-color-background);
  position: relative;
  padding: 1rem 0;
  margin-bottom: 1rem;
  word-break: break-word;
}

.Alert__Title {
  font-family: var(--tg-sys-typescale-title-small-font);
  font-style: var(--tg-sys-typescale-title-small-style);
  font-weight: var(--tg-sys-typescale-title-small-weight);
  font-size: var(--tg-sys-typescale-title-small-size);
  line-height: var(--tg-sys-typescale-title-small-line-height);
  letter-spacing: var(--tg-sys-typescale-title-small-tracking);
}

.Alert--small {
  padding: 0.5rem 0;
}

.Alert__Link {
  font-weight: 700;
  text-decoration: underline;
}

.Alert--success {
  color: var(--tg-alert-color-success-text);
  background: var(--tg-alert-success-background);
}
.Alert--success .Alert__Title {
  color: var(--tg-alert-color-success-text);
}
.Alert--success a {
  color: var(--tg-alert-color-success-text);
  -webkit-text-decoration-color: var(--tg-alert-color-success-text);
          text-decoration-color: var(--tg-alert-color-success-text);
}

.Alert--danger {
  color: var(--tg-alert-color-danger-text);
  background-color: var(--tg-alert-color-danger-background);
}
.Alert--danger .Alert__Title {
  color: var(--tg-alert-color-danger-text);
}
.Alert--danger a {
  color: var(--tg-alert-color-danger-text);
  -webkit-text-decoration-color: var(--tg-alert-color-danger-text);
          text-decoration-color: var(--tg-alert-color-danger-text);
}

.Alert--info {
  color: var(--tg-alert-color-info-text);
  background: var(--tg-alert-info-background);
}
.Alert--info .Alert__Title {
  color: var(--tg-alert-color-info-text);
}
.Alert--info a {
  color: var(--tg-alert-color-info-text);
  -webkit-text-decoration-color: var(--tg-alert-color-info-text);
          text-decoration-color: var(--tg-alert-color-info-text);
}

.LocalizationForm {
  display: flex;
  align-items: center;
}
.LocalizationForm .CountrySelector, .LocalizationForm .LanguageSelector {
  display: block;
}
.LocalizationForm .Dropdown__Body {
  max-height: 50vh;
  overflow-y: auto;
}
.LocalizationForm .Dropdown__Body .Dropdown__Item {
  padding: 0;
}
.LocalizationForm .Dropdown__Body .Dropdown__Item .Button, .LocalizationForm .Dropdown__Body .Dropdown__Item .shopify-payment-button__button.shopify-payment-button__button--unbranded {
  justify-content: flex-start;
  padding: 0 1rem;
}
.LocalizationForm .CountryFlagWrapper {
  --tg-aspect-ratio: 1.333333;
  width: 20px;
  height: 15px;
  -webkit-margin-end: 0.625rem;
          margin-inline-end: 0.625rem;
}
.LocalizationForm .CountrySelector + .LanguageSelector {
  -webkit-padding-start: 0.5rem;
          padding-inline-start: 0.5rem;
}

#MainContent .shopify-section:first-child > .Container--specialSpacingFirstSection {
  margin-top: 0;
}
#MainContent .shopify-section:last-child:not(:first-child) > .Container--specialSpacingLastSection.Container--noGutter {
  margin-bottom: -5rem;
}
@media screen and (min-width: 1280px) {
  #MainContent .shopify-section:last-child:not(:first-child) > .Container--specialSpacingLastSection.Container--noGutter {
    margin-bottom: -7.5rem;
  }
}
#MainContent .shopify-section:last-child:not(:first-child) > .Container--specialSpacingLastSection.Container--fluid:not(.Container--noGutter) {
  margin-bottom: calc(var(--tg-container-gutter-x) * 2 - 5rem);
}
@media screen and (min-width: 641px) {
  #MainContent .shopify-section:last-child:not(:first-child) > .Container--specialSpacingLastSection.Container--fluid:not(.Container--noGutter) {
    margin-bottom: calc(var(--tg-container-gutter-x) * 3 - 5rem);
  }
}
@media screen and (min-width: 1280px) {
  #MainContent .shopify-section:last-child:not(:first-child) > .Container--specialSpacingLastSection.Container--fluid:not(.Container--noGutter) {
    margin-bottom: calc(var(--tg-container-gutter-x) * 4 - 7.5rem);
  }
}

.shopify-section--hidden {
  display: none;
}

.shopify-challenge__container {
  margin-top: 200px;
  margin-bottom: 100px;
}
@media screen and (min-width: 641px) {
  .shopify-challenge__container {
    margin-top: 300px;
    margin-bottom: 200px;
  }
}

.shopify-payment-button__button.shopify-payment-button__button--unbranded {
  padding: 0 24px;
}
.shopify-payment-button__button.shopify-payment-button__button--unbranded:hover {
  color: var(--tg-compontent-button-primary-text-color) !important;
  background-color: var(--tg-compontent-button-primary-background-color) !important;
  border-color: var(--tg-compontent-button-primary-background-color) !important;
}

.shopify-payment-button__button--hidden {
  display: none;
}

.shopify-policy__container {
  margin-top: 2rem;
}
@media screen and (min-width: 641px) {
  .shopify-policy__container {
    margin-top: 4rem;
  }
}
.shopify-policy__container .shopify-policy__title {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
@media screen and (min-width: 641px) {
  .shopify-policy__container .shopify-policy__title {
    margin-top: 2rem;
    margin-bottom: 2rem;
  }
}

.legal-link {
  color: #DE3163;
  text-decoration: underline;
}
.product__description-short {
  text-align: center;
   margin-bottom: 10px;
}

.product__price {
  margin-top: 4px !important;
  margin-bottom: 0.3px !important;
  text-align: left !important;
}

.product__reviews {
  text-align: left !important;
  margin-top: 0.2rem !important; /* espace entre le prix et les étoiles */
  justify-content: flex-start !important;
}

.product__info-container .jdgm-widget {
  margin-top: 0.4rem !important;
  margin-bottom: 0.6rem !important;
  justify-content: flex-start !important;
  text-align: left !important;
}

.jdgm-widget .jdgm-stars {
  justify-content: flex-start !important;
}

.shopify-payment-button__button {
  width: 100% !important;
  border-radius: 0px !important;
  font-family: inherit !important;
  font-size: 15px !important;
  padding: 12px 0 !important;
}

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

  div[class*="policy-banner"] p {
    margin: 0 0 10px 0;
  }

  div[class*="policy-banner"] a {
    color: #DE3163;
    text-decoration: underline;
    font-weight: 500;
  }

  div[class*="policy-banner"] button {
    background-color: transparent;
    border: 1px solid #DE3163;
    border-radius: 0;
    font-family: 'Cormorant Garamond', serif;
    font-size: 13px;
    color: #DE3163;
    padding: 6px 12px;
    margin-top: 6px;
    width: 100%;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
  }

  div[class*="policy-banner"] button:hover {
    background-color: #DE3163;
    color: white;
  }

@media (min-width: 750px){
  div[class*="policy-banner"]{
    position:fixed!important;
    bottom:20px!important;
    left:20px!important;
    max-width:360px;
    padding:16px 20px;
    background:#fff;
    border-radius:8px;
    box-shadow:0 4px 8px rgba(0,0,0,.05);
    font:14px/1.6 'Cormorant Garamond',serif;
    color:#1a1a1a;
    z-index:9999;
    animation:fadeInSlideUp .4s ease-out;
  }

  /* règle séparée, sans imbrication */
  div[class*="policy-banner"] button{
    font-size:14px;
  }
}

/* Corrige le centrage du wrapper sur mobile (<749 px) */
/* MOBILE < 749 px – wrapper + bandeau coin bas-gauche */
/* ↓ mobile < 749 px */
@media (max-width: 749px){

  /* On repositionne simplement le wrapper */
  .shopify-policy-banner__wrapper{
    position:fixed!important;
    bottom:0!important;
    left:0!important;
    display:flex!important;
    justify-content:flex-start!important;
    align-items:flex-end!important;
    width:auto!important;
    padding:0!important;
    pointer-events:none;
    z-index:9999!important;
  }

  /* Override spécifique à la bannière */
  div[class*="policy-banner"],
  .shopify-policy-banner{
    /* marge par rapport aux bords */
    margin:0 0 10px 10px!important; 
    /* taille & padding réduits */
    max-width:300px;
    padding:14px 16px;
    /* typo plus petite */
    font-size:13px;
    line-height:1.5;
  }
}

/* Animation (une seule fois) */
@keyframes fadeInSlideUp {
  from { opacity:0; transform:translateY(20px); }
  to   { opacity:1; transform:translateY(0); }
}
.PaymentOptionsNote {
  font-size: 15px;
  color: #111;
  text-align: left;
  margin-top: 12px;
  display: flex;
  align-items: center;
  gap: 6px;
}

.PaymentOptionsNote::before {
  content: "💳";
}
.PaymentOptionsNote {
  font-size: 14px;
  color: #111;
  margin-top: 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.payment-item {
  display: flex;
  align-items: center;
  gap: 6px;
}

.icon-payment {
  flex-shrink: 0;
}

.PaymentOptionsNote::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-credit-card' viewBox='0 0 24 24'%3E%3Crect x='1' y='4' width='22' height='16' rx='2' ry='2'/%3E%3Cline x1='1' y1='10' x2='23' y2='10'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
}
.Header.is-sticky svg,
.Header.is-sticky .Icon {
  color: #1a1a1a;
  fill: #1a1a1a;
}

/* Réassurance unifiée (produit + panier) */
.reassurance-block,
.product__info-container .custom-reassurance-box {
  background-color: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 6px;
  padding: 10px 12px;
  font-size: 13px;
  line-height: 1.4;
  margin-top: 10px;
  color: #111;
  box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

.reassurance-block ul,
.product__info-container .custom-reassurance-box ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.reassurance-block li,
.product__info-container .custom-reassurance-box li {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}

.reassurance-block li:last-child,
.product__info-container .custom-reassurance-box li:last-child {
  margin-bottom: 0;
}

.reassurance-block svg,
.product__info-container .custom-reassurance-box svg {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  color: #DE3163; /* cerise 10ème */
}

/* ==========================================================================
   HERO MOBILE & COULEUR ICÔNES – ajouts perso  (22-04-2025)
   ========================================================================== */

/* 1 ▸ Limite la hauteur + overlay pour la lisibilité
   -------------------------------------------------- */
@media (max-width: 749px){
  .Hero--main{                       /* adapte si ta section s’appelle .Banner, .Slideshow__Slide… */
    min-height: 100vh !important;     
    position: relative;
  }
  .Hero--main::after{                /* dégradé noir ▼ */
    content:"";
    position:absolute; inset:0;
    background:linear-gradient(to bottom,
                rgba(0,0,0,0) 40%,   /* transparent en haut */
                rgba(0,0,0,.6) 100%);
    z-index:0; pointer-events:none;
  }
  .Hero--main .Heading{              /* titre */
    margin-top:60px;                 /* pour éviter le logo "10ᵉ" */
    line-height:1.1;
    text-shadow:0 0 6px rgba(0,0,0,.6);
  }
  .Hero--main .Button{
    position:relative; z-index:2;    /* reste cliquable au-dessus du dégradé */
  }
}

/* 2 ▸ Icônes bordeaux quand le header est transparent
   --------------------------------------------------- */
#Header.is-top .Icon,
#Header.is-top svg{                  /* burger, loupe, sac… */
  color:#DE3163;                     /* bordeaux de la charte */
  fill:#DE3163;
}

/* 3 ▸ Header collant = repasse en noir (déjà présent, mais on uniformise)
   ---------------------------------------------------------------------- */
#Header.is-sticky .Icon,
#Header.is-sticky svg{
  color:#1a1a1a;
  fill:#1a1a1a;
}

/* 4 ▸ Chevron de scroll optionnel
   --------------------------------*/
@media (max-width:749px){
  .ScrollHint{
    position:absolute; bottom:12px; left:50%;
    transform:translateX(-50%);
    width:24px;height:24px; z-index:3;
    animation:bounce 1.6s infinite ease-in-out;
    pointer-events:none;
  }
  @keyframes bounce{
    0%,20%,50%,80%,100%{transform:translate(-50%,0)}
    40%{transform:translate(-50%,8px)}
    60%{transform:translate(-50%,4px)}
  }
}

.Nav__Link--levelTwo {
  padding-left: 16px;
  font-weight: 500;
  font-size: 0.94em;
  display: block;
}

.Nav__Link--levelThree {
  padding-left: 32px;
  font-style: italic;
  font-size: 0.9em;
  opacity: 0.8;
  display: block;
}

.Drawer__BackLink {
  text-align: left;
  color: #000;
}
.Drawer__BackLink:hover {
  text-decoration: none;
  color: #de3163; /* couleur cerise de ta marque */
}

.Nav__Link--levelTwo:hover {
  background-color: #f7f7f7;
  text-decoration: underline;
}

.Nav__Link--levelThree:hover {
  background-color: #f0f0f0;
  text-decoration: underline;
  opacity: 1;
}

/* ====== OPTIMISATION MENU DESKTOP ====== */

.Nav__Item.Nav__Item--levelOne {
  position: relative;
  padding: 0 12px;
}

.Nav__Link.Nav__Link--levelOne {
  font-size: 14px;
  font-weight: 500;
  color: #111;
  padding: 12px 0;
  text-decoration: none;
  display: block;
}

.Nav__Link.Nav__Link--levelOne:hover {
  color: #DE3163; /* couleur cerise 10ème */
}

.DropdownMenu__Body,
.DropdownMenu__Body--mega {
  top: 100%;
  left: 0;
  position: absolute;
  background-color: #fff;
  z-index: 1000;
  padding: 20px;
  min-width: 220px;
  box-shadow: 0 8px 16px rgba(0,0,0,0.1);
  display: none;
}

.Nav__Item:hover > .DropdownMenu__Body,
.Nav__Item:hover > .DropdownMenu__Body--mega {
  display: block;
}

.Nav--vertical .Nav__Link {
  padding: 8px 0;
  font-size: 14px;
  font-weight: 400;
  color: #444;
}

.Nav--vertical .Nav__Link:hover {
  color: #DE3163;
  background-color: #f9f9f9;
}

.MegaMenu__Item {
  padding: 10px;
  min-width: 200px;
}

.MegaMenu {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}

@media (max-width: 749px) {
  /* Titre produit */
  .ProductMeta__Title,
  .PageHeader__Title {
    font-size: 20px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    margin-bottom: 4px !important;
  }

  /* Prix */
  .ProductMeta__Price {
    font-size: 18px !important;
    font-weight: 600 !important;
    margin-bottom: 6px !important;
    color: #DE3163 !important;
  }

  /* Étoiles / Avis */
  .spr-badge {
    font-size: 12px !important; /* plus fin */
    opacity: 0.9 !important;    /* discret */
    margin-top: 0 !important;
  }

  .ProductMeta__PriceList {
    margin-bottom: 10px !important; 
  }

  .ProductForm__AddToCart {
    width: 100% !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    padding: 14px 0 !important;
    border-radius: 4px !important;
    margin-top: 8px !important;
  }
}

/* === Section Dernières pièces disponibles (isolée) === */
#shopify-section-featured-collection {
  background: #f9f7f5;
  padding: 80px 40px 100px;
  text-align: center;
}

/* Bouton */
#shopify-section-featured-collection .Button--primary {
  background: #000;
  color: #fff;
  border-radius: 0;
  margin-top: 16px;
  transition: all 0.3s ease;
}

#shopify-section-featured-collection .Button--primary:hover {
  background: #de3163;
  color: #fff;
}

/* Typographie interne */
#shopify-section-featured-collection .SectionHeader__Heading {
  font-family: "Playfair Display", serif;
  font-weight: 600;
  font-size: 34px;
  letter-spacing: 0.3px;
  line-height: 1.3;
  margin-bottom: 15px;
  color: #000;
  letter-spacing: 0.3px;
}

#shopify-section-featured-collection .SectionHeader__Description {
  font-family: "Lora", serif;
  font-size: 17px;
  color: #3a3a3a;
  line-height: 1.8;
  margin-bottom: 0 auto 30px;
  max-width: 680px;

}

/* Produits */
#shopify-section-featured-collection .ProductList {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 35px !important;
  margin-top: 60px;
}

#shopify-section-featured-collection .ProductItem {
  flex: 1 1 250px;
  max-width: 300px;
  margin-bottom: 40px;
}

/* Responsive */
@media (max-width: 768px) {
  #shopify-section-featured-collection {
    padding: 60px 20px 80px;
  }

  #shopify-section-featured-collection .SectionHeader__Heading {
    font-size: 26px;
    line-height: 1.4;
  }

  #shopify-section-featured-collection .ProductItem {
    max-width: 100%;
    margin-bottom: 30px;
  }

  #shopify-section-featured-collection .ProductList {
    gap: 20px !important;
    margin-top: 40px;
  }

  #shopify-section-featured-collection .SectionHeader {
    margin-bottom: 40px;
  }

  #shopify-section-featured-collection .SectionHeader__Description {
    font-size: 15px;
    margin-bottom: 25px;
    line-height: 1.7;
  }
}

#shopify-section-featured-collection .SectionHeader__Description,
#shopify-section-featured-collection p {
  line-height: 1.8;
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}

#shopify-section-featured-collection .SectionHeader {
  margin-bottom: 60px;
  max-width: 850px;
  margin: 0 auto 60px auto;
  text-align: center;
}

/* ========================================================================== */
/* 🎨 10ÈME PARIS – HOME PAGE STYLES */
/* ========================================================================== */

/* === Harmonisation des blocs de section === */
.section-10eme {
  background-color: #f9f7f5;
  color: #111;
  font-family: 'Cormorant Garamond', serif;
  text-align: center;
  padding: 90px 30px;
  line-height: 1.7;
}

.section-10eme h2,
.section-10eme .SectionHeader__Heading {
  font-family: "Playfair Display", serif;
  font-size: 34px;
  font-weight: 600;
  letter-spacing: 0.3px;
  color: #000;
  margin-bottom: 16px;
}

.section-10eme p,
.section-10eme .SectionHeader__Description {
  font-size: 16px;
  color: #3a3a3a;
  margin: 0 auto 24px;
  max-width: 680px;
}

/* === Boutons === */
.section-10eme .Button,
.section-10eme .button,
.section-10eme .shopify-payment-button__button--unbranded {
  border: 1px solid #000;
  background: transparent;
  color: #000;
  font-size: 15px;
  padding: 11px 28px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  transition: all 0.3s ease;
  border-radius: 0;
}

.section-10eme .Button:hover,
.section-10eme .button:hover {
  background: #000;
  color: #fff;
}

.section-10eme .Button--primary:hover {
  background: #de3163;
  border-color: #de3163;
}

/* === Grille produits dans les sections "collection" === */
.section-10eme .ProductList {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 35px;
  margin-top: 60px;
}

.section-10eme .ProductItem {
  flex: 1 1 250px;
  max-width: 300px;
}

/* === Adaptation mobile === */
@media (max-width: 768px) {
  .section-10eme {
    padding: 70px 20px;
  }

  .section-10eme h2 {
    font-size: 26px;
    line-height: 1.4;
  }

  .section-10eme p {
    font-size: 15px;
    line-height: 1.6;
  }

  .section-10eme .ProductList {
    gap: 20px;
    margin-top: 40px;
  }

  .section-10eme .ProductItem {
    max-width: 100%;
  }
}

/* === Fond beige doux pour sections alternées === */
.section-10eme-alt {
  background-color: #fff;
}

/* ======== FIX DÉFINITIF : Section "Sac du mois" ======== */

/* Les deux colonnes 50% */
#shopify-section-template--27132553363801__image_with_text_kwFeYj 
  .FeaturedRow__ImageWrapper,
#shopify-section-template--27132553363801__image_with_text_kwFeYj 
  .FeaturedRow__SmallImageWrapper {
    flex: 0 0 50% !important;
    max-width: 50% !important;
}

/* Mobile = images naturelles */
@media (max-width: 749px) {
    #shopify-section-template--27132553363801__image_with_text_kwFeYj .FeaturedRow__Body {
    flex-direction: column !important;
    gap: 20px !important;
  }
}

/* Mobile */
@media (max-width: 749px) {
  #shopify-section-{{ section.id }} img {
    height: auto !important;
  }
}

/* ===== Image with text – bloc "Sac du mois" ===== */

.FeaturedRow__ImageWrapper.fixed-height {
  height: 600px;              /* hauteur fixe desktop */
  overflow: hidden;           /* pour couper proprement si l'image dépasse */
}

.FeaturedRow__ImageWrapper.fixed-height .FeaturedRow__Image {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;          /* remplissage propre sans déformation */
}

/* Sur mobile : on repasse en hauteur auto pour éviter un pavé trop grand */
@media (max-width: 749px) {
  .FeaturedRow__ImageWrapper.fixed-height {
    height: auto;
  }

  .FeaturedRow__ImageWrapper.fixed-height .FeaturedRow__Image {
    height: auto;
  }
}

/* Correction taille petite image — compatible avec tous les thèmes */
.FeatureRow__SmallImageWrapper .FeaturedRow__SmallImage,
.FeatureRow__SmallImageWrapper .FeatureRow__SmallImage {
  height: 600px !important;
  width: 100% !important;
  max-height: 600px !important;
}

/* L’image interne */
.FeatureRow__SmallImageWrapper .FeaturedRow__SmallImage img,
.FeatureRow__SmallImageWrapper .FeatureRow__SmallImage img {
  height: 100% !important;
  width: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* Désactiver les ratios Shopify */
.FeatureRow__SmallImageWrapper .FeaturedRow__SmallImage.Ratio::before,
.FeatureRow__SmallImageWrapper .FeatureRow__SmallImage.Ratio::before {
  padding-top: 0 !important;
}

