/** Shopify CDN: Minification failed

Line 8682:14 Unexpected "\"Center Stone Shape\""
Line 8726:13 Expected identifier but found whitespace
Line 8726:14 Unexpected "0"
Line 8780:3 Expected "}" to go with "{"

**/
/* ---- Contents ----
  - Theme Module: Space
  - Theme Vendor: Flickity
  - Theme Module: Keyframes
  - Theme Module: Reset
  - Theme Partial: Typography
  - Theme Partial: Spacing
  - Theme Partial: Grid
  - Theme Partials: Tables
  - Theme Partials: Buttons
  - Theme Partials: Forms
  - Theme Partials: Helpers
  - Theme Partials: Global Sections
  - Theme Partials: Load Layout
*/

/* ---- Theme Module: Space ---- */
:root {
  --base-size: 16px;
  --space-ratio: 1.25;
  --space-ratio-md: 1.25;
  --space-ratio-lg: 1.333
}

@media(max-width:767px) {
  :root {
    --space-12: 95.3674316406px;
    --space-11: 76.2939453125px;
    --space-10: 61.03515625px;
    --space-9: 48.828125px;
    --space-8: 39.0625px;
    --space-7: 31.25px;
    --space-6: 25px;
    --space-5: 20px;
    --space-4: 16px;
    --space-3: 12.8px;
    --space-2: 10.24px;
    --space-1: 8.192px;
    --space-0: 0
  }
}

@media(min-width:768px) and (max-width:1023px) {
  :root {
    --space-12: 95.3674316406px;
    --space-11: 76.2939453125px;
    --space-10: 61.03515625px;
    --space-9: 48.828125px;
    --space-8: 39.0625px;
    --space-7: 31.25px;
    --space-6: 25px;
    --space-5: 20px;
    --space-4: 16px;
    --space-3: 12.8px;
    --space-2: 10.24px;
    --space-1: 8.192px;
    --space-0: 0
  }
}

@media(min-width:1024px) {
  :root {
    --space-12: 159.5001801693px;
    --space-11: 119.6550488892px;
    --space-10: 89.7637275988px;
    --space-9: 67.3396306068px;
    --space-8: 50.5173522931px;
    --space-7: 37.897488592px;
    --space-6: 28.430224px;
    --space-5: 21.328px;
    --space-4: 16px;
    --space-3: 12.0030007502px;
    --space-2: 9.0045016881px;
    --space-1: 6.7550650323px;
    --space-0: 0
  }
}

/* ---- Theme Vendor: Flickity ---- */
/* Flickity v2.2.1
https://flickity.metafizzy.co */
.flickity-enabled {
  position: relative
}

.flickity-enabled:focus {
  outline: 0
}

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

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

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

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

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

.flickity-button {
  position: absolute;
  background: hsla(0, 0%, 100%, .75);
  border: none;
  color: #333
}

.flickity-button:hover {
  background: var(--directional-hover);
  cursor: pointer
}

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

.flickity-button:active {
  opacity: .6
}

.flickity-button:disabled {
  opacity: .3;
  cursor: auto;
  pointer-events: none
}

.flickity-button-icon {
  fill: currentColor
}

.flickity-prev-next-button {
  top: 50%;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  transform: translateY(-50%)
}

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

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

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

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

.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
}

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

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

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

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

/* Custom Flickity & PhotoSwipe Styles */
.flickity-enabled.is-fade .flickity-slider>* {
  pointer-events: none;
  z-index: 0;
}

.flickity-enabled.is-fade .flickity-slider>.is-selected {
  pointer-events: auto;
  z-index: 1;
}

.flickity-prev-next-button:disabled {
  opacity: 0.5;
}

.flickity-slider .carousel-cell {
  width: 100%;
}

.flickity-prev-next-button {
  position: absolute;
  left: 0;
  top: 26px;
  right: unset;
  background: var(--directional-bg);
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  -webkit-mask-image: none;
  mask-image: none;
  text-align: center;
  cursor: pointer;
  z-index: 1;
  border-radius: 50%;
  margin-bottom: 0;
  padding: 0;
}

.flickity-prev-next-button:hover {
  opacity: 1;
}

.flickity-button-icon {
  height: 16px;
  width: auto;
  position: relative;
  top: unset !important;
  left: unset !important;
  right: unset !important;
  bottom: unset !important;
}

button.pswp__button.pswp__button--arrow--left,
button.pswp__button.pswp__button--arrow--right {
  color: var(--directional-text) !important;
}

button.pswp__button.pswp__button--arrow--left svg,
button.pswp__button.pswp__button--arrow--right svg {
  fill: var(--directional-text) !important;
}

.pswp__button svg .hover-fill {
  fill: var(--directional-text);
  transition: all .3s ease;
}

.flickity-prev-next-button .flickity-button-icon {
  fill: var(--directional-text);
  transition: all .3s ease
}

.flickity-prev-next-button:disabled {
  color: var(--directional-text) !important;
  background-color: transparent !important;
}

.flickity-prev-next-button:disabled {
  border: unset !important;
}

.flickity-button:focus,
.flickity-button:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}

.flickity-page-dots {
  text-align: center;
  max-width: 80%;
  margin: 0 auto;
  bottom: unset !important;
  left: unset !important;
  position: relative;
  display: block;
  margin-top: 20px;
}

.flickity-page-dots .dot {
  border-radius: unset;
  width: 36px;
  height: 3px;
  margin: 0 3px 5px 0;
}

@media (max-width: 767px) {
  .flickity-page-dots .dot {
    width: 20px;
  }
}

.flickity-enabled:focus,
.flickity-enabled:focus-visible {
  outline: none !important;
}

/* ---- Theme Module: Keyframes ---- */
@keyframes fadeInOpacity {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes fadeOutOpacity {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@keyframes fadeInAnimation {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes loadingRipple {
  0% {
    top: 36px;
    left: 36px;
    width: 0;
    height: 0;
    opacity: 1;
  }

  100% {
    top: 0;
    left: 0;
    width: 72px;
    height: 72px;
    opacity: 0;
  }
}

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

@keyframes dash {
  0% {
    stroke-dasharray: 1, 150;
    stroke-dashoffset: 0;
  }

  50% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -35;
  }

  100% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -124;
  }
}

/* ---- Theme Module: Reset ---- */
img:not([src]):not([srcset]) {
  visibility: hidden;
}

html {
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}

* {
  margin: 0;
}

body {
  overflow-x: hidden;
}

body,
pre,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
form,
fieldset,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}

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

style {
  display: none !important;
}

figure {
  margin: 1em 40px;
}

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

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

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

a img {
  vertical-align: middle;
}

small,
small a {
  font-size: .75rem;
}

.rte img {
  height: unset;
  width: auto;
}

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

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

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

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

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

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

input {
  border-radius: 0;
}

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

textarea {
  overflow: auto;
}

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

.no-js .product__section-images #main-slider .carousel-cell {
  z-index: 99;
  opacity: 1 !important;
  animation: fadeIn ease .2s;
}

.no-js .product__section-images {
  visibility: visible !important;
}

.cart-type--no_js_cart .ajax-cart__form-wrapper--nojs {
  display: block !important;
}

.js #no-js-update-cart,
.js .ajax-cart__form-wrapper--nojs {
  display: none;
}

.cart-type--no_js_cart .ajax-cart__item-remove--no-js,
.no-js .ajax-cart__item-remove--no-js {
  display: block !important;
  position: absolute;
  top: 10px;
  right: 10px;
}

.cart-type--no_js_cart .ajax-cart__item-remove--js,
.no-js .ajax-cart__item-remove--js {
  display: none;
}

.cart-type--no_js_cart .ajax-cart__qty-control--down,
.cart-type--no_js_cart .ajax-cart__qty-control--up,
.no-js .ajax-cart__qty-control--down,
.no-js .ajax-cart__qty-control--up {
  display: none;
}

.cart-type--no_js_cart .ajax-cart__item-quantity,
.no-js .ajax-cart__item-quantity {
  text-align: center !important;
  border-bottom: 1px solid;
}

.cart-type--no_js_cart .ajax-cart__item-update--no-js.btn-as-link {
  margin-bottom: 10px !important;
}

.cart-type--no_js_cart .ajax-cart__qty-input--no-js,
.no-js .ajax-cart__qty-input--no-js {
  max-width: 90px;
  margin: 0;
}

.cart-type--no_js_cart .ajax-cart__item-update--no-js,
.no-js .ajax-cart__item-update--no-js {
  display: block !important;
  margin-top: 8px;
  text-decoration: underline;
  font-size: 13px;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.no-js .ajax-cart__accordion--shipping-calc {
  display: none;
}

.cart-type--no_js_cart .ajax-cart__form-wrapper--nojs,
.no-js .ajax-cart__accordion .accordion-content {
  display: block !important;
}

.no-js .loading-wrapper,
.cart-type--no_js_cart .loading-wrapper {
  display: none;
}

.show {
  display: block;
  opacity: 1;
  animation-name: fadeInOpacity;
  animation-iteration-count: 1;
  animation-timing-function: ease-in;
  animation-duration: .8s;
}

html,
body {
  height: 100%;
}

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

ul.bullet {
  list-style: disc;
  padding-left: var(--space-4);
}

ol {
  margin: 0;
  padding-left: var(--space-4);
}

ol ol {
  margin: 0;
}

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

.box-ratio {
  display: block;
  height: 0;
  width: 100%;
  overflow: hidden;
}

.box-ratio img {
  display: block;
  width: 100%;
  animation: fadeInAnimation ease 3s animation-iteration-count:1;
  animation-fill-mode: forwards;
}

.box-ratio .placeholder-svg {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.animation--active [data-section-loaded] {
  opacity: 0;
  visibility: hidden;
  transition: 2000ms cubic-bezier(.23, 1, .32, 1);
}

.animation-text--active [data-section-loaded] .animate--text {
  opacity: 0;
  transition: opacity 0.5s ease-in, transform 0.5s ease;
}

.animation--active [data-section-loaded] .animate--text {
  transition-delay: 0.15s;
}

.animation-text--active [data-section-loaded] .animate--text.delay--1 {
  transition-delay: 0.20s;
}

.animation-text--active [data-section-loaded] .animate--text.delay--2 {
  transition-delay: 0.25s;
}

.animation-text--active [data-section-loaded] .animate--text.delay--3 {
  transition-delay: 0.3s;
}

.animation-text--active [data-section-loaded] .animate--text.delay--4 {
  transition-delay: 0.35s;
}

.animation-text--active [data-section-loaded] .animate--text.delay--5 {
  transition-delay: 0.4s;
}

.animation-text--active [data-section-loaded] .animate--text.delay--6 {
  transition-delay: 0.45s;
}

.animation-text--active [data-section-loaded] .animate--text.delay--7 {
  transition-delay: 0.5s;
}

.animation-text--active [data-section-loaded] .animate--text.delay--8 {
  transition-delay: 0.55s;
}

.animation-text--active [data-section-loaded] .animate--text.delay--9 {
  transition-delay: 0.6s;
}

.animation-text--active [data-section-loaded] .animate--text.delay--10 {
  transition-delay: 0.65s;
}

.animation-text--active [data-section-loaded] .animate--text.delay--11 {
  transition-delay: 0.7s;
}

.animation-text--active [data-section-loaded] .animate--text.delay--12 {
  transition-delay: 0.75s;
}

.animation-text--active [data-section-loaded] .animate--text.delay--13 {
  transition-delay: 0.8s;
}

.animation-text--active [data-section-loaded] .animate--text.delay--14 {
  transition-delay: 0.85s;
}

.animation-text--active [data-section-loaded] .animate--text.delay--15 {
  transition-delay: 0.9s;
}

.animation-text--active [data-section-loaded] .animate--text.delay--16 {
  transition-delay: .95s;
}

.animation-type--fadeInUp [data-section-loaded],
.animation-text-type--fadeInUp [data-section-loaded] .animate--text,
.animation-text-type--fadeInUp [data-section-loaded] .slide-animate {
  transform: translateY(50px);
}

.animation-type--fadeInDown [data-section-loaded],
.animation-text-type--fadeInDown [data-section-loaded] .animate--text,
.animation-text-type--fadeInDown [data-section-loaded] .slide-animate {
  transform: translateY(-50px);
}

.animation-type--fadeInLeft [data-section-loaded],
.animation-text-type--fadeInLeft [data-section-loaded] .animate--text,
.animation-text-type--fadeInLeft [data-section-loaded] .slide-animate {
  transform: translateX(25px);
}

.animation-type--fadeInRight [data-section-loaded],
.animation-text-type--fadeInRight [data-section-loaded] .animate--text,
.animation-text-type--fadeInRight [data-section-loaded] .slide-animate {
  transform: translateX(-25px);
}

.animation-type--turnIn [data-section-loaded],
.animation-text-type--turnIn [data-section-loaded] .animate--text,
.animation-text-type--turnIn [data-section-loaded] .slide-animate {
  transform: scaleX(-1);
  transform-style: preserve-3d;
  backface-visibility: hidden;
}

.animation-type--zoomIn [data-section-loaded],
.animation-text-type--zoomIn [data-section-loaded] .animate--text,
.animation-text-type--zoomIn [data-section-loaded] .slide-animate {
  transform: scale(1.3);
}

.animation--active [data-section-loaded="true"],
.no-js .animation--active [data-section-loaded="false"],
.animation--active .section--reloaded [data-section-loaded="false"],
.animation--active [data-section-loaded="false"].no-section-animation,
.animation-text--active [data-section-loaded="true"] .animate--text,
.no-js .animation-text--active [data-section-loaded="false"] .animate--text,
.animation-text--active .section--reloaded [data-section-loaded="false"] .animate--text {
  opacity: 1;
  visibility: visible;
  transform: translate(0);
}

/* Setting a transform property will create a new logical coordinates breaking the positioning of slideouts and other positioned content */
.animation--active .no-section-animation {
  transform: none !important;
}

.placeholder-svg {
  background: #efefef;
  fill: #c5c5c5;
}

.onboard {
  width: 100%;
  height: 100%
}

.onboard svg {
  width: 100%;
  height: 100%;
}

.video-wrapper {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}

.video-wrapper iframe,
.video-wrapper video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

a:focus-visible,
*:focus-visible,
.flickity-button:focus-visible,
.section-featured-collection__wrapper--carousel .flickity-enabled.is-draggable:focus-visible,
.product__section--main .product__quantity-input:focus-visible {
  outline: var(--keyboard-focus) var(--keyboard-border-style) var(--keyboard-border-weight) !important;
  outline-offset: var(--keyboard-border-offset-weight) !important;
}

*:focus:not(:focus-visible),
.section-featured-collection__wrapper--carousel .flickity-enabled.is-draggable:focus:not(:focus-visible),
.product__section--main .product__quantity-input:focus:not(:focus-visible) {
  outline: none !important;
  outline-offset: unset !important;
}

.product-loop>a,
.collection-loop__item>a {
  display: block;
  width: 100%;
}

.product-loop a:hover,
.collection-loop__item a:hover,
.product-loop a:hover .h5,
.collection-loop__item a:hover .h5 {
  color: var(--text-color);
}

::-webkit-scrollbar {
  width: 5px;
  height: 5px;
}

::-webkit-scrollbar-button {
  width: 0;
  height: 0;
}

::-webkit-scrollbar-thumb {
  background: var(--dotted-color);
  border: 0 none #fff;
  border-radius: 50px;
}

::-webkit-scrollbar-thumb:hover {
  background: #fff;
}

::-webkit-scrollbar-thumb:active {
  background: #000;
}

::-webkit-scrollbar-track {
  background: var(--border-color);
  border: 0 none #fff;
  border-radius: 50px;
}

::-webkit-scrollbar-track:hover {
  background: var(--border-color);
}

::-webkit-scrollbar-track:active {
  background: #333;
}

::-webkit-scrollbar-corner {
  background: transparent;
}

body {
  background-color: var(--background);
}

/* ---- Theme Partial: Typography ---- */
.rte p a,
.rte a {
  text-decoration: underline
}

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

.rte ul {
  list-style-type: disc;
  padding-left: var(--space-4);
  /* margin: 0; */
}

p,
a,
.rte {
  line-height: calc((var(--font-size) * .3750) + var(--font-size));
  margin-bottom: calc(var(--font-size) * 1.5)
}

.rte p:last-child {
  margin-bottom: 0
}

blockquote,
.rte,
ul,
ol {
  margin-bottom: calc(var(--font-size) * 1.5) !important;
}

ul li,
ul li a,
ol li,
ol li a {
  font-size: var(--font-size);
  line-height: 1.6
}

ul.header__navigation a {
  font-size: var(--nav-size);
  line-height: 1.3;
  font-style: var(--nav-style);
  font-family: var(--nav-family);
  font-weight: var(--nav-weight);
  letter-spacing: var(--nav-spacing);
  text-transform: var(--nav-transform);
}

ul.header__cart-links__wrapper a,
ul.header__cart-links__wrapper span {
  font-size: var(--nav-size);
  font-style: var(--nav-style);
  font-family: var(--nav-family);
  font-weight: var(--nav-weight);
  letter-spacing: var(--nav-spacing);
  text-transform: var(--nav-transform);
}

small,
small a,
small p {
  font-size: var(--font-size);
  display: block
}

.sm-caps {
  font-size: var(--font-size);
  text-transform: uppercase;
  line-height: 1.6
}

.sm-caps>small {
  display: inline;
}

blockquote,
blockquote p {
  font-size: var(--font-size);
  line-height: 1.3;
  font-style: italic
}

blockquote cite {
  font-size: var(--font-size-sm);
  line-height: 1.3;
  font-style: normal
}

svg {
  vertical-align: middle;
}

svg.md {
  transform: scale(1.3);
  transform-origin: center
}

svg.lg {
  transform: scale(1.3);
  transform-origin: center
}

h1,
h1 a,
.h1,
.h1 a,
h2,
h2 a,
.h2,
.h2 a,
h3,
h3 a,
.h3,
.h3 a,
h4,
h4 a,
.h4,
.h4 a,
h5,
h5 a,
.h5,
.h5 a,
h6,
h6 a,
.h6,
.h6 a {
  color: var(--text-color);
  font-family: var(--heading-family);
  font-style: var(--heading-style);
  font-weight: var(--heading-weight);
  letter-spacing: var(--heading-spacing);
  margin-bottom: var(--space-4);
  text-decoration: none
}

body,
.main-font,
p,
.rte,
td,
th,
small {
  color: var(--text-color);
  font-size: var(--font-size);
  line-height: 1.5;
  font-family: var(--main-family);
  font-style: var(--main-style);
  font-weight: var(--main-weight);
  letter-spacing: var(--main-spacing)
}

strong,
b {
  font-weight: 500 !important;
  /* Thay đổi giá trị theo ý bạn */
}

.value {
  font-weight: 400;
  /* Mặc định là 400 */
}

/* Khi .value nằm trong <strong> hoặc <b> thì font-weight là 500 */
strong .value,
b .value {
  font-weight: 500 !important;
}


a {
  color: var(--text-color);
  font-family: var(--main-family);
  font-size: var(--font-size);
}

span {
  font-size: var(--font-size)
}

span.sm,
small {
  font-size: var(--font-size-sm)
}

p.onsale,
span.onsale {
  color: var(--sale-color) !important
}

h1,
h1 a,
.h1,
.h1 a {
  font-size: var(--h1-size);
  line-height: calc((var(--h1-size) * .17) + var(--h1-size));
}

h2,
h2 a,
.h2,
.h2 a {
  font-size: var(--h2-size);
  line-height: calc((var(--h2-size) * .17) + var(--h2-size));
}

h3,
h3 a,
.h3,
.h3 a {
  font-size: var(--h3-size);
  line-height: calc((var(--h3-size) * .17) + var(--h3-size));
}

h4,
h4 a,
.h4,
.h4 a {
  font-size: calc(var(--font-size) + 2px);
  line-height: calc((var(--font-size) * .5) + var(--font-size));
}

h5,
h5 a,
.h5,
.h5 a {
  font-size: calc(var(--font-size) + 1px);
  line-height: calc((var(--font-size) * .5) + var(--font-size));
}

h6,
h6 a,
.h6,
.h6 a {
  font-size: var(--font-size);
}

a:visited {
  color: var(--text-color);
}

.rte a,
.rte a:visited {
  color: var(--text-color);
}

.rte a:hover,
ul.hover-list li>a:hover {
  color: var(--text-color);
}

a.no-hover:hover {
  color: unset;
}

::-webkit-input-placeholder {
  font-family: var(--main-family);
  font-weight: var(--main-weight);
  font-style: var(--main-style);
  font-display: swap;
  letter-spacing: var(--main-spacing);
}

::-moz-placeholder {
  font-family: var(--main-family);
  font-weight: var(--main-weight);
  font-style: var(--main-style);
  font-display: swap;
  letter-spacing: var(--main-spacing);
}

:-ms-input-placeholder {
  font-family: var(--main-family);
  font-weight: var(--main-weight);
  font-style: var(--main-style);
  font-display: swap;
  letter-spacing: var(--main-spacing);
}

:-moz-placeholder {
  font-family: var(--main-family);
  font-weight: var(--main-weight);
  font-style: var(--main-style);
  font-display: swap;
  letter-spacing: var(--main-spacing);
}

/* ---- Theme Partial: Spacing ---- */
/* --- Margin --- */
.m0 {
  margin: 0
}

.mt0 {
  margin-top: 0
}

.mr0 {
  margin-right: 0
}

.mb0 {
  margin-bottom: 0 !important
}

.ml0 {
  margin-left: 0
}

.mx0 {
  margin-left: 0;
  margin-right: 0
}

.my0 {
  margin-top: 0;
  margin-bottom: 0
}

.m1 {
  margin: var(--space-1)
}

.mt1 {
  margin-top: var(--space-1)
}

.mtn1 {
  margin-top: calc(var(--space-1) * -1)
}

.mr1 {
  margin-right: var(--space-1)
}

.mrn1 {
  margin-right: calc(var(--space-1) * -1)
}

.mb1 {
  margin-bottom: var(--space-1)
}

.mbn1 {
  margin-bottom: calc(var(--space-1) * -1)
}

.ml1 {
  margin-left: var(--space-1)
}

.mln1 {
  margin-left: calc(var(--space-1) * -1)
}

.mx1 {
  margin-left: var(--space-1);
  margin-right: var(--space-1)
}

.my1 {
  margin-top: var(--space-1);
  margin-bottom: var(--space-1)
}

.m2 {
  margin: var(--space-2)
}

.mt2 {
  margin-top: var(--space-2)
}

.mtn2 {
  margin-top: calc(var(--space-2) * -1)
}

.mr2 {
  margin-right: var(--space-2)
}

.mrn2 {
  margin-right: calc(var(--space-2) * -1)
}

.mb2 {
  margin-bottom: var(--space-2)
}

.mbn2 {
  margin-bottom: calc(var(--space-2) * -1)
}

.ml2 {
  margin-left: var(--space-2)
}

.mln2 {
  margin-left: calc(var(--space-2) * -1)
}

.mx2 {
  margin-left: var(--space-2);
  margin-right: var(--space-2)
}

.my2 {
  margin-top: var(--space-2);
  margin-bottom: var(--space-2)
}

.m3 {
  margin: var(--space-3)
}

.mt3 {
  margin-top: var(--space-3)
}

.mtn3 {
  margin-top: calc(var(--space-3) * -1)
}

.mr3 {
  margin-right: var(--space-3)
}

.mrn3 {
  margin-right: calc(var(--space-3) * -1)
}

.mb3 {
  margin-bottom: var(--space-3)
}

.mbn3 {
  margin-bottom: calc(var(--space-3) * -1)
}

.ml3 {
  margin-left: var(--space-3)
}

.mln3 {
  margin-left: calc(var(--space-3) * -1)
}

.mx3 {
  margin-left: var(--space-3);
  margin-right: var(--space-3)
}

.my3 {
  margin-top: var(--space-3);
  margin-bottom: var(--space-3)
}

.m4 {
  margin: var(--space-4)
}

.mt4 {
  margin-top: var(--space-4)
}

.mtn4 {
  margin-top: calc(var(--space-4) * -1)
}

.mr4 {
  margin-right: var(--space-4)
}

.mrn4 {
  margin-right: calc(var(--space-4) * -1)
}

.mb4 {
  margin-bottom: var(--space-4)
}

.mbn4 {
  margin-bottom: calc(var(--space-4) * -1)
}

.ml4 {
  margin-left: var(--space-4)
}

.mln4 {
  margin-left: calc(var(--space-4) * -1)
}

.mx4 {
  margin-left: var(--space-4);
  margin-right: var(--space-4)
}

.my4 {
  margin-top: var(--space-4);
  margin-bottom: var(--space-4)
}

.m5 {
  margin: var(--space-5)
}

.mt5 {
  margin-top: var(--space-5)
}

.mtn5 {
  margin-top: calc(var(--space-5) * -1)
}

.mr5 {
  margin-right: var(--space-5)
}

.mrn5 {
  margin-right: calc(var(--space-5) * -1)
}

.mb5 {
  margin-bottom: var(--space-5)
}

.mbn5 {
  margin-bottom: calc(var(--space-5) * -1)
}

.ml5 {
  margin-left: var(--space-5)
}

.mln5 {
  margin-left: calc(var(--space-5) * -1)
}

.mx5 {
  margin-left: var(--space-5);
  margin-right: var(--space-5)
}

.my5 {
  margin-top: var(--space-5);
  margin-bottom: var(--space-5)
}

.m6 {
  margin: var(--space-6)
}

.mt6 {
  margin-top: var(--space-6)
}

.mtn6 {
  margin-top: calc(var(--space-6) * -1)
}

.mr6 {
  margin-right: var(--space-6)
}

.mrn6 {
  margin-right: calc(var(--space-6) * -1)
}

.mb6 {
  margin-bottom: var(--space-6)
}

.mbn6 {
  margin-bottom: calc(var(--space-6) * -1)
}

.ml6 {
  margin-left: var(--space-6)
}

.mln6 {
  margin-left: calc(var(--space-6) * -1)
}

.mx6 {
  margin-left: var(--space-6);
  margin-right: var(--space-6)
}

.my6 {
  margin-top: var(--space-6);
  margin-bottom: var(--space-6)
}

.m7 {
  margin: var(--space-7)
}

.mt7 {
  margin-top: var(--space-7)
}

.mtn7 {
  margin-top: calc(var(--space-7) * -1)
}

.mr7 {
  margin-right: var(--space-7)
}

.mrn7 {
  margin-right: calc(var(--space-7) * -1)
}

.mb7 {
  margin-bottom: var(--space-7)
}

.mbn7 {
  margin-bottom: calc(var(--space-7) * -1)
}

.ml7 {
  margin-left: var(--space-7)
}

.mln7 {
  margin-left: calc(var(--space-7) * -1)
}

.mx7 {
  margin-left: var(--space-7);
  margin-right: var(--space-7)
}

.my7 {
  margin-top: var(--space-7);
  margin-bottom: var(--space-7)
}

.m8 {
  margin: var(--space-8)
}

.mt8 {
  margin-top: var(--space-8)
}

.mtn8 {
  margin-top: calc(var(--space-8) * -1)
}

.mr8 {
  margin-right: var(--space-8)
}

.mrn8 {
  margin-right: calc(var(--space-8) * -1)
}

.mb8 {
  margin-bottom: var(--space-8)
}

.mbn8 {
  margin-bottom: calc(var(--space-8) * -1)
}

.ml8 {
  margin-left: var(--space-8)
}

.mln8 {
  margin-left: calc(var(--space-8) * -1)
}

.mx8 {
  margin-left: var(--space-8);
  margin-right: var(--space-8)
}

.my8 {
  margin-top: var(--space-8);
  margin-bottom: var(--space-8)
}

.m9 {
  margin: var(--space-9)
}

.mt9 {
  margin-top: var(--space-9)
}

.mtn9 {
  margin-top: calc(var(--space-9) * -1)
}

.mr9 {
  margin-right: var(--space-9)
}

.mrn9 {
  margin-right: calc(var(--space-9) * -1)
}

.mb9 {
  margin-bottom: var(--space-9)
}

.mbn9 {
  margin-bottom: calc(var(--space-9) * -1)
}

.ml9 {
  margin-left: var(--space-9)
}

.mln9 {
  margin-left: calc(var(--space-9) * -1)
}

.mx9 {
  margin-left: var(--space-9);
  margin-right: var(--space-9)
}

.my9 {
  margin-top: var(--space-9);
  margin-bottom: var(--space-9)
}

.m10 {
  margin: var(--space-10)
}

.mt10 {
  margin-top: var(--space-10)
}

.mtn10 {
  margin-top: calc(var(--space-10) * -1)
}

.mr10 {
  margin-right: var(--space-10)
}

.mrn10 {
  margin-right: calc(var(--space-10) * -1)
}

.mb10 {
  margin-bottom: var(--space-10)
}

.mbn10 {
  margin-bottom: calc(var(--space-10) * -1)
}

.ml10 {
  margin-left: var(--space-10)
}

.mln10 {
  margin-left: calc(var(--space-10) * -1)
}

.mx10 {
  margin-left: var(--space-10);
  margin-right: var(--space-10)
}

.my10 {
  margin-top: var(--space-10);
  margin-bottom: var(--space-10)
}

.m11 {
  margin: var(--space-11)
}

.mt11 {
  margin-top: var(--space-11)
}

.mr11 {
  margin-right: var(--space-11)
}

.mb11 {
  margin-bottom: var(--space-11)
}

.ml11 {
  margin-left: var(--space-11)
}

.mx11 {
  margin-left: var(--space-11);
  margin-right: var(--space-11)
}

.my11 {
  margin-top: var(--space-11);
  margin-bottom: var(--space-11)
}

.m12 {
  margin: var(--space-12)
}

.mt12 {
  margin-top: var(--space-12)
}

.mr12 {
  margin-right: var(--space-12)
}

.mb12 {
  margin-bottom: var(--space-12)
}

.ml12 {
  margin-left: var(--space-12)
}

.mx12 {
  margin-left: var(--space-12);
  margin-right: var(--space-12)
}

.my12 {
  margin-top: var(--space-12);
  margin-bottom: var(--space-12)
}

.mxn1 {
  margin-left: calc(var(--space-1) * -1);
  margin-right: calc(var(--space-1) * -1)
}

.mxn2 {
  margin-left: calc(var(--space-2) * -1);
  margin-right: calc(var(--space-2) * -1)
}

.mxn3 {
  margin-left: calc(var(--space-3) * -1);
  margin-right: calc(var(--space-3) * -1)
}

.mxn4 {
  margin-left: calc(var(--space-4) * -1);
  margin-right: calc(var(--space-4) * -1)
}

.mxn5 {
  margin-left: calc(var(--space-5) * -1);
  margin-right: calc(var(--space-5) * -1)
}

.mxn6 {
  margin-left: calc(var(--space-6) * -1);
  margin-right: calc(var(--space-6) * -1)
}

.mxn7 {
  margin-left: calc(var(--space-7) * -1);
  margin-right: calc(var(--space-7) * -1)
}

.mxn8 {
  margin-left: calc(var(--space-8) * -1);
  margin-right: calc(var(--space-8) * -1)
}

.mxn9 {
  margin-left: calc(var(--space-9) * -1);
  margin-right: calc(var(--space-9) * -1)
}

.mxn10 {
  margin-left: calc(var(--space-10) * -1);
  margin-right: calc(var(--space-10) * -1)
}

.mxn11 {
  margin-left: calc(var(--space-11) * -1);
  margin-right: calc(var(--space-11) * -1)
}

.mxn12 {
  margin-left: calc(var(--space-12) * -1);
  margin-right: calc(var(--space-12) * -1)
}

.m-auto {
  margin: auto
}

.mt-auto {
  margin-top: auto
}

.mr-auto {
  margin-right: auto
}

.mb-auto {
  margin-bottom: auto
}

.ml-auto {
  margin-left: auto
}

.mx-auto {
  margin-left: auto;
  margin-right: auto
}

.my-auto {
  margin-top: auto;
  margin-bottom: auto
}

/* --- Padding --- */
.p0 {
  padding: 0
}

.pt0 {
  padding-top: 0
}

.pr0 {
  padding-right: 0
}

.pb0 {
  padding-bottom: 0
}

.pl0 {
  padding-left: 0
}

.px0,
.grid__wrapper.px0 {
  padding-left: 0;
  padding-right: 0
}

.py0 {
  padding-top: 0;
  padding-bottom: 0
}

.p1 {
  padding: var(--space-1)
}

.pt1 {
  padding-top: var(--space-1)
}

.pr1 {
  padding-right: var(--space-1)
}

.pb1 {
  padding-bottom: var(--space-1)
}

.pl1 {
  padding-left: var(--space-1)
}

.py1 {
  padding-top: var(--space-1);
  padding-bottom: var(--space-1)
}

.px1 {
  padding-left: var(--space-1);
  padding-right: var(--space-1)
}

.p2 {
  padding: var(--space-2)
}

.pt2 {
  padding-top: var(--space-2)
}

.pr2 {
  padding-right: var(--space-2)
}

.pb2 {
  padding-bottom: var(--space-2)
}

.pl2 {
  padding-left: var(--space-2)
}

.py2 {
  padding-top: var(--space-2);
  padding-bottom: var(--space-2)
}

.px2 {
  padding-left: var(--space-2);
  padding-right: var(--space-2)
}

.p3 {
  padding: var(--space-3)
}

.pt3 {
  padding-top: var(--space-3)
}

.pr3 {
  padding-right: var(--space-3)
}

.pb3 {
  padding-bottom: var(--space-3)
}

.pl3 {
  padding-left: var(--space-3)
}

.py3 {
  padding-top: var(--space-3);
  padding-bottom: var(--space-3)
}

.px3 {
  padding-left: var(--space-3);
  padding-right: var(--space-3)
}

.p4 {
  padding: var(--space-4)
}

.pt4 {
  padding-top: var(--space-4)
}

.pr4 {
  padding-right: var(--space-4)
}

.pb4 {
  padding-bottom: var(--space-4)
}

.pl4 {
  padding-left: var(--space-4)
}

.py4 {
  padding-top: var(--space-4);
  padding-bottom: var(--space-4)
}

.px4 {
  padding-left: var(--space-4);
  padding-right: var(--space-4)
}

.p5 {
  padding: var(--space-5)
}

.pt5 {
  padding-top: var(--space-5)
}

.pr5 {
  padding-right: var(--space-5)
}

.pb5 {
  padding-bottom: var(--space-5)
}

.pl5 {
  padding-left: var(--space-5)
}

.py5 {
  padding-top: var(--space-5);
  padding-bottom: var(--space-5)
}

.px5 {
  padding-left: var(--space-5);
  padding-right: var(--space-5)
}

.p6 {
  padding: var(--space-6)
}

.pt6 {
  padding-top: var(--space-6)
}

.pr6 {
  padding-right: var(--space-6)
}

.pb6 {
  padding-bottom: var(--space-6)
}

.pl6 {
  padding-left: var(--space-6)
}

.py6 {
  padding-top: var(--space-6);
  padding-bottom: var(--space-6)
}

.px6 {
  padding-left: var(--space-6);
  padding-right: var(--space-6)
}

.p7 {
  padding: var(--space-7)
}

.pt7 {
  padding-top: var(--space-7)
}

.pr7 {
  padding-right: var(--space-7)
}

.pb7 {
  padding-bottom: var(--space-7)
}

.pl7 {
  padding-left: var(--space-7)
}

.py7 {
  padding-top: var(--space-7);
  padding-bottom: var(--space-7)
}

.px7 {
  padding-left: var(--space-7);
  padding-right: var(--space-7)
}

.p8 {
  padding: var(--space-8)
}

.pt8 {
  padding-top: var(--space-8)
}

.pr8 {
  padding-right: var(--space-8)
}

.pb8 {
  padding-bottom: var(--space-8)
}

.pl8 {
  padding-left: var(--space-8)
}

.py8 {
  padding-top: var(--space-8);
  padding-bottom: var(--space-8)
}

.px8 {
  padding-left: var(--space-8);
  padding-right: var(--space-8)
}

.p9 {
  padding: var(--space-9)
}

.pt9 {
  padding-top: var(--space-9)
}

.pr9 {
  padding-right: var(--space-9)
}

.pb9 {
  padding-bottom: var(--space-9)
}

.pl9 {
  padding-left: var(--space-9)
}

.py9 {
  padding-top: var(--space-9);
  padding-bottom: var(--space-9)
}

.px9 {
  padding-left: var(--space-9);
  padding-right: var(--space-9)
}

.p10 {
  padding: var(--space-10)
}

.pt10 {
  padding-top: var(--space-10)
}

.pr10 {
  padding-right: var(--space-10)
}

.pb10 {
  padding-bottom: var(--space-10)
}

.pl10 {
  padding-left: var(--space-10)
}

.py10 {
  padding-top: var(--space-10);
  padding-bottom: var(--space-10)
}

.px10 {
  padding-left: var(--space-10);
  padding-right: var(--space-10)
}

.p11 {
  padding: var(--space-11)
}

.pt11 {
  padding-top: var(--space-11)
}

.pr11 {
  padding-right: var(--space-11)
}

.pb11 {
  padding-bottom: var(--space-11)
}

.pl11 {
  padding-left: var(--space-11)
}

.py11 {
  padding-top: var(--space-11);
  padding-bottom: var(--space-11)
}

.px11 {
  padding-left: var(--space-11);
  padding-right: var(--space-11)
}

.p12 {
  padding: var(--space-12)
}

.pt12 {
  padding-top: var(--space-12)
}

.pr12 {
  padding-right: var(--space-12)
}

.pb12 {
  padding-bottom: var(--space-12)
}

.pl12 {
  padding-left: var(--space-12)
}

.py12 {
  padding-top: var(--space-12);
  padding-bottom: var(--space-12)
}

.px12 {
  padding-left: var(--space-12);
  padding-right: var(--space-12)
}

@media (min-width: 768px) and (max-width: 1023px) {

  /* --- Margin + Padding Medium --- */
  .md-m0 {
    margin: 0
  }

  .md-mt0 {
    margin-top: 0
  }

  .md-mr0 {
    margin-right: 0
  }

  .md-mb0 {
    margin-bottom: 0
  }

  .md-ml0 {
    margin-left: 0
  }

  .md-mx0 {
    margin-left: 0;
    margin-right: 0
  }

  .md-my0 {
    margin-top: 0;
    margin-bottom: 0
  }

  .md-m1 {
    margin: var(--space-1)
  }

  .md-mt1 {
    margin-top: var(--space-1)
  }

  .md-mtn1 {
    margin-top: calc(var(--space-1) * -1)
  }

  .md-mr1 {
    margin-right: var(--space-1)
  }

  .md-mrn1 {
    margin-right: calc(var(--space-1) * -1)
  }

  .md-mb1 {
    margin-bottom: var(--space-1)
  }

  .md-mbn1 {
    margin-bottom: calc(var(--space-1) * -1)
  }

  .md-ml1 {
    margin-left: var(--space-1)
  }

  .md-mln1 {
    margin-left: calc(var(--space-1) * -1)
  }

  .md-mx1 {
    margin-left: var(--space-1);
    margin-right: var(--space-1)
  }

  .md-my1 {
    margin-top: var(--space-1);
    margin-bottom: var(--space-1)
  }

  .md-m2 {
    margin: var(--space-2)
  }

  .md-mt2 {
    margin-top: var(--space-2)
  }

  .md-mtn2 {
    margin-top: calc(var(--space-2) * -1)
  }

  .md-mr2 {
    margin-right: var(--space-2)
  }

  .md-mrn2 {
    margin-right: calc(var(--space-2) * -1)
  }

  .md-mb2 {
    margin-bottom: var(--space-2)
  }

  .md-mbn2 {
    margin-bottom: calc(var(--space-2) * -1)
  }

  .md-ml2 {
    margin-left: var(--space-2)
  }

  .md-mln2 {
    margin-left: calc(var(--space-2) * -1)
  }

  .md-mx2 {
    margin-left: var(--space-2);
    margin-right: var(--space-2)
  }

  .md-my2 {
    margin-top: var(--space-2);
    margin-bottom: var(--space-2)
  }

  .md-m3 {
    margin: var(--space-3)
  }

  .md-mt3 {
    margin-top: var(--space-3)
  }

  .md-mtn3 {
    margin-top: calc(var(--space-3) * -1)
  }

  .md-mr3 {
    margin-right: var(--space-3)
  }

  .md-mrn3 {
    margin-right: calc(var(--space-3) * -1)
  }

  .md-mb3 {
    margin-bottom: var(--space-3)
  }

  .md-mbn3 {
    margin-bottom: calc(var(--space-3) * -1)
  }

  .md-ml3 {
    margin-left: var(--space-3)
  }

  .md-mln3 {
    margin-left: calc(var(--space-3) * -1)
  }

  .md-mx3 {
    margin-left: var(--space-3);
    margin-right: var(--space-3)
  }

  .md-my3 {
    margin-top: var(--space-3);
    margin-bottom: var(--space-3)
  }

  .md-m4 {
    margin: var(--space-4)
  }

  .md-mt4 {
    margin-top: var(--space-4)
  }

  .md-mtn4 {
    margin-top: calc(var(--space-4) * -1)
  }

  .md-mr4 {
    margin-right: var(--space-4)
  }

  .md-mrn4 {
    margin-right: calc(var(--space-4) * -1)
  }

  .md-mb4 {
    margin-bottom: var(--space-4)
  }

  .md-mbn4 {
    margin-bottom: calc(var(--space-4) * -1)
  }

  .md-ml4 {
    margin-left: var(--space-4)
  }

  .md-mln4 {
    margin-left: calc(var(--space-4) * -1)
  }

  .md-mx4 {
    margin-left: var(--space-4);
    margin-right: var(--space-4)
  }

  .md-my4 {
    margin-top: var(--space-4);
    margin-bottom: var(--space-4)
  }

  .md-m5 {
    margin: var(--space-5)
  }

  .md-mt5 {
    margin-top: var(--space-5)
  }

  .md-mtn5 {
    margin-top: calc(var(--space-5) * -1)
  }

  .md-mr5 {
    margin-right: var(--space-5)
  }

  .md-mrn5 {
    margin-right: calc(var(--space-5) * -1)
  }

  .md-mb5 {
    margin-bottom: var(--space-5)
  }

  .md-mbn5 {
    margin-bottom: calc(var(--space-5) * -1)
  }

  .md-ml5 {
    margin-left: var(--space-5)
  }

  .md-mln5 {
    margin-left: calc(var(--space-5) * -1)
  }

  .md-mx5 {
    margin-left: var(--space-5);
    margin-right: var(--space-5)
  }

  .md-my5 {
    margin-top: var(--space-5);
    margin-bottom: var(--space-5)
  }

  .md-m6 {
    margin: var(--space-6)
  }

  .md-mt6 {
    margin-top: var(--space-6)
  }

  .md-mtn6 {
    margin-top: calc(var(--space-6) * -1)
  }

  .md-mr6 {
    margin-right: var(--space-6)
  }

  .md-mrn6 {
    margin-right: calc(var(--space-6) * -1)
  }

  .md-mb6 {
    margin-bottom: var(--space-6)
  }

  .md-mbn6 {
    margin-bottom: calc(var(--space-6) * -1)
  }

  .md-ml6 {
    margin-left: var(--space-6)
  }

  .md-mln6 {
    margin-left: calc(var(--space-6) * -1)
  }

  .md-mx6 {
    margin-left: var(--space-6);
    margin-right: var(--space-6)
  }

  .md-my6 {
    margin-top: var(--space-6);
    margin-bottom: var(--space-6)
  }

  .md-m7 {
    margin: var(--space-7)
  }

  .md-mt7 {
    margin-top: var(--space-7)
  }

  .md-mtn7 {
    margin-top: calc(var(--space-7) * -1)
  }

  .md-mr7 {
    margin-right: var(--space-7)
  }

  .md-mrn7 {
    margin-right: calc(var(--space-7) * -1)
  }

  .md-mb7 {
    margin-bottom: var(--space-7)
  }

  .md-mbn7 {
    margin-bottom: calc(var(--space-7) * -1)
  }

  .md-ml7 {
    margin-left: var(--space-7)
  }

  .md-mln7 {
    margin-left: calc(var(--space-7) * -1)
  }

  .md-mx7 {
    margin-left: var(--space-7);
    margin-right: var(--space-7)
  }

  .md-my7 {
    margin-top: var(--space-7);
    margin-bottom: var(--space-7)
  }

  .md-m8 {
    margin: var(--space-8)
  }

  .md-mt8 {
    margin-top: var(--space-8)
  }

  .md-mtn8 {
    margin-top: calc(var(--space-8) * -1)
  }

  .md-mr8 {
    margin-right: var(--space-8)
  }

  .md-mrn8 {
    margin-right: calc(var(--space-8) * -1)
  }

  .md-mb8 {
    margin-bottom: var(--space-8)
  }

  .md-mbn8 {
    margin-bottom: calc(var(--space-8) * -1)
  }

  .md-ml8 {
    margin-left: var(--space-8)
  }

  .md-mln8 {
    margin-left: calc(var(--space-8) * -1)
  }

  .md-mx8 {
    margin-left: var(--space-8);
    margin-right: var(--space-8)
  }

  .md-my8 {
    margin-top: var(--space-8);
    margin-bottom: var(--space-8)
  }

  .md-m9 {
    margin: var(--space-9)
  }

  .md-mt9 {
    margin-top: var(--space-9)
  }

  .md-mtn9 {
    margin-top: calc(var(--space-9) * -1)
  }

  .md-mr9 {
    margin-right: var(--space-9)
  }

  .md-mrn9 {
    margin-right: calc(var(--space-9) * -1)
  }

  .md-mb9 {
    margin-bottom: var(--space-9)
  }

  .md-mbn9 {
    margin-bottom: calc(var(--space-9) * -1)
  }

  .md-ml9 {
    margin-left: var(--space-9)
  }

  .md-mln9 {
    margin-left: calc(var(--space-9) * -1)
  }

  .md-mx9 {
    margin-left: var(--space-9);
    margin-right: var(--space-9)
  }

  .md-my9 {
    margin-top: var(--space-9);
    margin-bottom: var(--space-9)
  }

  .md-m10 {
    margin: var(--space-10)
  }

  .md-mt10 {
    margin-top: var(--space-10)
  }

  .md-mtn10 {
    margin-top: calc(var(--space-10) * -1)
  }

  .md-mr10 {
    margin-right: var(--space-10)
  }

  .md-mrn10 {
    margin-right: calc(var(--space-10) * -1)
  }

  .md-mb10 {
    margin-bottom: var(--space-10)
  }

  .md-mbn10 {
    margin-bottom: calc(var(--space-10) * -1)
  }

  .md-ml10 {
    margin-left: var(--space-10)
  }

  .md-mln10 {
    margin-left: calc(var(--space-10) * -1)
  }

  .md-mx10 {
    margin-left: var(--space-10);
    margin-right: var(--space-10)
  }

  .md-my10 {
    margin-top: var(--space-10);
    margin-bottom: var(--space-10)
  }

  .md-m11 {
    margin: var(--space-11)
  }

  .md-mt11 {
    margin-top: var(--space-11)
  }

  .md-mr11 {
    margin-right: var(--space-11)
  }

  .md-mb11 {
    margin-bottom: var(--space-11)
  }

  .md-ml11 {
    margin-left: var(--space-11)
  }

  .md-mx11 {
    margin-left: var(--space-11);
    margin-right: var(--space-11)
  }

  .md-my11 {
    margin-top: var(--space-11);
    margin-bottom: var(--space-11)
  }

  .md-m12 {
    margin: var(--space-12)
  }

  .md-mt12 {
    margin-top: var(--space-12)
  }

  .md-mr12 {
    margin-right: var(--space-12)
  }

  .md-mb12 {
    margin-bottom: var(--space-12)
  }

  .md-ml12 {
    margin-left: var(--space-12)
  }

  .md-mx12 {
    margin-left: var(--space-12);
    margin-right: var(--space-12)
  }

  .md-my12 {
    margin-top: var(--space-12);
    margin-bottom: var(--space-12)
  }

  .md-mxn1 {
    margin-left: calc(var(--space-1) * -1);
    margin-right: calc(var(--space-1) * -1)
  }

  .md-mxn2 {
    margin-left: calc(var(--space-2) * -1);
    margin-right: calc(var(--space-2) * -1)
  }

  .md-mxn3 {
    margin-left: calc(var(--space-3) * -1);
    margin-right: calc(var(--space-3) * -1)
  }

  .md-mxn4 {
    margin-left: calc(var(--space-4) * -1);
    margin-right: calc(var(--space-4) * -1)
  }

  .md-mxn5 {
    margin-left: calc(var(--space-5) * -1);
    margin-right: calc(var(--space-5) * -1)
  }

  .md-mxn6 {
    margin-left: calc(var(--space-6) * -1);
    margin-right: calc(var(--space-6) * -1)
  }

  .md-mxn7 {
    margin-left: calc(var(--space-7) * -1);
    margin-right: calc(var(--space-7) * -1)
  }

  .md-mxn8 {
    margin-left: calc(var(--space-8) * -1);
    margin-right: calc(var(--space-8) * -1)
  }

  .md-mxn9 {
    margin-left: calc(var(--space-9) * -1);
    margin-right: calc(var(--space-9) * -1)
  }

  .md-mxn10 {
    margin-left: calc(var(--space-10) * -1);
    margin-right: calc(var(--space-10) * -1)
  }

  .md-mxn11 {
    margin-left: calc(var(--space-11) * -1);
    margin-right: calc(var(--space-11) * -1)
  }

  .md-mxn12 {
    margin-left: calc(var(--space-12) * -1);
    margin-right: calc(var(--space-12) * -1)
  }

  .md-m-auto {
    margin: auto
  }

  .md-mt-auto {
    margin-top: auto
  }

  .md-mr-auto {
    margin-right: auto
  }

  .md-mb-auto {
    margin-bottom: auto
  }

  .md-ml-auto {
    margin-left: auto
  }

  .md-mx-auto {
    margin-left: auto;
    margin-right: auto
  }

  .md-my-auto {
    margin-top: auto;
    margin-bottom: auto
  }

  .md-p0 {
    padding: 0
  }

  .md-pt0 {
    padding-top: 0
  }

  .md-pr0 {
    padding-right: 0
  }

  .md-pb0 {
    padding-bottom: 0
  }

  .md-pl0 {
    padding-left: 0
  }

  .md-px0 {
    padding-left: 0;
    padding-right: 0
  }

  .md-py0 {
    padding-top: 0;
    padding-bottom: 0
  }

  .md-p1 {
    padding: var(--space-1)
  }

  .md-pt1 {
    padding-top: var(--space-1)
  }

  .md-pr1 {
    padding-right: var(--space-1)
  }

  .md-pb1 {
    padding-bottom: var(--space-1)
  }

  .md-pl1 {
    padding-left: var(--space-1)
  }

  .md-py1 {
    padding-top: var(--space-1);
    padding-bottom: var(--space-1)
  }

  .md-px1 {
    padding-left: var(--space-1);
    padding-right: var(--space-1)
  }

  .md-p2 {
    padding: var(--space-2)
  }

  .md-pt2 {
    padding-top: var(--space-2)
  }

  .md-pr2 {
    padding-right: var(--space-2)
  }

  .md-pb2 {
    padding-bottom: var(--space-2)
  }

  .md-pl2 {
    padding-left: var(--space-2)
  }

  .md-py2 {
    padding-top: var(--space-2);
    padding-bottom: var(--space-2)
  }

  .md-px2 {
    padding-left: var(--space-2);
    padding-right: var(--space-2)
  }

  .md-p3 {
    padding: var(--space-3)
  }

  .md-pt3 {
    padding-top: var(--space-3)
  }

  .md-pr3 {
    padding-right: var(--space-3)
  }

  .md-pb3 {
    padding-bottom: var(--space-3)
  }

  .md-pl3 {
    padding-left: var(--space-3)
  }

  .md-py3 {
    padding-top: var(--space-3);
    padding-bottom: var(--space-3)
  }

  .md-px3 {
    padding-left: var(--space-3);
    padding-right: var(--space-3)
  }

  .md-p4 {
    padding: var(--space-4)
  }

  .md-pt4 {
    padding-top: var(--space-4)
  }

  .md-pr4 {
    padding-right: var(--space-4)
  }

  .md-pb4 {
    padding-bottom: var(--space-4)
  }

  .md-pl4 {
    padding-left: var(--space-4)
  }

  .md-py4 {
    padding-top: var(--space-4);
    padding-bottom: var(--space-4)
  }

  .md-px4 {
    padding-left: var(--space-4);
    padding-right: var(--space-4)
  }

  .md-p5 {
    padding: var(--space-5)
  }

  .md-pt5 {
    padding-top: var(--space-5)
  }

  .md-pr5 {
    padding-right: var(--space-5)
  }

  .md-pb5 {
    padding-bottom: var(--space-5)
  }

  .md-pl5 {
    padding-left: var(--space-5)
  }

  .md-py5 {
    padding-top: var(--space-5);
    padding-bottom: var(--space-5)
  }

  .md-px5 {
    padding-left: var(--space-5);
    padding-right: var(--space-5)
  }

  .md-p6 {
    padding: var(--space-6)
  }

  .md-pt6 {
    padding-top: var(--space-6)
  }

  .md-pr6 {
    padding-right: var(--space-6)
  }

  .md-pb6 {
    padding-bottom: var(--space-6)
  }

  .md-pl6 {
    padding-left: var(--space-6)
  }

  .md-py6 {
    padding-top: var(--space-6);
    padding-bottom: var(--space-6)
  }

  .md-px6 {
    padding-left: var(--space-6);
    padding-right: var(--space-6)
  }

  .md-p7 {
    padding: var(--space-7)
  }

  .md-pt7 {
    padding-top: var(--space-7)
  }

  .md-pr7 {
    padding-right: var(--space-7)
  }

  .md-pb7 {
    padding-bottom: var(--space-7)
  }

  .md-pl7 {
    padding-left: var(--space-7)
  }

  .md-py7 {
    padding-top: var(--space-7);
    padding-bottom: var(--space-7)
  }

  .md-px7 {
    padding-left: var(--space-7);
    padding-right: var(--space-7)
  }

  .md-p8 {
    padding: var(--space-8)
  }

  .md-pt8 {
    padding-top: var(--space-8)
  }

  .md-pr8 {
    padding-right: var(--space-8)
  }

  .md-pb8 {
    padding-bottom: var(--space-8)
  }

  .md-pl8 {
    padding-left: var(--space-8)
  }

  .md-py8 {
    padding-top: var(--space-8);
    padding-bottom: var(--space-8)
  }

  .md-x8 {
    padding-left: var(--space-8);
    padding-right: var(--space-8)
  }

  .md-p9 {
    padding: var(--space-9)
  }

  .md-pt9 {
    padding-top: var(--space-9)
  }

  .md-pr9 {
    padding-right: var(--space-9)
  }

  .md-pb9 {
    padding-bottom: var(--space-9)
  }

  .md-pl9 {
    padding-left: var(--space-9)
  }

  .md-py9 {
    padding-top: var(--space-9);
    padding-bottom: var(--space-9)
  }

  .md-px9 {
    padding-left: var(--space-9);
    padding-right: var(--space-9)
  }

  .md-p10 {
    padding: var(--space-10)
  }

  .md-pt10 {
    padding-top: var(--space-10)
  }

  .md-pr10 {
    padding-right: var(--space-10)
  }

  .md-pb10 {
    padding-bottom: var(--space-10)
  }

  .md-pl10 {
    padding-left: var(--space-10)
  }

  .md-py10 {
    padding-top: var(--space-10);
    padding-bottom: var(--space-10)
  }

  .md-px10 {
    padding-left: var(--space-10);
    padding-right: var(--space-10)
  }

  .md-p11 {
    padding: var(--space-11)
  }

  .md-pt11 {
    padding-top: var(--space-11)
  }

  .md-pr11 {
    padding-right: var(--space-11)
  }

  .md-pb11 {
    padding-bottom: var(--space-11)
  }

  .md-pl11 {
    padding-left: var(--space-11)
  }

  .md-py11 {
    padding-top: var(--space-11);
    padding-bottom: var(--space-11)
  }

  .md-px11 {
    padding-left: var(--space-11);
    padding-right: var(--space-11)
  }

  .md-p12 {
    padding: var(--space-12)
  }

  .md-pt12 {
    padding-top: var(--space-12)
  }

  .md-pr12 {
    padding-right: var(--space-12)
  }

  .md-pb12 {
    padding-bottom: var(--space-12)
  }

  .md-pl12 {
    padding-left: var(--space-12)
  }

  .md-py12 {
    padding-top: var(--space-12);
    padding-bottom: var(--space-12)
  }

  .md-px12 {
    padding-left: var(--space-12);
    padding-right: var(--space-12)
  }
}

@media (max-width: 767px) {

  /* --- Margin + Padding Small --- */
  .sm-m0 {
    margin: 0
  }

  .sm-mt0 {
    margin-top: 0
  }

  .sm-mr0 {
    margin-right: 0
  }

  .sm-mb0 {
    margin-bottom: 0
  }

  .sm-ml0 {
    margin-left: 0
  }

  .sm-mx0 {
    margin-left: 0;
    margin-right: 0
  }

  .sm-my0 {
    margin-top: 0;
    margin-bottom: 0
  }

  .sm-m1 {
    margin: var(--space-1)
  }

  .sm-mt1 {
    margin-top: var(--space-1)
  }

  .sm-mtn1 {
    margin-top: calc(var(--space-1) * -1)
  }

  .sm-mr1 {
    margin-right: var(--space-1)
  }

  .sm-mrn1 {
    margin-right: calc(var(--space-1) * -1)
  }

  .sm-mb1 {
    margin-bottom: var(--space-1)
  }

  .sm-mbn1 {
    margin-bottom: calc(var(--space-1) * -1)
  }

  .sm-ml1 {
    margin-left: var(--space-1)
  }

  .sm-mln1 {
    margin-left: calc(var(--space-1) * -1)
  }

  .sm-mx1 {
    margin-left: var(--space-1);
    margin-right: var(--space-1)
  }

  .sm-my1 {
    margin-top: var(--space-1);
    margin-bottom: var(--space-1)
  }

  .sm-m2 {
    margin: var(--space-2)
  }

  .sm-mt2 {
    margin-top: var(--space-2)
  }

  .sm-mtn2 {
    margin-top: calc(var(--space-2) * -1)
  }

  .sm-mr2 {
    margin-right: var(--space-2)
  }

  .sm-mrn2 {
    margin-right: calc(var(--space-2) * -1)
  }

  .sm-mb2 {
    margin-bottom: var(--space-2)
  }

  .sm-mbn2 {
    margin-bottom: calc(var(--space-2) * -1)
  }

  .sm-ml2 {
    margin-left: var(--space-2)
  }

  .sm-mln2 {
    margin-left: calc(var(--space-2) * -1)
  }

  .sm-mx2 {
    margin-left: var(--space-2);
    margin-right: var(--space-2)
  }

  .sm-my2 {
    margin-top: var(--space-2);
    margin-bottom: var(--space-2)
  }

  .sm-m3 {
    margin: var(--space-3)
  }

  .sm-mt3 {
    margin-top: var(--space-3)
  }

  .sm-mtn3 {
    margin-top: calc(var(--space-3) * -1)
  }

  .sm-mr3 {
    margin-right: var(--space-3)
  }

  .sm-mrn3 {
    margin-right: calc(var(--space-3) * -1)
  }

  .sm-mb3 {
    margin-bottom: var(--space-3)
  }

  .sm-mbn3 {
    margin-bottom: calc(var(--space-3) * -1)
  }

  .sm-ml3 {
    margin-left: var(--space-3)
  }

  .sm-mln3 {
    margin-left: calc(var(--space-3) * -1)
  }

  .sm-mx3 {
    margin-left: var(--space-3);
    margin-right: var(--space-3)
  }

  .sm-my3 {
    margin-top: var(--space-3);
    margin-bottom: var(--space-3)
  }

  .sm-m4 {
    margin: var(--space-4)
  }

  .sm-mt4 {
    margin-top: var(--space-4)
  }

  .sm-mtn4 {
    margin-top: calc(var(--space-4) * -1)
  }

  .sm-mr4 {
    margin-right: var(--space-4)
  }

  .sm-mrn4 {
    margin-right: calc(var(--space-4) * -1)
  }

  .sm-mb4 {
    margin-bottom: var(--space-4)
  }

  .sm-mbn4 {
    margin-bottom: calc(var(--space-4) * -1)
  }

  .sm-ml4 {
    margin-left: var(--space-4)
  }

  .sm-mln4 {
    margin-left: calc(var(--space-4) * -1)
  }

  .sm-mx4 {
    margin-left: var(--space-4);
    margin-right: var(--space-4)
  }

  .sm-my4 {
    margin-top: var(--space-4);
    margin-bottom: var(--space-4)
  }

  .sm-m5 {
    margin: var(--space-5)
  }

  .sm-mt5 {
    margin-top: var(--space-5)
  }

  .sm-mtn5 {
    margin-top: calc(var(--space-5) * -1)
  }

  .sm-mr5 {
    margin-right: var(--space-5)
  }

  .sm-mrn5 {
    margin-right: calc(var(--space-5) * -1)
  }

  .sm-mb5 {
    margin-bottom: var(--space-5)
  }

  .sm-mbn5 {
    margin-bottom: calc(var(--space-5) * -1)
  }

  .sm-ml5 {
    margin-left: var(--space-5)
  }

  .sm-mln5 {
    margin-left: calc(var(--space-5) * -1)
  }

  .sm-mx5 {
    margin-left: var(--space-5);
    margin-right: var(--space-5)
  }

  .sm-my5 {
    margin-top: var(--space-5);
    margin-bottom: var(--space-5)
  }

  .sm-m6 {
    margin: var(--space-6)
  }

  .sm-mt6 {
    margin-top: var(--space-6)
  }

  .sm-mtn6 {
    margin-top: calc(var(--space-6) * -1)
  }

  .sm-mr6 {
    margin-right: var(--space-6)
  }

  .sm-mrn6 {
    margin-right: calc(var(--space-6) * -1)
  }

  .sm-mb6 {
    margin-bottom: var(--space-6)
  }

  .sm-mbn6 {
    margin-bottom: calc(var(--space-6) * -1)
  }

  .sm-ml6 {
    margin-left: var(--space-6)
  }

  .sm-mln6 {
    margin-left: calc(var(--space-6) * -1)
  }

  .sm-mx6 {
    margin-left: var(--space-6);
    margin-right: var(--space-6)
  }

  .sm-my6 {
    margin-top: var(--space-6);
    margin-bottom: var(--space-6)
  }

  .sm-m7 {
    margin: var(--space-7)
  }

  .sm-mt7 {
    margin-top: var(--space-7)
  }

  .sm-mtn7 {
    margin-top: calc(var(--space-7) * -1)
  }

  .sm-mr7 {
    margin-right: var(--space-7)
  }

  .sm-mrn7 {
    margin-right: calc(var(--space-7) * -1)
  }

  .sm-mb7 {
    margin-bottom: var(--space-7)
  }

  .sm-mbn7 {
    margin-bottom: calc(var(--space-7) * -1)
  }

  .sm-ml7 {
    margin-left: var(--space-7)
  }

  .sm-mln7 {
    margin-left: calc(var(--space-7) * -1)
  }

  .sm-mx7 {
    margin-left: var(--space-7);
    margin-right: var(--space-7)
  }

  .sm-my7 {
    margin-top: var(--space-7);
    margin-bottom: var(--space-7)
  }

  .sm-m8 {
    margin: var(--space-8)
  }

  .sm-mt8 {
    margin-top: var(--space-8)
  }

  .sm-mtn8 {
    margin-top: calc(var(--space-8) * -1)
  }

  .sm-mr8 {
    margin-right: var(--space-8)
  }

  .sm-mrn8 {
    margin-right: calc(var(--space-8) * -1)
  }

  .sm-mb8 {
    margin-bottom: var(--space-8)
  }

  .sm-mbn8 {
    margin-bottom: calc(var(--space-8) * -1)
  }

  .sm-ml8 {
    margin-left: var(--space-8)
  }

  .sm-mln8 {
    margin-left: calc(var(--space-8) * -1)
  }

  .sm-mx8 {
    margin-left: var(--space-8);
    margin-right: var(--space-8)
  }

  .sm-my8 {
    margin-top: var(--space-8);
    margin-bottom: var(--space-8)
  }

  .sm-m9 {
    margin: var(--space-9)
  }

  .sm-mt9 {
    margin-top: var(--space-9)
  }

  .sm-mtn9 {
    margin-top: calc(var(--space-9) * -1)
  }

  .sm-mr9 {
    margin-right: var(--space-9)
  }

  .sm-mrn9 {
    margin-right: calc(var(--space-9) * -1)
  }

  .sm-mb9 {
    margin-bottom: var(--space-9)
  }

  .sm-mbn9 {
    margin-bottom: calc(var(--space-9) * -1)
  }

  .sm-ml9 {
    margin-left: var(--space-9)
  }

  .sm-mln9 {
    margin-left: calc(var(--space-9) * -1)
  }

  .sm-mx9 {
    margin-left: var(--space-9);
    margin-right: var(--space-9)
  }

  .sm-my9 {
    margin-top: var(--space-9);
    margin-bottom: var(--space-9)
  }

  .sm-m10 {
    margin: var(--space-10)
  }

  .sm-mt10 {
    margin-top: var(--space-10)
  }

  .sm-mtn10 {
    margin-top: calc(var(--space-10) * -1)
  }

  .sm-mr10 {
    margin-right: var(--space-10)
  }

  .sm-mrn10 {
    margin-right: calc(var(--space-10) * -1)
  }

  .sm-mb10 {
    margin-bottom: var(--space-10)
  }

  .sm-mbn10 {
    margin-bottom: calc(var(--space-10) * -1)
  }

  .sm-ml10 {
    margin-left: var(--space-10)
  }

  .sm-mln10 {
    margin-left: calc(var(--space-10) * -1)
  }

  .sm-mx10 {
    margin-left: var(--space-10);
    margin-right: var(--space-10)
  }

  .sm-my10 {
    margin-top: var(--space-10);
    margin-bottom: var(--space-10)
  }

  .sm-m11 {
    margin: var(--space-11)
  }

  .sm-mt11 {
    margin-top: var(--space-11)
  }

  .sm-mr11 {
    margin-right: var(--space-11)
  }

  .sm-mb11 {
    margin-bottom: var(--space-11)
  }

  .sm-ml11 {
    margin-left: var(--space-11)
  }

  .sm-mx11 {
    margin-left: var(--space-11);
    margin-right: var(--space-11)
  }

  .sm-my11 {
    margin-top: var(--space-11);
    margin-bottom: var(--space-11)
  }

  .sm-m12 {
    margin: var(--space-12)
  }

  .sm-mt12 {
    margin-top: var(--space-12)
  }

  .sm-mr12 {
    margin-right: var(--space-12)
  }

  .sm-mb12 {
    margin-bottom: var(--space-12)
  }

  .sm-ml12 {
    margin-left: var(--space-12)
  }

  .sm-mx12 {
    margin-left: var(--space-12);
    margin-right: var(--space-12)
  }

  .sm-my12 {
    margin-top: var(--space-12);
    margin-bottom: var(--space-12)
  }

  .sm-mxn1 {
    margin-left: calc(var(--space-1) * -1);
    margin-right: calc(var(--space-1) * -1)
  }

  .sm-mxn2 {
    margin-left: calc(var(--space-2) * -1);
    margin-right: calc(var(--space-2) * -1)
  }

  .sm-mxn3 {
    margin-left: calc(var(--space-3) * -1);
    margin-right: calc(var(--space-3) * -1)
  }

  .sm-mxn4 {
    margin-left: calc(var(--space-4) * -1);
    margin-right: calc(var(--space-4) * -1)
  }

  .sm-mxn5 {
    margin-left: calc(var(--space-5) * -1);
    margin-right: calc(var(--space-5) * -1)
  }

  .sm-mxn6 {
    margin-left: calc(var(--space-6) * -1);
    margin-right: calc(var(--space-6) * -1)
  }

  .sm-mxn7 {
    margin-left: calc(var(--space-7) * -1);
    margin-right: calc(var(--space-7) * -1)
  }

  .sm-mxn8 {
    margin-left: calc(var(--space-8) * -1);
    margin-right: calc(var(--space-8) * -1)
  }

  .sm-mxn9 {
    margin-left: calc(var(--space-9) * -1);
    margin-right: calc(var(--space-9) * -1)
  }

  .sm-mxn10 {
    margin-left: calc(var(--space-10) * -1);
    margin-right: calc(var(--space-10) * -1)
  }

  .sm-mxn11 {
    margin-left: calc(var(--space-11) * -1);
    margin-right: calc(var(--space-11) * -1)
  }

  .sm-mxn12 {
    margin-left: calc(var(--space-12) * -1);
    margin-right: calc(var(--space-12) * -1)
  }

  .sm-m-auto {
    margin: auto
  }

  .sm-mt-auto {
    margin-top: auto
  }

  .sm-mr-auto {
    margin-right: auto
  }

  .sm-mb-auto {
    margin-bottom: auto
  }

  .sm-ml-auto {
    margin-left: auto
  }

  .sm-mx-auto {
    margin-left: auto;
    margin-right: auto
  }

  .sm-my-auto {
    margin-top: auto;
    margin-bottom: auto
  }

  .sm-p0 {
    padding: 0
  }

  .sm-pt0 {
    padding-top: 0
  }

  .sm-pr0 {
    padding-right: 0
  }

  .sm-pb0 {
    padding-bottom: 0
  }

  .sm-pl0 {
    padding-left: 0
  }

  .sm-px0 {
    padding-left: 0;
    padding-right: 0
  }

  .sm-py0 {
    padding-top: 0;
    padding-bottom: 0
  }

  .sm-p1 {
    padding: var(--space-1)
  }

  .sm-pt1 {
    padding-top: var(--space-1)
  }

  .sm-pr1 {
    padding-right: var(--space-1)
  }

  .sm-pb1 {
    padding-bottom: var(--space-1)
  }

  .sm-pl1 {
    padding-left: var(--space-1)
  }

  .sm-py1 {
    padding-top: var(--space-1);
    padding-bottom: var(--space-1)
  }

  .sm-px1 {
    padding-left: var(--space-1);
    padding-right: var(--space-1)
  }

  .sm-p2 {
    padding: var(--space-2)
  }

  .sm-pt2 {
    padding-top: var(--space-2)
  }

  .sm-pr2 {
    padding-right: var(--space-2)
  }

  .sm-pb2 {
    padding-bottom: var(--space-2)
  }

  .sm-pl2 {
    padding-left: var(--space-2)
  }

  .sm-py2 {
    padding-top: var(--space-2);
    padding-bottom: var(--space-2)
  }

  .sm-px2 {
    padding-left: var(--space-2);
    padding-right: var(--space-2)
  }

  .sm-p3 {
    padding: var(--space-3)
  }

  .sm-pt3 {
    padding-top: var(--space-3)
  }

  .sm-pr3 {
    padding-right: var(--space-3)
  }

  .sm-pb3 {
    padding-bottom: var(--space-3)
  }

  .sm-pl3 {
    padding-left: var(--space-3)
  }

  .sm-py3 {
    padding-top: var(--space-3);
    padding-bottom: var(--space-3)
  }

  .sm-px3 {
    padding-left: var(--space-3);
    padding-right: var(--space-3)
  }

  .sm-p4 {
    padding: var(--space-4)
  }

  .sm-pt4 {
    padding-top: var(--space-4)
  }

  .sm-pr4 {
    padding-right: var(--space-4)
  }

  .sm-pb4 {
    padding-bottom: var(--space-4)
  }

  .sm-pl4 {
    padding-left: var(--space-4)
  }

  .sm-py4 {
    padding-top: var(--space-4);
    padding-bottom: var(--space-4)
  }

  .sm-px4 {
    padding-left: var(--space-4);
    padding-right: var(--space-4)
  }

  .sm-p5 {
    padding: var(--space-5)
  }

  .sm-pt5 {
    padding-top: var(--space-5)
  }

  .sm-pr5 {
    padding-right: var(--space-5)
  }

  .sm-pb5 {
    padding-bottom: var(--space-5)
  }

  .sm-pl5 {
    padding-left: var(--space-5)
  }

  .sm-py5 {
    padding-top: var(--space-5);
    padding-bottom: var(--space-5)
  }

  .sm-px5 {
    padding-left: var(--space-5);
    padding-right: var(--space-5)
  }

  .sm-p6 {
    padding: var(--space-6)
  }

  .sm-pt6 {
    padding-top: var(--space-6)
  }

  .sm-pr6 {
    padding-right: var(--space-6)
  }

  .sm-pb6 {
    padding-bottom: var(--space-6)
  }

  .sm-pl6 {
    padding-left: var(--space-6)
  }

  .sm-py6 {
    padding-top: var(--space-6);
    padding-bottom: var(--space-6)
  }

  .sm-px6 {
    padding-left: var(--space-6);
    padding-right: var(--space-6)
  }

  .sm-p7 {
    padding: var(--space-7)
  }

  .sm-pt7 {
    padding-top: var(--space-7)
  }

  .sm-pr7 {
    padding-right: var(--space-7)
  }

  .sm-pb7 {
    padding-bottom: var(--space-7)
  }

  .sm-pl7 {
    padding-left: var(--space-7)
  }

  .sm-py7 {
    padding-top: var(--space-7);
    padding-bottom: var(--space-7)
  }

  .sm-px7 {
    padding-left: var(--space-7);
    padding-right: var(--space-7)
  }

  .sm-p8 {
    padding: var(--space-8)
  }

  .sm-pt8 {
    padding-top: var(--space-8)
  }

  .sm-pr8 {
    padding-right: var(--space-8)
  }

  .sm-pb8 {
    padding-bottom: var(--space-8)
  }

  .sm-pl8 {
    padding-left: var(--space-8)
  }

  .sm-py8 {
    padding-top: var(--space-8);
    padding-bottom: var(--space-8)
  }

  .sm-x8 {
    padding-left: var(--space-8);
    padding-right: var(--space-8)
  }

  .sm-p9 {
    padding: var(--space-9)
  }

  .sm-pt9 {
    padding-top: var(--space-9)
  }

  .sm-pr9 {
    padding-right: var(--space-9)
  }

  .sm-pb9 {
    padding-bottom: var(--space-9)
  }

  .sm-pl9 {
    padding-left: var(--space-9)
  }

  .sm-py9 {
    padding-top: var(--space-9);
    padding-bottom: var(--space-9)
  }

  .sm-px9 {
    padding-left: var(--space-9);
    padding-right: var(--space-9)
  }

  .sm-p10 {
    padding: var(--space-10)
  }

  .sm-pt10 {
    padding-top: var(--space-10)
  }

  .sm-pr10 {
    padding-right: var(--space-10)
  }

  .sm-pb10 {
    padding-bottom: var(--space-10)
  }

  .sm-pl10 {
    padding-left: var(--space-10)
  }

  .sm-py10 {
    padding-top: var(--space-10);
    padding-bottom: var(--space-10)
  }

  .sm-px10 {
    padding-left: var(--space-10);
    padding-right: var(--space-10)
  }

  .sm-p11 {
    padding: var(--space-11)
  }

  .sm-pt11 {
    padding-top: var(--space-11)
  }

  .sm-pr11 {
    padding-right: var(--space-11)
  }

  .sm-pb11 {
    padding-bottom: var(--space-11)
  }

  .sm-pl11 {
    padding-left: var(--space-11)
  }

  .sm-py11 {
    padding-top: var(--space-11);
    padding-bottom: var(--space-11)
  }

  .sm-px11 {
    padding-left: var(--space-11);
    padding-right: var(--space-11)
  }

  .sm-p12 {
    padding: var(--space-12)
  }

  .sm-pt12 {
    padding-top: var(--space-12)
  }

  .sm-pr12 {
    padding-right: var(--space-12)
  }

  .sm-pb12 {
    padding-bottom: var(--space-12)
  }

  .sm-pl12 {
    padding-left: var(--space-12)
  }

  .sm-py12 {
    padding-top: var(--space-12);
    padding-bottom: var(--space-12)
  }

  .sm-px12 {
    padding-left: var(--space-12);
    padding-right: var(--space-12)
  }
}

@media (max-width: 1023px) {

  /* --- Margin + Padding Devices --- */
  .dv-m0 {
    margin: 0
  }

  .dv-mt0 {
    margin-top: 0
  }

  .dv-mr0 {
    margin-right: 0
  }

  .dv-mb0 {
    margin-bottom: 0
  }

  .dv-ml0 {
    margin-left: 0
  }

  .dv-mx0 {
    margin-left: 0;
    margin-right: 0
  }

  .dv-my0 {
    margin-top: 0;
    margin-bottom: 0
  }

  .dv-m1 {
    margin: var(--space-1)
  }

  .dv-mt1 {
    margin-top: var(--space-1)
  }

  .dv-mtn1 {
    margin-top: calc(var(--space-1) * -1)
  }

  .dv-mr1 {
    margin-right: var(--space-1)
  }

  .dv-mrn1 {
    margin-right: calc(var(--space-1) * -1)
  }

  .dv-mb1 {
    margin-bottom: var(--space-1)
  }

  .dv-mbn1 {
    margin-bottom: calc(var(--space-1) * -1)
  }

  .dv-ml1 {
    margin-left: var(--space-1)
  }

  .dv-mln1 {
    margin-left: calc(var(--space-1) * -1)
  }

  .dv-mx1 {
    margin-left: var(--space-1);
    margin-right: var(--space-1)
  }

  .dv-my1 {
    margin-top: var(--space-1);
    margin-bottom: var(--space-1)
  }

  .dv-m2 {
    margin: var(--space-2)
  }

  .dv-mt2 {
    margin-top: var(--space-2)
  }

  .dv-mtn2 {
    margin-top: calc(var(--space-2) * -1)
  }

  .dv-mr2 {
    margin-right: var(--space-2)
  }

  .dv-mrn2 {
    margin-right: calc(var(--space-2) * -1)
  }

  .dv-mb2 {
    margin-bottom: var(--space-2)
  }

  .dv-mbn2 {
    margin-bottom: calc(var(--space-2) * -1)
  }

  .dv-ml2 {
    margin-left: var(--space-2)
  }

  .dv-mln2 {
    margin-left: calc(var(--space-2) * -1)
  }

  .dv-mx2 {
    margin-left: var(--space-2);
    margin-right: var(--space-2)
  }

  .dv-my2 {
    margin-top: var(--space-2);
    margin-bottom: var(--space-2)
  }

  .dv-m3 {
    margin: var(--space-3)
  }

  .dv-mt3 {
    margin-top: var(--space-3)
  }

  .dv-mtn3 {
    margin-top: calc(var(--space-3) * -1)
  }

  .dv-mr3 {
    margin-right: var(--space-3)
  }

  .dv-mrn3 {
    margin-right: calc(var(--space-3) * -1)
  }

  .dv-mb3 {
    margin-bottom: var(--space-3)
  }

  .dv-mbn3 {
    margin-bottom: calc(var(--space-3) * -1)
  }

  .dv-ml3 {
    margin-left: var(--space-3)
  }

  .dv-mln3 {
    margin-left: calc(var(--space-3) * -1)
  }

  .dv-mx3 {
    margin-left: var(--space-3);
    margin-right: var(--space-3)
  }

  .dv-my3 {
    margin-top: var(--space-3);
    margin-bottom: var(--space-3)
  }

  .dv-m4 {
    margin: var(--space-4)
  }

  .dv-mt4 {
    margin-top: var(--space-4)
  }

  .dv-mtn4 {
    margin-top: calc(var(--space-4) * -1)
  }

  .dv-mr4 {
    margin-right: var(--space-4)
  }

  .dv-mrn4 {
    margin-right: calc(var(--space-4) * -1)
  }

  .dv-mb4 {
    margin-bottom: var(--space-4)
  }

  .dv-mbn4 {
    margin-bottom: calc(var(--space-4) * -1)
  }

  .dv-ml4 {
    margin-left: var(--space-4)
  }

  .dv-mln4 {
    margin-left: calc(var(--space-4) * -1)
  }

  .dv-mx4 {
    margin-left: var(--space-4);
    margin-right: var(--space-4)
  }

  .dv-my4 {
    margin-top: var(--space-4);
    margin-bottom: var(--space-4)
  }

  .dv-m5 {
    margin: var(--space-5)
  }

  .dv-mt5 {
    margin-top: var(--space-5)
  }

  .dv-mtn5 {
    margin-top: calc(var(--space-5) * -1)
  }

  .dv-mr5 {
    margin-right: var(--space-5)
  }

  .dv-mrn5 {
    margin-right: calc(var(--space-5) * -1)
  }

  .dv-mb5 {
    margin-bottom: var(--space-5)
  }

  .dv-mbn5 {
    margin-bottom: calc(var(--space-5) * -1)
  }

  .dv-ml5 {
    margin-left: var(--space-5)
  }

  .dv-mln5 {
    margin-left: calc(var(--space-5) * -1)
  }

  .dv-mx5 {
    margin-left: var(--space-5);
    margin-right: var(--space-5)
  }

  .dv-my5 {
    margin-top: var(--space-5);
    margin-bottom: var(--space-5)
  }

  .dv-m6 {
    margin: var(--space-6)
  }

  .dv-mt6 {
    margin-top: var(--space-6)
  }

  .dv-mtn6 {
    margin-top: calc(var(--space-6) * -1)
  }

  .dv-mr6 {
    margin-right: var(--space-6)
  }

  .dv-mrn6 {
    margin-right: calc(var(--space-6) * -1)
  }

  .dv-mb6 {
    margin-bottom: var(--space-6)
  }

  .dv-mbn6 {
    margin-bottom: calc(var(--space-6) * -1)
  }

  .dv-ml6 {
    margin-left: var(--space-6)
  }

  .dv-mln6 {
    margin-left: calc(var(--space-6) * -1)
  }

  .dv-mx6 {
    margin-left: var(--space-6);
    margin-right: var(--space-6)
  }

  .dv-my6 {
    margin-top: var(--space-6);
    margin-bottom: var(--space-6)
  }

  .dv-m7 {
    margin: var(--space-7)
  }

  .dv-mt7 {
    margin-top: var(--space-7)
  }

  .dv-mtn7 {
    margin-top: calc(var(--space-7) * -1)
  }

  .dv-mr7 {
    margin-right: var(--space-7)
  }

  .dv-mrn7 {
    margin-right: calc(var(--space-7) * -1)
  }

  .dv-mb7 {
    margin-bottom: var(--space-7)
  }

  .dv-mbn7 {
    margin-bottom: calc(var(--space-7) * -1)
  }

  .dv-ml7 {
    margin-left: var(--space-7)
  }

  .dv-mln7 {
    margin-left: calc(var(--space-7) * -1)
  }

  .dv-mx7 {
    margin-left: var(--space-7);
    margin-right: var(--space-7)
  }

  .dv-my7 {
    margin-top: var(--space-7);
    margin-bottom: var(--space-7)
  }

  .dv-m8 {
    margin: var(--space-8)
  }

  .dv-mt8 {
    margin-top: var(--space-8)
  }

  .dv-mtn8 {
    margin-top: calc(var(--space-8) * -1)
  }

  .dv-mr8 {
    margin-right: var(--space-8)
  }

  .dv-mrn8 {
    margin-right: calc(var(--space-8) * -1)
  }

  .dv-mb8 {
    margin-bottom: var(--space-8)
  }

  .dv-mbn8 {
    margin-bottom: calc(var(--space-8) * -1)
  }

  .dv-ml8 {
    margin-left: var(--space-8)
  }

  .dv-mln8 {
    margin-left: calc(var(--space-8) * -1)
  }

  .dv-mx8 {
    margin-left: var(--space-8);
    margin-right: var(--space-8)
  }

  .dv-my8 {
    margin-top: var(--space-8);
    margin-bottom: var(--space-8)
  }

  .dv-m9 {
    margin: var(--space-9)
  }

  .dv-mt9 {
    margin-top: var(--space-9)
  }

  .dv-mtn9 {
    margin-top: calc(var(--space-9) * -1)
  }

  .dv-mr9 {
    margin-right: var(--space-9)
  }

  .dv-mrn9 {
    margin-right: calc(var(--space-9) * -1)
  }

  .dv-mb9 {
    margin-bottom: var(--space-9)
  }

  .dv-mbn9 {
    margin-bottom: calc(var(--space-9) * -1)
  }

  .dv-ml9 {
    margin-left: var(--space-9)
  }

  .dv-mln9 {
    margin-left: calc(var(--space-9) * -1)
  }

  .dv-mx9 {
    margin-left: var(--space-9);
    margin-right: var(--space-9)
  }

  .dv-my9 {
    margin-top: var(--space-9);
    margin-bottom: var(--space-9)
  }

  .dv-m10 {
    margin: var(--space-10)
  }

  .dv-mt10 {
    margin-top: var(--space-10)
  }

  .dv-mtn10 {
    margin-top: calc(var(--space-10) * -1)
  }

  .dv-mr10 {
    margin-right: var(--space-10)
  }

  .dv-mrn10 {
    margin-right: calc(var(--space-10) * -1)
  }

  .dv-mb10 {
    margin-bottom: var(--space-10)
  }

  .dv-mbn10 {
    margin-bottom: calc(var(--space-10) * -1)
  }

  .dv-ml10 {
    margin-left: var(--space-10)
  }

  .dv-mln10 {
    margin-left: calc(var(--space-10) * -1)
  }

  .dv-mx10 {
    margin-left: var(--space-10);
    margin-right: var(--space-10)
  }

  .dv-my10 {
    margin-top: var(--space-10);
    margin-bottom: var(--space-10)
  }

  .dv-m11 {
    margin: var(--space-11)
  }

  .dv-mt11 {
    margin-top: var(--space-11)
  }

  .dv-mr11 {
    margin-right: var(--space-11)
  }

  .dv-mb11 {
    margin-bottom: var(--space-11)
  }

  .dv-ml11 {
    margin-left: var(--space-11)
  }

  .dv-mx11 {
    margin-left: var(--space-11);
    margin-right: var(--space-11)
  }

  .dv-my11 {
    margin-top: var(--space-11);
    margin-bottom: var(--space-11)
  }

  .dv-m12 {
    margin: var(--space-12)
  }

  .dv-mt12 {
    margin-top: var(--space-12)
  }

  .dv-mr12 {
    margin-right: var(--space-12)
  }

  .dv-mb12 {
    margin-bottom: var(--space-12)
  }

  .dv-ml12 {
    margin-left: var(--space-12)
  }

  .dv-mx12 {
    margin-left: var(--space-12);
    margin-right: var(--space-12)
  }

  .dv-my12 {
    margin-top: var(--space-12);
    margin-bottom: var(--space-12)
  }

  .dv-mxn1 {
    margin-left: calc(var(--space-1) * -1);
    margin-right: calc(var(--space-1) * -1)
  }

  .dv-mxn2 {
    margin-left: calc(var(--space-2) * -1);
    margin-right: calc(var(--space-2) * -1)
  }

  .dv-mxn3 {
    margin-left: calc(var(--space-3) * -1);
    margin-right: calc(var(--space-3) * -1)
  }

  .dv-mxn4 {
    margin-left: calc(var(--space-4) * -1);
    margin-right: calc(var(--space-4) * -1)
  }

  .dv-mxn5 {
    margin-left: calc(var(--space-5) * -1);
    margin-right: calc(var(--space-5) * -1)
  }

  .dv-mxn6 {
    margin-left: calc(var(--space-6) * -1);
    margin-right: calc(var(--space-6) * -1)
  }

  .dv-mxn7 {
    margin-left: calc(var(--space-7) * -1);
    margin-right: calc(var(--space-7) * -1)
  }

  .dv-mxn8 {
    margin-left: calc(var(--space-8) * -1);
    margin-right: calc(var(--space-8) * -1)
  }

  .dv-mxn9 {
    margin-left: calc(var(--space-9) * -1);
    margin-right: calc(var(--space-9) * -1)
  }

  .dv-mxn10 {
    margin-left: calc(var(--space-10) * -1);
    margin-right: calc(var(--space-10) * -1)
  }

  .dv-mxn11 {
    margin-left: calc(var(--space-11) * -1);
    margin-right: calc(var(--space-11) * -1)
  }

  .dv-mxn12 {
    margin-left: calc(var(--space-12) * -1);
    margin-right: calc(var(--space-12) * -1)
  }

  .dv-m-auto {
    margin: auto
  }

  .dv-mt-auto {
    margin-top: auto
  }

  .dv-mr-auto {
    margin-right: auto
  }

  .dv-mb-auto {
    margin-bottom: auto
  }

  .dv-ml-auto {
    margin-left: auto
  }

  .dv-mx-auto {
    margin-left: auto;
    margin-right: auto
  }

  .dv-my-auto {
    margin-top: auto;
    margin-bottom: auto
  }

  .dv-p0 {
    padding: 0
  }

  .dv-pt0 {
    padding-top: 0
  }

  .dv-pr0 {
    padding-right: 0
  }

  .dv-pb0 {
    padding-bottom: 0
  }

  .dv-pl0 {
    padding-left: 0
  }

  .dv-px0 {
    padding-left: 0;
    padding-right: 0
  }

  .dv-py0 {
    padding-top: 0;
    padding-bottom: 0
  }

  .dv-p1 {
    padding: var(--space-1)
  }

  .dv-pt1 {
    padding-top: var(--space-1)
  }

  .dv-pr1 {
    padding-right: var(--space-1)
  }

  .dv-pb1 {
    padding-bottom: var(--space-1)
  }

  .dv-pl1 {
    padding-left: var(--space-1)
  }

  .dv-py1 {
    padding-top: var(--space-1);
    padding-bottom: var(--space-1)
  }

  .dv-px1 {
    padding-left: var(--space-1);
    padding-right: var(--space-1)
  }

  .dv-p2 {
    padding: var(--space-2)
  }

  .dv-pt2 {
    padding-top: var(--space-2)
  }

  .dv-pr2 {
    padding-right: var(--space-2)
  }

  .dv-pb2 {
    padding-bottom: var(--space-2)
  }

  .dv-pl2 {
    padding-left: var(--space-2)
  }

  .dv-py2 {
    padding-top: var(--space-2);
    padding-bottom: var(--space-2)
  }

  .dv-px2 {
    padding-left: var(--space-2);
    padding-right: var(--space-2)
  }

  .dv-p3 {
    padding: var(--space-3)
  }

  .dv-pt3 {
    padding-top: var(--space-3)
  }

  .dv-pr3 {
    padding-right: var(--space-3)
  }

  .dv-pb3 {
    padding-bottom: var(--space-3)
  }

  .dv-pl3 {
    padding-left: var(--space-3)
  }

  .dv-py3 {
    padding-top: var(--space-3);
    padding-bottom: var(--space-3)
  }

  .dv-px3 {
    padding-left: var(--space-3);
    padding-right: var(--space-3)
  }

  .dv-p4 {
    padding: var(--space-4)
  }

  .dv-pt4 {
    padding-top: var(--space-4)
  }

  .dv-pr4 {
    padding-right: var(--space-4)
  }

  .dv-pb4 {
    padding-bottom: var(--space-4)
  }

  .dv-pl4 {
    padding-left: var(--space-4)
  }

  .dv-py4 {
    padding-top: var(--space-4);
    padding-bottom: var(--space-4)
  }

  .dv-px4 {
    padding-left: var(--space-4);
    padding-right: var(--space-4)
  }

  .dv-p5 {
    padding: var(--space-5)
  }

  .dv-pt5 {
    padding-top: var(--space-5)
  }

  .dv-pr5 {
    padding-right: var(--space-5)
  }

  .dv-pb5 {
    padding-bottom: var(--space-5)
  }

  .dv-pl5 {
    padding-left: var(--space-5)
  }

  .dv-py5 {
    padding-top: var(--space-5);
    padding-bottom: var(--space-5)
  }

  .dv-px5 {
    padding-left: var(--space-5);
    padding-right: var(--space-5)
  }

  .dv-p6 {
    padding: var(--space-6)
  }

  .dv-pt6 {
    padding-top: var(--space-6)
  }

  .dv-pr6 {
    padding-right: var(--space-6)
  }

  .dv-pb6 {
    padding-bottom: var(--space-6)
  }

  .dv-pl6 {
    padding-left: var(--space-6)
  }

  .dv-py6 {
    padding-top: var(--space-6);
    padding-bottom: var(--space-6)
  }

  .dv-px6 {
    padding-left: var(--space-6);
    padding-right: var(--space-6)
  }

  .dv-p7 {
    padding: var(--space-7)
  }

  .dv-pt7 {
    padding-top: var(--space-7)
  }

  .dv-pr7 {
    padding-right: var(--space-7)
  }

  .dv-pb7 {
    padding-bottom: var(--space-7)
  }

  .dv-pl7 {
    padding-left: var(--space-7)
  }

  .dv-py7 {
    padding-top: var(--space-7);
    padding-bottom: var(--space-7)
  }

  .dv-px7 {
    padding-left: var(--space-7);
    padding-right: var(--space-7)
  }

  .dv-p8 {
    padding: var(--space-8)
  }

  .dv-pt8 {
    padding-top: var(--space-8)
  }

  .dv-pr8 {
    padding-right: var(--space-8)
  }

  .dv-pb8 {
    padding-bottom: var(--space-8)
  }

  .dv-pl8 {
    padding-left: var(--space-8)
  }

  .dv-py8 {
    padding-top: var(--space-8);
    padding-bottom: var(--space-8)
  }

  .dv-x8 {
    padding-left: var(--space-8);
    padding-right: var(--space-8)
  }

  .dv-p9 {
    padding: var(--space-9)
  }

  .dv-pt9 {
    padding-top: var(--space-9)
  }

  .dv-pr9 {
    padding-right: var(--space-9)
  }

  .dv-pb9 {
    padding-bottom: var(--space-9)
  }

  .dv-pl9 {
    padding-left: var(--space-9)
  }

  .dv-py9 {
    padding-top: var(--space-9);
    padding-bottom: var(--space-9)
  }

  .dv-px9 {
    padding-left: var(--space-9);
    padding-right: var(--space-9)
  }

  .dv-p10 {
    padding: var(--space-10)
  }

  .dv-pt10 {
    padding-top: var(--space-10)
  }

  .dv-pr10 {
    padding-right: var(--space-10)
  }

  .dv-pb10 {
    padding-bottom: var(--space-10)
  }

  .dv-pl10 {
    padding-left: var(--space-10)
  }

  .dv-py10 {
    padding-top: var(--space-10);
    padding-bottom: var(--space-10)
  }

  .dv-px10 {
    padding-left: var(--space-10);
    padding-right: var(--space-10)
  }

  .dv-p11 {
    padding: var(--space-11)
  }

  .dv-pt11 {
    padding-top: var(--space-11)
  }

  .dv-pr11 {
    padding-right: var(--space-11)
  }

  .dv-pb11 {
    padding-bottom: var(--space-11)
  }

  .dv-pl11 {
    padding-left: var(--space-11)
  }

  .dv-py11 {
    padding-top: var(--space-11);
    padding-bottom: var(--space-11)
  }

  .dv-px11 {
    padding-left: var(--space-11);
    padding-right: var(--space-11)
  }

  .dv-p12 {
    padding: var(--space-12)
  }

  .dv-pt12 {
    padding-top: var(--space-12)
  }

  .dv-pr12 {
    padding-right: var(--space-12)
  }

  .dv-pb12 {
    padding-bottom: var(--space-12)
  }

  .dv-pl12 {
    padding-left: var(--space-12)
  }

  .dv-py12 {
    padding-top: var(--space-12);
    padding-bottom: var(--space-12)
  }

  .dv-px12 {
    padding-left: var(--space-12);
    padding-right: var(--space-12)
  }
}

/* ---- Theme Partial: Grid ---- */
.site-wrap {
  margin: 0 auto;
  width: 100%
}

.page-wrap {
  min-height: 500px
}

.grid__wrapper {
  margin: 0 auto;
  padding-left: 3%;
  padding-right: 3%;
  max-width: 1600px;
  display: grid;
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: auto;
  font-size: 0
}

.wrapper-nest {
  display: grid
}

.grid__wrapper.aflow {
  grid-auto-flow: dense
}

.grid__wrapper.narrow {
  padding-left: 7%;
  padding-right: 7%
}

.grid__wrapper.full {
  padding-left: 1.25%;
  padding-right: 1.25%;
  max-width: unset;
  width: 100%
}

.grid__wrapper.edge {
  padding-left: 0;
  padding-right: 0;
  margin-left: 0;
  margin-right: 0;
  width: 100%;
  max-width: unset
}

.grid__wrapper>.first {
  order: 1
}

.grid__wrapper>.last {
  order: 2
}

.grid__wrapper.gtr1 {
  grid-template-rows: 1fr
}

.grid__wrapper.gtr2 {
  grid-template-rows: 1fr 1fr
}

.grid__wrapper.gtr3 {
  grid-template-rows: 1fr 1fr 1fr
}

.grid__wrapper.gtr4 {
  grid-template-rows: 1fr 1fr 1fr 1fr
}

@media(min-width:768px) {
  .wrapper-fifths {
    grid-template-columns: repeat(15, 1fr)
  }

  .wrapper-fifths .span-12 {
    grid-column: 1/16 ! important;
    width: 100%;
  }
}

.gr1 {
  grid-row: span 1
}

.gr2 {
  grid-row: span 2
}

.gr3 {
  grid-row: span 3
}

.gr4 {
  grid-row: span 4
}

.cg0 {
  grid-column-gap: 0
}

.cg1 {
  grid-column-gap: var(--space-1)
}

.cg2 {
  grid-column-gap: var(--space-2)
}

.cg3 {
  grid-column-gap: var(--space-3)
}

.cg4 {
  grid-column-gap: var(--space-4)
}

.cg5 {
  grid-column-gap: var(--space-5)
}

.cg6 {
  grid-column-gap: var(--space-6)
}

.cg7 {
  grid-column-gap: var(--space-7)
}

.cg8 {
  grid-column-gap: var(--space-8)
}

.cg9 {
  grid-column-gap: var(--space-9)
}

.rg0 {
  grid-row-gap: 0
}

.rg1 {
  grid-row-gap: var(--space-1)
}

.rg2 {
  grid-row-gap: var(--space-2)
}

.rg3 {
  grid-row-gap: var(--space-3)
}

.rg4 {
  grid-row-gap: var(--space-4)
}

.rg5 {
  grid-row-gap: var(--space-5)
}

.rg6 {
  grid-row-gap: var(--space-6)
}

.rg7 {
  grid-row-gap: var(--space-7)
}

.rg8 {
  grid-row-gap: var(--space-8)
}

.rg9 {
  grid-row-gap: var(--space-9)
}

.a-left {
  text-align: left
}

.a-right {
  text-align: right
}

.a-center {
  text-align: center
}

.v-start {
  align-self: start;
  vertical-align: top
}

.v-center {
  align-self: center;
  vertical-align: middle
}

.v-end {
  align-self: end;
  vertical-align: bottom
}

.v-stretch {
  align-self: stretch
}

.vi-center {
  display: inline;
  vertical-align: middle
}

.vib-center {
  display: inline-block;
  vertical-align: middle
}

.h-start {
  justify-self: start
}

.h-center {
  justify-self: center
}

.h-end {
  justify-self: end
}

.h-stretch {
  justify-self: stretch
}

.vh-start {
  place-self: start
}

.vv-center {
  place-self: center
}

.vh-end {
  place-self: end
}

.vh-stretch {
  place-self: stretch
}

.span-1 {
  grid-column: 1;
  width: 100%
}

.span-2 {
  grid-column: 1/3;
  width: 100%
}

.span-3 {
  grid-column: 1/4;
  width: 100%
}

.span-4,
.span-third {
  grid-column: 1/5;
  width: 100%
}

.span-5 {
  grid-column: 1/6;
  width: 100%
}

.span-6 {
  grid-column: 1/7;
  width: 100%
}

.span-7 {
  grid-column: 1/8;
  width: 100%
}

.span-8 {
  grid-column: 1/9;
  width: 100%
}

.span-9 {
  grid-column: 1/10;
  width: 100%
}

.span-10 {
  grid-column: 1/11;
  width: 100%
}

.span-11 {
  grid-column: 1/12;
  width: 100%
}

.span-12 {
  grid-column: 1/13;
  width: 100%
}

@media(min-width:768px) {
  .span-full-fifths {
    grid-column: 1/16;
    width: 100%
  }
}

.span-6.first {
  grid-column: 1/7;
  width: 100%
}

.span-6.last {
  grid-column: 7/13;
  width: 100%
}

.span-8.first {
  grid-column: 1/9;
  width: 100%
}

.span-4.last {
  grid-column: 9/13;
  width: 100%
}

.span-4.first {
  grid-column: 1/5;
  width: 100%
}

.span-8.last {
  grid-column: 5/13;
  width: 100%
}

.span-9.first {
  grid-column: 1/10;
  width: 100%
}

.span-3.last {
  grid-column: 10/13;
  width: 100%
}

.span-3.first {
  grid-column: 1/4;
  width: 100%
}

.span-9.last {
  grid-column: 4/13;
  width: 100%
}

.span-1.auto {
  grid-column: auto/span 1;
  width: 100%
}

.span-2.auto {
  grid-column: auto/span 2;
  width: 100%
}

.span-3.auto {
  grid-column: auto/span 3;
  width: 100%
}

.span-4.auto,
.span-third.auto {
  grid-column: auto/span 4;
  width: 100%
}

.span-5.auto {
  grid-column: auto/span 5;
  width: 100%
}

.span-6.auto {
  grid-column: auto/span 6;
  width: 100%
}

.span-7.auto {
  grid-column: auto/span 7;
  width: 100%
}

.span-8.auto {
  grid-column: auto/span 8;
  width: 100%
}

.span-9.auto {
  grid-column: auto/span 9;
  width: 100%
}

.span-10.auto {
  grid-column: auto/span 10;
  width: 100%
}

.span-11.auto {
  grid-column: auto/span 11;
  width: 100%
}

.span-12.auto {
  grid-column: auto/span 12;
  width: 100%
}

.span-1.push-1 {
  grid-column: 2/3;
  width: 100%
}

.span-1.push-2 {
  grid-column: 3/4;
  width: 100%
}

.span-1.push-3 {
  grid-column: 4/5;
  width: 100%
}

.span-1.push-4 {
  grid-column: 5/6;
  width: 100%
}

.span-1.push-5 {
  grid-column: 6/7;
  width: 100%
}

.span-1.push-6 {
  grid-column: 7/8;
  width: 100%
}

.span-1.push-7 {
  grid-column: 8/9;
  width: 100%
}

.span-1.push-8 {
  grid-column: 9/10;
  width: 100%
}

.span-1.push-9 {
  grid-column: 10/11;
  width: 100%
}

.span-1.push-10 {
  grid-column: 11/12;
  width: 100%
}

.span-1.push-11 {
  grid-column: 12/13;
  width: 100%
}

.span-2.push-1 {
  grid-column: 2/4;
  width: 100%
}

.span-2.push-2 {
  grid-column: 3/5;
  width: 100%
}

.span-2.push-3 {
  grid-column: 4/6;
  width: 100%
}

.span-2.push-4 {
  grid-column: 5/7;
  width: 100%
}

.span-2.push-5 {
  grid-column: 6/8;
  width: 100%
}

.span-2.push-6 {
  grid-column: 7/9;
  width: 100%
}

.span-2.push-7 {
  grid-column: 8/10;
  width: 100%
}

.span-2.push-8 {
  grid-column: 9/11;
  width: 100%
}

.span-2.push-9 {
  grid-column: 10/12;
  width: 100%
}

.span-2.push-10 {
  grid-column: 11/13;
  width: 100%
}

.span-3.push-1 {
  grid-column: 2/5;
  width: 100%
}

.span-3.push-2 {
  grid-column: 3/6;
  width: 100%
}

.span-3.push-3 {
  grid-column: 4/7;
  width: 100%
}

.span-3.push-4 {
  grid-column: 5/8;
  width: 100%
}

.span-3.push-5 {
  grid-column: 6/9;
  width: 100%
}

.span-3.push-6 {
  grid-column: 7/10;
  width: 100%
}

.span-3.push-7 {
  grid-column: 8/11;
  width: 100%
}

.span-3.push-8 {
  grid-column: 9/12;
  width: 100%
}

.span-3.push-9 {
  grid-column: 10/13;
  width: 100%
}

.span-4.push-1 {
  grid-column: 2/6;
  width: 100%
}

.span-4.push-2 {
  grid-column: 3/7;
  width: 100%
}

.span-4.push-3 {
  grid-column: 4/8;
  width: 100%
}

.span-4.push-4 {
  grid-column: 5/9;
  width: 100%
}

.span-4.push-5 {
  grid-column: 6/10;
  width: 100%
}

.span-4.push-6 {
  grid-column: 7/11;
  width: 100%
}

.span-4.push-7 {
  grid-column: 8/12;
  width: 100%
}

.span-4.push-8 {
  grid-column: 9/13;
  width: 100%
}

.span-5.push-1 {
  grid-column: 2/7;
  width: 100%
}

.span-5.push-2 {
  grid-column: 3/8;
  width: 100%
}

.span-5.push-3 {
  grid-column: 4/9;
  width: 100%
}

.span-5.push-4 {
  grid-column: 5/10;
  width: 100%
}

.span-5.push-5 {
  grid-column: 6/11;
  width: 100%
}

.span-5.push-6 {
  grid-column: 7/12;
  width: 100%
}

.span-5.push-7 {
  grid-column: 8/13;
  width: 100%
}

.span-6.push-1 {
  grid-column: 2/8;
  width: 100%
}

.span-6.push-2 {
  grid-column: 3/9;
  width: 100%
}

.span-6.push-3 {
  grid-column: 4/10;
  width: 100%
}

.span-6.push-4 {
  grid-column: 5/11;
  width: 100%
}

.span-6.push-5 {
  grid-column: 6/12;
  width: 100%
}

.span-6.push-6 {
  grid-column: 7/13;
  width: 100%
}

.span-7.push-1 {
  grid-column: 2/9;
  width: 100%
}

.span-7.push-2 {
  grid-column: 3/10;
  width: 100%
}

.span-7.push-3 {
  grid-column: 4/11;
  width: 100%
}

.span-7.push-4 {
  grid-column: 5/12;
  width: 100%
}

.span-7.push-5 {
  grid-column: 6/13;
  width: 100%
}

.span-8.push-1 {
  grid-column: 2/10;
  width: 100%
}

.span-8.push-2 {
  grid-column: 3/11;
  width: 100%
}

.span-8.push-3 {
  grid-column: 4/12;
  width: 100%
}

.span-8.push-4 {
  grid-column: 5/13;
  width: 100%
}

.span-9.push-1 {
  grid-column: 2/11;
  width: 100%
}

.span-9.push-2 {
  grid-column: 3/12;
  width: 100%
}

.span-9.push-3 {
  grid-column: 4/13;
  width: 100%
}

.span-10.push-1 {
  grid-column: 2/12;
  width: 100%
}

.span-10.push-2 {
  grid-column: 3/13;
  width: 100%
}

.span-11.push-1 {
  grid-column: 2/13;
  width: 100%
}

@media(max-width:767px) {

  .span-2,
  .span-2.auto {
    grid-column: auto/span 6;
    width: 100%
  }

  .span-10,
  .span-10.auto,
  .span-11,
  .span-11.auto,
  .span-3,
  .span-3.auto,
  .span-4,
  .span-4.auto,
  .span-5,
  .span-5.auto,
  .span-6,
  .span-6.auto,
  .span-7,
  .span-7.auto,
  .span-8,
  .span-8.auto,
  .span-9,
  .span-9.auto {
    grid-column: auto/span 12 !important;
    width: 100%
  }

  .product-loop {
    grid-column: auto/span 6 !important
  }

  .sm-span-1.auto {
    grid-column: auto/span 1 !important;
    width: 100%
  }

  .sm-span-2.auto {
    grid-column: auto/span 2 !important;
    width: 100%
  }

  .sm-span-3.auto {
    grid-column: auto/span 3 !important;
    width: 100%
  }

  .sm-span-4.auto,
  .sm-span-third.auto {
    grid-column: auto/span 4 !important;
    width: 100%
  }

  .sm-span-5.auto {
    grid-column: auto/span 5 !important;
    width: 100%
  }

  .sm-span-6.auto {
    grid-column: auto/span 6 !important;
    width: 100%
  }

  .sm-span-7.auto {
    grid-column: auto/span 7 !important;
    width: 100%
  }

  .sm-span-8.auto {
    grid-column: auto/span 8 !important;
    width: 100%
  }

  .sm-span-9.auto {
    grid-column: auto/span 9 !important;
    width: 100%
  }

  .sm-span-10.auto {
    grid-column: auto/span 10 !important;
    width: 100%
  }

  .sm-span-11.auto {
    grid-column: auto/span 11 !important;
    width: 100%
  }

  .sm-span-12.auto {
    grid-column: auto/span 12 !important;
    width: 100%
  }

  .sm-cg0 {
    grid-column-gap: 0
  }

  .sm-cg1 {
    grid-column-gap: var(--space-1)
  }

  .sm-cg2 {
    grid-column-gap: var(--space-2)
  }

  .sm-cg3 {
    grid-column-gap: var(--space-3)
  }

  .sm-cg4 {
    grid-column-gap: var(--space-4)
  }

  .sm-cg5 {
    grid-column-gap: var(--space-5)
  }

  .sm-cg6 {
    grid-column-gap: var(--space-6)
  }

  .sm-cg7 {
    grid-column-gap: var(--space-7)
  }

  .sm-cg8 {
    grid-column-gap: var(--space-8)
  }

  .sm-cg9 {
    grid-column-gap: var(--space-9)
  }

  .sm-rg0 {
    grid-row-gap: 0
  }

  .sm-rg1 {
    grid-row-gap: var(--space-1)
  }

  .sm-rg2 {
    grid-row-gap: var(--space-2)
  }

  .sm-rg3 {
    grid-row-gap: var(--space-3)
  }

  .sm-rg4 {
    grid-row-gap: var(--space-4)
  }

  .sm-rg5 {
    grid-row-gap: var(--space-5)
  }

  .sm-rg6 {
    grid-row-gap: var(--space-6)
  }

  .sm-rg7 {
    grid-row-gap: var(--space-7)
  }

  .sm-rg8 {
    grid-row-gap: var(--space-8)
  }

  .sm-rg9 {
    grid-row-gap: var(--space-9)
  }
}

@media(min-width:768px) and (max-width:1023px) {
  .md-span-12.auto {
    grid-column: auto/span 12 !important;
    width: 100%
  }

  .md-span-1.auto {
    grid-column: auto/span 1 !important;
    width: 100%
  }

  .md-span-2.auto {
    grid-column: auto/span 2 !important;
    width: 100%
  }

  .md-span-3.auto {
    grid-column: auto/span 3 !important;
    width: 100%
  }

  .md-span-4.auto,
  .md-span-third.auto {
    grid-column: auto/span 4 !important;
    width: 100%
  }

  .md-span-5.auto {
    grid-column: auto/span 5 !important;
    width: 100%
  }

  .md-span-6.auto {
    grid-column: auto/span 6 !important;
    width: 100%
  }

  .md-span-7.auto {
    grid-column: auto/span 7 !important;
    width: 100%
  }

  .md-span-8.auto {
    grid-column: auto/span 8 !important;
    width: 100%
  }

  .md-span-9.auto {
    grid-column: auto/span 9 !important;
    width: 100%
  }

  .md-span-10.auto {
    grid-column: auto/span 10 !important;
    width: 100%
  }

  .md-span-11.auto {
    grid-column: auto/span 11 !important;
    width: 100%
  }

  .md-span-12.auto {
    grid-column: auto/span 12 !important;
    width: 100%
  }

  .md-span-12.auto {
    grid-column: auto/span 12 !important;
    width: 100%
  }

  .md-cg0 {
    grid-column-gap: 0
  }

  .md-cg1 {
    grid-column-gap: var(--space-1)
  }

  .md-cg2 {
    grid-column-gap: var(--space-2)
  }

  .md-cg3 {
    grid-column-gap: var(--space-3)
  }

  .md-cg4 {
    grid-column-gap: var(--space-4)
  }

  .md-cg5 {
    grid-column-gap: var(--space-5)
  }

  .md-cg6 {
    grid-column-gap: var(--space-6)
  }

  .md-cg7 {
    grid-column-gap: var(--space-7)
  }

  .md-cg8 {
    grid-column-gap: var(--space-8)
  }

  .md-cg9 {
    grid-column-gap: var(--space-9)
  }

  .md-rg0 {
    grid-row-gap: 0
  }

  .md-rg1 {
    grid-row-gap: var(--space-1)
  }

  .md-rg2 {
    grid-row-gap: var(--space-2)
  }

  .md-rg3 {
    grid-row-gap: var(--space-3)
  }

  .md-rg4 {
    grid-row-gap: var(--space-4)
  }

  .md-rg5 {
    grid-row-gap: var(--space-5)
  }

  .md-rg6 {
    grid-row-gap: var(--space-6)
  }

  .md-rg7 {
    grid-row-gap: var(--space-7)
  }

  .md-rg8 {
    grid-row-gap: var(--space-8)
  }

  .md-rg9 {
    grid-row-gap: var(--space-9)
  }
}

@media(max-width:1023px) {
  .dv-span-12.auto {
    grid-column: auto/span 12 !important;
    width: 100%
  }

  .dv-span-1.auto {
    grid-column: auto/span 1 !important;
    width: 100%
  }

  .dv-span-2.auto {
    grid-column: auto/span 2 !important;
    width: 100%
  }

  .dv-span-3.auto {
    grid-column: auto/span 3 !important;
    width: 100%
  }

  .dv-span-4.auto,
  .md-span-third.auto {
    grid-column: auto/span 4 !important;
    width: 100%
  }

  .dv-span-5.auto {
    grid-column: auto/span 5 !important;
    width: 100%
  }

  .dv-span-6.auto {
    grid-column: auto/span 6 !important;
    width: 100%
  }

  .dv-span-7.auto {
    grid-column: auto/span 7 !important;
    width: 100%
  }

  .dv-span-8.auto {
    grid-column: auto/span 8 !important;
    width: 100%
  }

  .dv-span-9.auto {
    grid-column: auto/span 9 !important;
    width: 100%
  }

  .dv-span-10.auto {
    grid-column: auto/span 10 !important;
    width: 100%
  }

  .dv-span-11.auto {
    grid-column: auto/span 11 !important;
    width: 100%
  }

  .dv-span-12.auto {
    grid-column: auto/span 12 !important;
    width: 100%
  }

  .dv-cg0 {
    grid-column-gap: 0
  }

  .dv-cg1 {
    grid-column-gap: var(--space-1)
  }

  .dv-cg2 {
    grid-column-gap: var(--space-2)
  }

  .dv-cg3 {
    grid-column-gap: var(--space-3)
  }

  .dv-cg4 {
    grid-column-gap: var(--space-4)
  }

  .dv-cg5 {
    grid-column-gap: var(--space-5)
  }

  .dv-cg6 {
    grid-column-gap: var(--space-6)
  }

  .dv-cg7 {
    grid-column-gap: var(--space-7)
  }

  .dv-cg8 {
    grid-column-gap: var(--space-8)
  }

  .dv-cg9 {
    grid-column-gap: var(--space-9)
  }

  .dv-rg0 {
    grid-row-gap: 0
  }

  .dv-rg1 {
    grid-row-gap: var(--space-1)
  }

  .dv-rg2 {
    grid-row-gap: var(--space-2)
  }

  .dv-rg3 {
    grid-row-gap: var(--space-3)
  }

  .dv-rg4 {
    grid-row-gap: var(--space-4)
  }

  .dv-rg5 {
    grid-row-gap: var(--space-5)
  }

  .dv-rg6 {
    grid-row-gap: var(--space-6)
  }

  .dv-rg7 {
    grid-row-gap: var(--space-7)
  }

  .dv-rg8 {
    grid-row-gap: var(--space-8)
  }

  .dv-rg9 {
    grid-row-gap: var(--space-9)
  }
}

@media(max-width: 767px) {
  .site-wrap {
    overflow-x: hidden;
  }
}

@media (min-width: 768px) {
  .r-span-1.auto {
    grid-row: auto/span 1;
  }

  .r-span-2.auto {
    grid-row: auto/span 2;
  }

  .grid__wrapper.reverse {
    grid-template-columns: repeat(12, 1fr);
    grid-auto-flow: row;
  }
}

/* ---- Theme Partials: Tables ---- */
table,
th,
td {
  border: 0
}

table {
  width: 100%;
  display: table;
  border-collapse: collapse;
  border-spacing: 0
}

table.striped tr {
  border-bottom: 0
}

table.striped>tbody>tr:nth-child(odd) {
  background-color: rgba(242, 242, 242, 0.5)
}

table.striped>tbody>tr>td {
  border-radius: 0
}

table.highlight>tbody>tr {
  -webkit-transition: background-color .25s ease;
  transition: background-color .25s ease
}

table.highlight>tbody>tr:hover {
  background-color: rgba(242, 242, 242, 0.5)
}

table.centered thead tr th,
table.centered tbody tr td {
  text-align: center
}

tr {
  border-bottom: 1px solid var(--dotted-color)
}

td,
th {
  padding: 15px 5px;
  display: table-cell;
  text-align: left;
  vertical-align: middle;
  border-radius: 2px
}

@media(max-width:1023px) {
  table.responsive-table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    display: block;
    position: relative
  }

  table.responsive-table td:empty:before {
    content: '\00a0'
  }

  table.responsive-table th,
  table.responsive-table td {
    margin: 0;
    vertical-align: top
  }

  table.responsive-table th {
    text-align: left
  }

  table.responsive-table thead {
    display: block;
    float: left
  }

  table.responsive-table thead tr {
    display: block;
    padding: 0 10px 0 0
  }

  table.responsive-table thead tr th::before {
    content: "\00a0"
  }

  table.responsive-table tbody {
    display: block;
    width: auto;
    position: relative;
    overflow-x: auto;
    white-space: nowrap
  }

  table.responsive-table tbody tr {
    display: inline-block;
    vertical-align: top
  }

  table.responsive-table th {
    display: block;
    text-align: right;
    line-height: 2.5;
    padding: 0
  }

  table.responsive-table tbody td {
    display: block;
    min-height: 1.25em;
    text-align: left;
    line-height: 2.5;
    margin-left: 0;
    padding: 0
  }

  table.responsive-table tfoot {
    border-top: 1px solid rgba(0, 0, 0, 0.12);
    padding: 10px;
    display: block;
    margin-top: 20px
  }

  table.responsive-table tfoot td {
    display: inline-block;
    min-height: 1.25em;
    text-align: left;
    line-height: 1.5;
    margin-left: 0;
    padding: 5px 5px
  }

  table.responsive-table tfoot td.label {
    font-weight: 500
  }

  table.responsive-table tr {
    border-bottom: 0;
    padding: 0 10px
  }

  table.responsive-table thead {
    border: 0;
    border-right: 1px solid var(--dotted-color)
  }
}

/* ---- Theme Partials: Buttons ---- */
button,
.button {
  font-family: var(--main-family);
  font-size: var(--font-size);
  font-weight: var(--main-weight);
  text-transform: var(--buttons-transform);
  letter-spacing: var(--buttons-spacing);
  text-decoration: none;
  cursor: pointer;
  display: inline-block;
  vertical-align: middle;
  height: var(--space-8);
  padding: 0 var(--space-5);
  line-height: var(--space-8);
  margin-bottom: var(--space-3);
  width: auto;
  -webkit-appearance: none;
  border: 0;
  border-radius: unset;
  box-shadow: unset;
  transition: 0.3s ease-out;
}

button:disabled,
.button:disabled,
button.btn-disabled,
.button.btn-disabled {
  opacity: 0.5;
  pointer-events: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  cursor: default;
}

button:focus-visible,
.button:focus-visible {
  outline-offset: -3px !important;
}

button.btn-full,
.button.btn-full {
  width: 100%;
  display: block;
  text-align: center;
}

button.btn-sm,
.button.btn-sm {
  height: 1.5rem;
  line-height: 0.5rem;
  font-size: 0.75rem;
  padding: 0.5rem 0.5rem;
}

button.btn-lg,
.button.btn-lg {
  height: 3.5rem;
  line-height: 2.25rem;
  font-size: 1.25rem;
  padding: 0.75rem 1.25rem;
}

.shopify-payment-button__button--unbranded,
.shopify-challenge__button {
  font-family: var(--main-family) !important;
  font-weight: var(--main-weight) !important;
  font-style: var(--main-style) !important;
  font-size: var(--font-size) !important;
  text-transform: var(--buttons-transform) !important;
  text-decoration: none;
  cursor: pointer;
  display: inline-block;
  vertical-align: middle;
  height: var(--space-8);
  padding: 0 var(--space-5) !important;
  line-height: var(--space-8);
  margin: 0 0 var(--space-3) 0;
  width: auto;
  -webkit-appearance: none;
  border: 0;
  border-radius: unset !important;
  box-shadow: unset !important;
  transition: 0.3s ease-out;
  display: block;
  width: 100%;
}

.shopify-payment-button__button--unbranded:disabled,
.shopify-challenge__button:disabled,
.shopify-payment-button__button--unbranded.btn-disabled,
.shopify-challenge__button.btn-disabled {
  opacity: 0.5 !important;
  pointer-events: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  cursor: default;
}

.shopify-payment-button__button--unbranded:focus-visible,
.shopify-challenge__button:focus-visible {
  outline-offset: -3px !important;
}

button.btn-secondary,
[type="button"].btn-secondary,
[type="submit"].btn-secondary,
a.button.btn-secondary,
.shopify-challenge__button {
  font-size: var(--font-size);
  font-family: var(--main-family);
  font-weight: var(--main-weight);
  font-style: var(--main-style);
  letter-spacing: var(--main-spacing);
  text-transform: var(--buttons-transform);
}

button.btn-secondary.btn-disabled,
[type="button"].btn-secondary:disabled,
[type="submit"].btn-secondary:disabled,
a.button.btn-secondary.btn-disabled {
  opacity: 0.5;
}

.btn-secondary.ajax-submit,
.shopify-payment-button__button--unbranded {
  height: var(--space-8);
  line-height: var(--space-8);
}

button.btn-as-link,
[type="button"].btn-as-link,
[type="submit"].btn-as-link,
a.button.btn-as-link,
.product-additional-buttons .shopify-payment-button__more-options {
  color: var(--text-color) !important;
  font-family: var(--main-family);
  font-weight: var(--main-weight);
  font-style: var(--main-style);
  border: none !important;
  background: none !important;
  margin-bottom: 0 !important;
  border-radius: unset !important;
  text-transform: initial !important;
  padding: 0 !important;
  line-height: normal !important;
  height: unset !important;
  cursor: pointer;
}

button.btn-as-link.underlined,
[type="button"].btn-as-link.underlined,
[type="submit"].btn-as-link.underlined,
a.button.btn-as-link.underlined {
  text-decoration: underline !important;
}

button.btn-as-link:hover,
[type="button"].btn-as-link:hover,
[type="submit"].btn-as-link:hover,
a.button.btn-as-link:hover,
.product-additional-buttons .shopify-payment-button__more-options:hover {
  color: var(--text-color) !important;
  border: none !important;
  background: none !important;
}

button.btn-as-link:focus-visible,
[type="button"].btn-as-link:focus-visible,
[type="submit"].btn-as-link:focus-visible,
a.button.btn-as-link:focus-visible,
.product-additional-buttons .shopify-payment-button__more-options:focus-visible {
  outline: var(--keyboard-focus) var(--keyboard-border-style) var(--keyboard-border-weight) !important;
  outline-offset: var(--keyboard-border-offset-weight) !important;
}

button[hidden] {
  visibility: hidden;
}

.shopify-payment-button__more-options,
.shopify-payment-button__more-options:disabled {
  font-size: var(--font-size-sm);
}

.shopify-payment-button__more-options:hover:not([disabled]) {
  text-decoration: underline;
}

button,
.button,
button:disabled,
.button:disabled,
button.btn-disabled,
.button.btn-disabled {
  color: var(--button-text);
  background-color: var(--button-bg);
}

.product-additional-buttons .shopify-payment-button__button--unbranded,
.product-additional-buttons .shopify-challenge__button,
.product-additional-buttons .shopify-payment-button__button--unbranded:visited,
.product-additional-buttons .shopify-challenge__button:visited,
.product-additional-buttons .shopify-payment-button__button--unbranded:disabled,
.product-additional-buttons .shopify-challenge__button:disabled,
.product-additional-buttons .shopify-payment-button__button--unbranded.btn-disabled,
.product-additional-buttons .shopify-challenge__button.btn-disabled {
  color: var(--button-text);
  background-color: var(--button-bg);
}

button:visited,
.button:visited,
.shopify-payment-button__more-options,
.shopify-payment-button__more-options:disabled {
  color: var(--button-text);
}

button:hover,
.button:hover,
.shopify-payment-button__button--unbranded:hover:not([disabled]),
.shopify-challenge__button:hover {
  background-color: var(--button-bg);
}

button:focus-visible,
.button:focus-visible,
.shopify-payment-button__button--unbranded:focus-visible,
.shopify-challenge__button:focus-visible {
  outline: 1px solid var(--button-text);
}

button.btn-secondary,
[type="button"].btn-secondary,
[type="submit"].btn-secondary,
a.button.btn-secondary,
.shopify-challenge__button,
.product__section--main .product-single__view-in-space {
  color: var(--secondary-button-text);
  background-color: var(--secondary-button-bg);



}

button.btn-secondary:hover,
[type="button"].btn-secondary:hover,
[type="submit"].btn-secondary:hover,
a.button.btn-secondary:hover,
.shopify-challenge__button:hover {
  background-color: var(--secondary-button-bg);
}

/* ---- Forge new button animations v4.0.0 ---- */
button[type="submit"]:not(.btn-as-link):not(.btn-border-link):before,
.button:not(.js-slideout-open):before,
.shopify-payment-button__button--unbranded:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  transition: all .25s;
  z-index: -1;
  background: var(--button-hover);
  width: 0;
}

button[type="submit"],
.button,
.shopify-payment-button__button--unbranded {
  position: relative;
  z-index: 0;
}

button[type="submit"]:not(.btn-border-link):hover::before,
.button:hover::before,
.shopify-payment-button__button--unbranded:hover::before {
  width: 100%;
}

button.btn-secondary:before,
[type="button"].btn-secondary:before,
[type="submit"].btn-secondary:before,
a.button.btn-secondary:before,
.shopify-challenge__button:before,
.product__section--main .product-single__view-in-space:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  transition: all .25s;
  z-index: -1;
  background: var(--secondary-button-hover) !important;
  width: 0;
}

.btn-secondary:hover::before,
.shopify-challenge__button::hover:before,
.product__section--main .product-single__view-in-space:hover::before {
  width: 100%;
}

/* ---- Forge Custom Buttons ---- */
.btn-border-link {
  text-transform: var(--buttons-transform);
  line-height: 42px;
  padding: 0;
  border: 1px solid var(--text-color);
  /* Viền đen 1px ban đầu */
  letter-spacing: var(--buttons-spacing);
  position: relative;
  color: var(--text-color);
  /* Chữ đen ban đầu */
}

.btn-border-link span {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  padding: 0 var(--space-4);
}

/* Khi hover: Nền đen, chữ trắng */
.btn-border-link:hover {
  background: var(--text-color);
  /* Nền đen */
  color: #fff;
  /* Chữ trắng */
}

/* Media Query cho khả năng tiếp cận */
@media screen and (prefers-reduced-motion: reduce) {
  .btn-border-link:hover {
    background: var(--text-color);
    color: #fff;
  }
}

/* --- Forge filter buttons ---*/
button.button[data-wau-slideout-target="collection-filters"] svg,
button.button[data-wau-slideout-target="search-filters"] svg {
  pointer-events: none;
}

button.button[data-wau-slideout-target="collection-filters"],
button.button[data-wau-slideout-target="search-filters"] {
  background: var(--background);
  color: var(--text-color);
  border: 1px solid var(--dotted-color);
  display: inline-flex;
  align-items: center;
}

button.button[data-wau-slideout-target="collection-filters"] svg g,
button.button[data-wau-slideout-target="search-filters"] svg g {
  color: var(--text-color);
  fill: var(--text-color);
}

/* ---- Theme Partials: Forms ---- */
select {
  font-family: var(--main-family);
  font-style: var(--main-style);
  font-weight: var(--main-weight);
  font-size: var(--font-size);
  color: var(--text-color);
  max-width: 100%;
  min-width: 180px;
  height: var(--space-7);
  padding: 0 var(--space-2);
  border: 0;
  background-color: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

select:active,
select:focus-visible {
  outline: 0;
  box-shadow: none;
}

.simple-select {
  position: relative;
  background-color: var(--background);
  width: auto;
  display: inline-block;
  max-width: 100%;
}

.simple-select .select-selected:after {
  content: " ";
  border: solid var(--dotted-color);
  border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 2px;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  position: absolute;
  top: 54%;
  right: var(--space-4);
}

.simple-select .select-selected.select-arrow-active:after {
  content: " ";
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}

.simple-select .select-selected {
  font-size: var(--font-size);
  color: var(--text-color);
  height: var(--space-7);
  padding: 0 var(--space-4);
  line-height: var(--space-7);
  border-style: solid;
  cursor: pointer;
  border-radius: 0;
  border-top: 0;
  border-left: none;
  border-right: 0;
  width: 100%;
  background: var(--forms-bg);
  border: unset;
  position: relative;
}

textarea,
input[type="text"],
input[type="email"],
input[type="password"] {
  font-size: var(--font-size);
  font-stretch: normal;
  font-family: var(--main-family) !important;
  font-weight: var(--main-weight);
  font-style: var(--main-style);
  line-height: 1.4;
  letter-spacing: var(--main-spacing);
  color: var(--text-color);
  border-top: 0;
  border-left: none;
  border-right: 0;
  border-bottom: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  height: var(--space-8);
  padding: 0 var(--space-3);
  line-height: var(--space-8);
  width: 100%;
  background: var(--forms-bg);
}

textarea.no-bg-color,
input[type="text"].no-bg-color,
input[type="email"].no-bg-color,
input[type="password"].no-bg-color {
  background: transparent;
}

input[type="number"] {
  font-family: var(--main-family);
  font-weight: var(--main-weight);
  font-style: var(--main-style);
  letter-spacing: var(--main-spacing);
}

textarea::placeholder,
input[type="text"]::placeholder,
input[type="email"]::placeholder,
input[type="password"]::placeholder {
  color: var(--text-color);
}

.form label {
  font-size: var(--font-size);
  font-stretch: normal;
  font-style: normal;
  line-height: 1.57;
  letter-spacing: 1px;
  color: var(--text-color);
  position: relative;
  top: unset;
  left: unset;
}

.form small {
  font-size: 0.75rem;
  font-stretch: normal;
  font-style: normal;
  line-height: 1.63;
  letter-spacing: var(--main-spacing);
  padding-top: var(--space-2);
}

.form small.validation-message {
  color: var(--error-msg-dark);
}

.form small.validation-message:before {
  content: "";
  width: 15px;
  height: 15px;
  position: absolute;
  top: 38px;
  right: 16px;
  background-image: url("data:image/svg+xml,%3Csvgversion='1.1'id='Layer_1'xmlns='http://www.w3.org/2000/svg'xmlns:xlink='http://www.w3.org/1999/xlink'x='0px'y='0px'viewBox='002121'style='enable-background:new002121;'xml:space='preserve'%3E%3Cstyletype='text/css'%3E.st0%7Bfill:none;stroke:grey;stroke-width:1.4142;stroke-linecap:round;%7D%0A%3C/style%3E%3Cgid='Styles'%3E%3Cgid='icon-fill'transform='translate(-462.000000,-703.000000)'%3E%3Cgid='X-Icon'transform='translate(472.485281,713.485281)rotate(-315.000000)translate(-472.485281,-713.485281)translate(466.485281,707.485281)'%3E%3Clineid='Path-2'class='st0'x1='6'y1='-4.6'x2='6'y2='16.6'/%3E%3Clineid='Path-2-Copy'class='st0'x1='-4.6'y1='6'x2='16.6'y2='6'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
}

textarea:focus-visible,
input[type="text"]:focus-visible,
input[type="email"]:focus-visible,
input[type="password"]:focus-visible {
  outline: none !important;
  border-top: 0;
  border-left: none;
  border-right: 0;
  border-bottom: none;
  color: var(--text-color);
}

textarea ::-webkit-input-placeholder,
input[type="text"] ::-webkit-input-placeholder,
input[type="email"] ::-webkit-input-placeholder,
input[type="password"] ::-webkit-input-placeholder {
  color: transparent !important;
}

textarea ::-moz-placeholder,
input[type="text"] ::-moz-placeholder,
input[type="email"] ::-webkit-input-placeholder,
input[type="password"] ::-webkit-input-placeholder {
  color: transparent !important;
}

textarea :-ms-input-placeholder,
input[type="text"] :-ms-input-placeholder,
input[type="email"] :-ms-input-placeholder,
input[type="password"] :-ms-input-placeholder {
  color: transparent !important;
}

textarea :-moz-placeholder,
input[type="text"] :-moz-placeholder,
input[type="email"] :-moz-placeholder,
input[type="password"] :-moz-placeholder {
  color: transparent !important;
}

textarea:focus ::-webkit-input-placeholder,
input[type="text"]:focus ::-webkit-input-placeholder,
input[type="email"]:focus ::-webkit-input-placeholder,
input[type="password"]:focus ::-webkit-input-placeholder {
  color: transparent !important;
}

textarea:focus ::-moz-placeholder,
input[type="text"]:focus ::-moz-placeholder,
input[type="email"]:focus ::-webkit-input-placeholder,
input[type="password"]:focus ::-webkit-input-placeholder {
  color: transparent !important;
}

textarea:focus :-ms-input-placeholder,
input[type="text"]:focus :-ms-input-placeholder,
input[type="email"]:focus :-ms-input-placeholder,
input[type="password"]:focus :-ms-input-placeholder {
  color: transparent !important;
}

textarea:focus :-moz-placeholder,
input[type="text"]:focus :-moz-placeholder,
input[type="email"]:focus :-moz-placeholder,
input[type="password"]:focus :-moz-placeholder {
  color: transparent !important;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus-visible,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus-visible,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus-visible {
  border-top: 0;
  border-left: none;
  border-right: 0;
  border-bottom: 2px solid var(--dotted-color);
  color: var(--text-color);
  -webkit-text-fill-color: var(--text-color);
  -webkit-box-shadow: 0 0 0 1000px var(--background) inset;
  transition: background-color 5000s ease-in-out 0s;
  font-size: var(--font-size);
  font-stretch: normal;
  font-style: normal;
  line-height: 1.57;
}

.form-vertical>* {
  display: inline-block;
  vertical-align: middle;
  margin-right: 5px;
  width: auto !important;
}

.form-vertical input,
.form-vertical [type="submit"] {
  margin-bottom: 0.75rem !important;
}

.form.form-vertical small.validation-message {
  display: block;
  margin-bottom: var(--space-2);
}

.form.form-vertical small.validation-message:before {
  background-image: none;
  top: unset;
  right: unset;
}

.note,
.note-error.errors p,
.note-error.errors p a,
.note-error.errors ul li {
  font-size: var(--font-size-sm);
  line-height: initial;
}

.note-error.errors p {
  color: var(--error-msg-dark);
}

.note-error.errors ul {
  margin-bottom: 0;
}

.shopify-challenge__container {
  padding-top: 10vh;
}

input.required-error,
textarea.required-error {
  outline: 1px solid var(--error-msg-dark);
}

textarea {
  line-height: 1.6 !important;
  padding-top: var(--space-2);
  padding-bottom: var(--space-2);
  min-height: var(--space-10);
}

/* ---- Theme Partials: Helpers ---- */
:root {
  --z1: 1;
  --z2: 2;
  --z3: 3;
  --z4: 4;
  --border-width: 1px;
  --border-radius: 3px
}

.relative {
  position: relative
}

.absolute {
  position: absolute
}

.fixed {
  position: fixed
}

.l-float {
  float: left
}

.r-float {
  float: right
}

.clearfix {
  overflow: auto
}

.table {
  display: table
}

.table-cell {
  display: table-cell
}

.overflow-hidden {
  overflow: hidden
}

.overflow-scroll {
  overflow: scroll
}

.overflow-auto {
  overflow: auto
}

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

.z1 {
  z-index: var(--z1)
}

.z2 {
  z-index: var(--z2)
}

.z3 {
  z-index: var(--z3)
}

.z4 {
  z-index: var(--z4)
}

.r0 {
  right: 0
}

.l0 {
  left: 0
}

.t0 {
  top: 0
}

.b0 {
  bottom: 0
}

.r5 {
  right: 5%
}

.l5 {
  left: 5%
}

.t5 {
  top: 5%
}

.b5 {
  bottom: 5%
}

.r10 {
  right: 10%
}

.l10 {
  left: 10%
}

.t10 {
  top: 10%
}

.b10 {
  bottom: 10%
}

.r20 {
  right: 20%
}

.l20 {
  left: 20%
}

.t20 {
  top: 20%
}

.b20 {
  bottom: 20%
}

.r30 {
  right: 30%
}

.l30 {
  left: 30%
}

.t30 {
  top: 30%
}

.b30 {
  bottom: 30%
}

.r40 {
  right: 40%
}

.l40 {
  left: 40%
}

.t40 {
  top: 40%
}

.b40 {
  bottom: 40%
}

.r50 {
  right: 50%
}

.l50 {
  left: 50%
}

.t50 {
  top: 50%
}

.b50 {
  bottom: 50%
}

.w100 {
  width: 100%
}

.w90 {
  width: 90%
}

.w80 {
  width: 80%
}

.w75 {
  width: 75%
}

.w70 {
  width: 70%
}

.w60 {
  width: 60%
}

.w50 {
  width: 50%
}

.w40 {
  width: 40%
}

.w33 {
  width: 33%
}

.w30 {
  width: 30%
}

.w25 {
  width: 25%
}

.w20 {
  width: 20%
}

.w10 {
  width: 10%
}

.wauto {
  width: auto
}

@media(max-width:767px) {
  .sm-w100 {
    width: 100%
  }

  .sm-w90 {
    width: 90%
  }

  .sm-w80 {
    width: 80%
  }

  .sm-w75 {
    width: 75%
  }

  .sm-w70 {
    width: 70%
  }

  .sm-w60 {
    width: 60%
  }

  .sm-w50 {
    width: 50%
  }

  .sm-w40 {
    width: 40%
  }

  .sm-w33 {
    width: 33%
  }

  .sm-w30 {
    width: 30%
  }

  .sm-w25 {
    width: 25%
  }

  .sm-w20 {
    width: 20%
  }

  .sm-w10 {
    width: 10%
  }

  .sm-a-left {
    text-align: left !important;
  }
}

.sm-a-right {
  text-align: right !important;
}

.sm-a-center {
  text-align: right !important;
}

.inline {
  display: inline
}

.block {
  display: block
}

.button,
.inline-block {
  display: inline-block
}

.button.w100,
.inline-block.w100 {
  width: calc(100% - 2px)
}

.button.w90,
.inline-block.w90 {
  width: calc(90% - 2px)
}

.button.w80,
.inline-block.w80 {
  width: calc(80% - 2px)
}

.button.w75,
.inline-block.w75 {
  width: calc(75% - 2px)
}

.button.w70,
.inline-block.w70 {
  width: calc(70% - 2px)
}

.button.w60,
.inline-block.w60 {
  width: calc(60% - 2px)
}

.button.w50 {
  width: calc(50% - 12px);
  margin: 0 5px
}

.inline-block.w50 {
  width: calc(50% - 2px)
}

.button.w40,
.inline-block.w40 {
  width: calc(40% - 2px)
}

.button.w33,
.inline-block.w33 {
  width: calc(33% - 2px)
}

.button.w30,
.inline-block.w30 {
  width: calc(30% - 2px)
}

.button.w25,
.inline-block.w25 {
  width: calc(25% - 2px)
}

.button.w20,
.inline-block.w20 {
  width: calc(20% - 2px)
}

.button.w10,
.inline-block.w10 {
  width: calc(10% - 2px)
}

.full-height {
  min-height: 100vh
}

.absolute-center {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%)
}

.center-content {
  text-align: center;
  margin-left: auto;
  margin-right: auto
}

.hor-center {
  left: 50%;
  transform: translate(-50%, 0)
}

ul.inline-block>li {
  display: inline-block;
  vertical-align: middle
}

.radio-hide {
  position: absolute;
  appearance: none;
  cursor: pointer;
  left: -100%;
  top: -100%
}

.clear {
  clear: both;
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0
}

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

.display-none {
  display: none !important
}

@media(max-width:767px) {
  .sm-hide {
    display: none !important
  }
}

@media(min-width:768px) and (max-width:1023px) {
  .md-hide {
    display: none !important
  }
}

@media(max-width:1023px) {
  .devices-hide {
    display: none !important
  }
}

@media(min-width:768px) {
  .md-lg-hide {
    display: none !important
  }
}

@media(min-width:1024px) {
  .lg-hide {
    display: none !important
  }
}

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

.visually-visible {
  visibility: visible !important
}

.loading-wrapper {
  width: 100%;
  height: 100%;
  position: fixed;
  background: var(--background);
  z-index: 200;
  margin: 0 auto;
  text-align: center;
  opacity: .9;
  left: 0;
  top: 0
}

.cart-loaded .loading-wrapper {
  display: none;
  opacity: 0
}

.loading-ripple {
  display: inline-block;
  width: 80px;
  height: 80px;
  top: 50%;
  position: absolute;
  transform: translate(-50%, -50%);
  left: 50%
}

.loading-ripple div {
  position: absolute;
  border: 4px solid var(--dotted-color);
  opacity: 1;
  border-radius: 50%;
  animation: loadingRipple 1s cubic-bezier(0, .2, .8, 1) infinite
}

.loading-ripple div:nth-child(2) {
  animation-delay: -.5s
}

.border {
  border-style: solid;
  border-width: var(--border-width);
  border-color: var(--dotted-color)
}

.border-none {
  border: 0
}

.border-top {
  border-top-style: solid;
  border-top-width: var(--border-width);
  border-color: var(--dotted-color)
}

.border-right {
  border-right-style: solid;
  border-right-width: var(--border-width);
  border-color: var(--dotted-color)
}

.border-bottom {
  border-bottom-style: solid;
  border-bottom-width: var(--border-width);
  border-color: var(--dotted-color)
}

.border-left {
  border-left-style: solid;
  border-left-width: var(--border-width);
  border-color: var(--dotted-color)
}

.rounded {
  border-radius: var(--border-radius)
}

.circle {
  border-radius: 50%
}

.not-rounded {
  border-radius: 0
}

.rounded-top {
  border-radius: var(--border-radius) var(--border-radius) 0 0
}

.rounded-right {
  border-radius: 0 var(--border-radius) var(--border-radius) 0
}

.rounded-bottom {
  border-radius: 0 0 var(--border-radius) var(--border-radius)
}

.rounded-left {
  border-radius: var(--border-radius) 0 0 var(--border-radius)
}

.font-family-inherit {
  font-family: inherit
}

.font-size-inherit {
  font-size: inherit
}

.text-decoration-none {
  text-decoration: none
}

.strike {
  text-decoration: line-through
}

.bold {
  font-weight: 500 !important
}

.regular {
  font-weight: 400
}

.italic {
  font-style: italic
}

.caps {
  text-transform: uppercase;
  letter-spacing: .2em
}

.nowrap {
  white-space: nowrap
}

.break-word {
  word-wrap: break-word
}

.shrink-wrap {
  font-size: 0
}

.lh0 {
  line-height: 0
}

.lh1 {
  line-height: 1
}

.lh2 {
  line-height: 1.125
}

.lh3 {
  line-height: 1.25
}

.lh4 {
  line-height: 1.5
}

.list-style-none {
  list-style: none
}

.underline {
  text-decoration: underline
}

.truncate {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap
}

.list-reset {
  list-style: none;
  padding-left: 0
}

.divider {
  height: 1px;
  overflow: hidden;
  background-color: #e0e0e0
}

.note {
  padding: var(--space-3);
  border: 1px solid #ccc
}

.note-success {
  border-color: var(--success-msg-dark);
  background-color: var(--success-msg-light)
}

.note-error {
  border-color: var(--error-msg-dark);
  background-color: var(--error-msg-light);
  color: var(--error-msg-dark)
}

hr.hr-sm {
  border: 1px solid var(--dotted-color)
}

hr.hr-md {
  border: 2px solid var(--dotted-color)
}

hr.hr-lg {
  border: 3px solid var(--dotted-color)
}

ul.nested li>ul li {
  margin-left: 20px
}

ul.nested.bullet li ul {
  list-style: circle
}

ul.nested.bullet li ul li ul {
  list-style: square
}

ul.bullet {
  list-style: disc;
  padding-left: 1rem
}

.disabled {
  opacity: .4
}

.pointer {
  cursor: pointer
}

.onsale {
  color: var(--sale-color)
}

.or-divider {
  position: relative;
  text-transform: uppercase
}

.or-divider span:before {
  content: '';
  background: var(--dotted-color);
  height: 1px;
  width: 40%;
  position: absolute;
  left: 0;
  top: 50%
}

.or-divider span:after {
  content: '';
  background: var(--dotted-color);
  height: 1px;
  width: 40%;
  position: absolute;
  right: 0;
  top: 50%
}

.no-pe {
  pointer-events: none;
}

.note-error .errors {
  display: inline-block;
  width: calc(80% - 2px);
  vertical-align: top;
}

.note-error .errors ul {
  margin-bottom: 0;
}

.stickynav {
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

@media (min-width: 768px) {
  .sticky--content {
    position: -webkit-sticky;
    position: sticky;
    top: 25px;
  }
}

/* ---- Theme Partials: Global Sections ---- */
.dynamic-section {
  display: inline-block;
  width: 100%
}

.global__section {
  margin-top: calc(var(--section-padding) / 2);
  padding-bottom: calc(var(--section-padding) / 2);
  position: relative
}

.global__section.mt0 {
  margin-top: 0
}

.global__section.pb0 {
  padding-bottom: 0
}

.on-board--caption {
  top: 50%;
  transform: translate(-50%, -50%);
  width: 600px;
  left: 50%
}

.on-board--placeholder {
  opacity: .3
}

/* ---- Theme Partials: Load Layout ---- */
.placeholder-svg {
  background: var(--placeholder-background);
  fill: var(--placeholder-fill);
}

.collection__filtering,
.search__filtering {
  position: relative;
  width: 220px;
  display: inline-block;
  height: var(--space-8);
}

.collection__horizontal-toolbar .value-list,
.search__horizontal-toolbar .value-list {
  list-style: none;
  margin-top: var(--space-8);
  box-shadow: 0 5px 8px 0 rgb(0 0 0 / 20%);
  overflow: hidden;
  max-height: 0;
  transition: .3s ease-in-out;
  z-index: 3;
}

.collection__horizontal-toolbar .chosen-value,
.search__horizontal-toolbar .chosen-value {
  font-weight: 600;
  height: var(--space-8);
  font-size: var(--font-size);
  background-color: var(--background);
  border: 1px solid var(--dotted-color) !important;
  transition: .3s ease-in-out;
  text-align: left;
  margin-bottom: 0 !important;
  padding: 0 var(--space-4);
}

.filter-price__trigger {
  text-transform: inherit;
  height: var(--space-8);
  font-size: var(--font-size);
  background-color: var(--background);
  color: var(--text-color);
  border: 1px solid var(--dotted-color);
  transition: .3s ease-in-out;
  text-align: left;
  margin-bottom: 0 !important;
  position: relative;
  width: 220px;
  display: inline-block;
  line-height: var(--space-8);
  padding-left: var(--space-4);
  border-radius: unset !important;
}

.collection__horizontal-toolbar .filter,
.search__horizontal-toolbar .filter {
  display: inline-block;
  margin-right: 10px;
  border: 0;
  margin-bottom: 10px;
  vertical-align: top;
}

.collection__horizontal-toolbar .chosen-value,
.collection__horizontal-toolbar .value-list,
.search__horizontal-toolbar .chosen-value,
.search__horizontal-toolbar .value-list {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.slideout {
  display: none;
  position: fixed;
  top: 0;
  bottom: 0;
  left: unset;
  right: unset;
}

@media(min-width:1024px) {
  .slideout {
    width: var(--slideout-desktop);
  }

  .slideout__drawer-right {
    transform: translateX(var(--slideout-desktop))
  }

  .slideout__drawer-left {
    transform: translateX(var(--slideout-desktop-n))
  }
}

@media(max-width:1023px) {
  .slideout {
    width: var(--slideout-mobile);
  }

  .slideout__drawer-right {
    transform: translateX(var(--slideout-mobile));
  }

  .slideout__drawer-left {
    transform: translateX(var(--slideout-mobile-n));
  }
}

.searchbox {
  position: absolute;
  top: 0;
  left: 0;
  transform: translateY(-300%);
}

#drop-mega-menu,
.pswp,
.site-overlay,
ul.header__navigation li.dropdown ul.submenu,
ul.header__navigation li.dropdown ul.submenu .nested {
  display: none;
}

.section-fade-in {
  opacity: 1;
  animation-name: fadeInOpacity;
  animation-iteration-count: 1;
  animation-timing-function: ease-in;
  animation-duration: .4s;
}

.shopify-policy__container {
  padding-top: var(--space-10);
}

.ajax-cart__sticky-footer {
  position: sticky;
  bottom: 0;
  left: 0;
  background: white;
  padding: var(--space-4);
  -webkit-box-shadow: 0px -6px 4px 0px rgba(0, 0, 0, 0.05);
  box-shadow: 0px -6px 4px 0px rgba(0, 0, 0, 0.05);
}

.ajax-cart__sticky-footer .shopify-cleanslate ul {
  justify-content: center !important;
}

/* ---- Skip link ---- */

.skip-link {
  visibility: unset !important;
  display: inline-block;
  width: max-content;
  line-height: 50px;
  padding: 0 20px;
  background-color: var(--button-bg);
  color: var(--button-text);
}

.skip-link:focus {
  z-index: 9999;
  position: inherit;
  overflow: auto;
  width: auto;
  height: auto;
  clip: auto;
  background-color: var(--button-bg);
  color: var(--button-text);
}

@media only screen and (min-width: 1020px) {
  article#product-photos {
    position: sticky;
    top: 70px;
  }
}

/* Container chính */
.ring-detail-container {
  margin: 20px 0;
  overflow: hidden;
  margin-top: 0px;
  width: 100%;
}

@media (max-width: 768px) {
  .accordion-content ul li .label {
    width: 190px !important;
    /* Độ rộng cố định để căn đều */
  }
}

/* Accordion toggle */
.accordion-toggle {
  display: flex;
  /* Đảm bảo các phần tử xếp theo hàng ngang */
  align-items: center;
  /* Canh giữa theo chiều dọc */
  justify-content: space-between;
  /* Đẩy các thành phần về hai phía */
  padding: 12px 16px 12px 16px;
  /* Tạo khoảng cách đều giữa các thành phần */
  width: 100%;
  /* Đảm bảo phần toggle kéo dài hết chiều ngang container */
  border-radius: 5px;
  /* Bo góc */
  background-color: #f9f9f9;
  /* Màu nền nhạt */
  cursor: pointer;
  /* Con trỏ tay khi hover */
  transition: background-color 0.3s ease;
  /* Hiệu ứng hover */
  height: 54px;
}

.accordion-toggle:hover {
  background-color: #ececec;
  /* Màu nền khi hover */
}

/* Icon kim cương */
.accordion-icon img {
  width: 30px;
  /* Kích thước icon */
  height: auto;
  margin-right: 10px;
  /* Khoảng cách giữa icon và chữ */
  display: block;
}

/* Chữ "Ring Detail" */
.accordion-title {
  flex: 1;
  /* Cho phép chữ chiếm khoảng trống giữa icon và mũi tên */
  font-weight: 500;
  /* Tô đậm chữ */
  font-size: 16px;
  /* Kích thước chữ */
  color: #333;
  /* Màu chữ */
  text-align: left;
  /* Canh chữ sang trái */
}

/* Dấu mũi tên */
.accordion-arrow {
  font-size: 20px;
  /* Kích thước mũi tên */
  color: #333;
  /* Màu mũi tên */
}

/* Accordion content */
.accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease;
  background-color: #fff;
  padding-bottom: 0px;
}

.accordion-content.open {
  max-height: 1000px;
  /* Đủ lớn để chứa nội dung */
}

/* Section title */
.section-title {
  font-weight: 500;
  font-size: 14px;
  margin-bottom: 10px;
  color: #333;
  padding-top: 10px;
  padding-left: 10px;
}

/* Danh sách nội dung */
.accordion-content ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.accordion-content ul li {
  display: flex;
  justify-content: space-between;
  align-items: top;
  margin-bottom: 8px;
  font-size: 14px;
  color: #444;
  padding-left: 10px;

}

.accordion-content ul li .label {
  font-weight: normal;
  /* Đảm bảo nhãn không in đậm */
  width: 250px;
  /* Độ rộng cố định để căn đều */
  color: #333;
  font-size: 14px;
}

.accordion-content ul li .value {
  flex: 1;
  /* Để nội dung tự co giãn */
  text-align: left;
  color: #444;
  font-size: 14px;
}

/* Khoảng cách cuối cùng */
.accordion-content ul li:last-child {
  margin-bottom: 0;
}

/* Submenu cấp 1 - 16px */
.tmenu_item_level_1>.tmenu_item_link>.tmenu_item_text {
  font-size: 16px !important;
}

/* Submenu cấp 2 - 14px */
.tmenu_item_level_2>.tmenu_item_link>.tmenu_item_text,
.tmenu_item_level_2>.tmenu_item_link>.tmenu_image>.tmenu_item_text {
  font-size: 14px !important;
}

li.tmenu_item--root>.tmenu_submenu {
  box-shadow: none !important;
}

.navigation .tmenu_wrapper {
  z-index: 11;
}

/* Cho desktop (màn hình lớn hơn 768px) */
@media (min-width: 769px) {

  .tmenu_submenu_type_automatic,
  .tmenu_submenu_type_mega {
    max-height: 600px;
    /* Chiều cao tối đa trên desktop */
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    position: relative;
    z-index: 10;
  }
}

/* Cho mobile (màn hình nhỏ hơn hoặc bằng 768px) */
@media (max-width: 768px) {

  .tmenu_submenu_type_automatic,
  .tmenu_submenu_type_mega {
    /* Loại bỏ max-height, height và overflow-y */
    position: relative;
    /* Giữ nguyên position relative */
    z-index: 10;
    /* Giữ nguyên z-index */
  }
}

@font-face {
  font-family: "Avenir Next Medium";
  src: url("/cdn/shop/files/avenir-next-demi.ttf?v=1740648232") format("opentype");
  font-weight: 500;
  /* Medium */
  font-style: normal;
}

/* Container tổng */
.center-stone-container {
  max-width: 800px;
  margin: 0 auto;
  text-align: left;
  padding: 0px 0px;
  margin-bottom: 14px;
  font-size: 16px !important;
}

* Dòng chữ "Center Stone Shape" */ .current-shape {
  font-size: 16px !important;
  font-weight: none;
  color: #333;
  margin-bottom: 20px;
  padding: 10px 0;
}

/* Phần icon shape */
.shape-icons {
  display: flex;
  flex-wrap: wrap;
  justify-content: left;
  gap: 12px;
}

.shape-icon {
  text-align: center;
  text-decoration: none;
  color: inherit;
  transition: transform 0.3s, border-color 0.3s;
}

/* Hình đại diện shape */
.shape-icon img {
  width: 40px;
  height: 40px;
  object-fit: contain;
  border-radius: 50%;
  border: 1px solid #ddd;
  padding: 5px;
  background-color: #f9f9f9;
  transition: border-color 0.3s, box-shadow 0.3s;
}

/* Ẩn nhãn bên dưới hình đại diện */
.shape-icon span {
  display: none;
}

/* Hiển thị viền đậm cho shape được chọn */
.shape-icon.active img {
  border-color: #000000;

  box-shadow: 0 .ring-style-filter {
    display: flex;
    justify-content: center;
    /* Căn giữa các icon */
    gap: 30px;
    /* Khoảng cách giữa các icon */
    flex-wrap: wrap;
    /* Cho phép icon xuống dòng nếu không đủ chỗ */
    padding: 20px 0;
  }

  .filter-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    cursor: pointer;
    transition: transform 0.3s ease;
    /* Hiệu ứng hover */
  }

  .filter-item img {
    width: 70px;
    /* Đặt chiều rộng icon */
    height: 70px;
    /* Đặt chiều cao icon */
    object-fit: contain;
    /* Đảm bảo icon không bị méo */
  }

  .filter-item p {
    margin-top: 10px;
    font-size: 16px;
    font-weight: 500;
  }

  /* Hiệu ứng khi hover vào icon */
  .filter-item:hover {
    transform: scale(1.1);
    /* Phóng to nhẹ khi hover */
  }

  img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
  }

  shopify-accelerated-checkout-cart {
    margin-right: 0px !important;
  }

  .product__section--app:has(.AirReviews-StarRatingWrapper:empty) {
    display: none !important;
  }