/** Shopify CDN: Minification failed

Line 3559:0 Expected "}" to go with "{"

**/
/* theme.css : Color custom properties */
:root {
  --alpha-button-background: 1;
  --alpha-button-border: 1;
  --alpha-link: 0.85;
  --alpha-badge-border: 0.1;
}

.button--tertiary {
  --color-button: var(--color-base-outline-button-labels);
  --color-button-text: var(--color-base-outline-button-labels);
  --alpha-button-background: 0;
  --alpha-button-border: 0.2;
}

/* base CSS */

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

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

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

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

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

/*  page width   */

.page-width {
  max-width: var(--page-width);
  margin: 0 auto;
  padding: 0 1.5rem;
}

.page-width-desktop {
  padding: 0;
  margin: 0 auto;
}

@media screen and (min-width: 750px) {
  .page-width {
    padding: 0 5rem;
  }

  .page-width--narrow {
    padding: 0 9rem;
  }

  .page-width-desktop {
    padding: 0;
  }
}

@media screen and (min-width: 990px) {
  .page-width--narrow {
    max-width: 72.6rem;
    padding: 0;
  }

  .page-width-desktop {
    max-width: var(--page-width);
    padding: 0 5rem;
  }
}

.element-margin {
  margin-top: 5rem;
}
:root {
  --duration-short: 0.1s;
  --duration-default: 0.2s;
  --duration-long: 0.5s;
}
.page-margin,
.shopify-challenge__container {
  margin: 7rem auto;
}

.rte-width {
  max-width: 82rem;
  margin: 0 auto 2rem;
}

.list-unstyled {
  margin: 0;
  padding: 0;
  list-style: none;
}

.hidden {
  display: none !important;
}
[hidden] {
  display: none !important;
}

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

.visually-hidden--inline {
  margin: 0;
  height: 1em;
}

.overflow-hidden {
  overflow: hidden;
}

.skip-to-content-link:focus {
  z-index: 9999;
  position: inherit;
  overflow: auto;
  width: auto;
  height: auto;
  clip: auto;
}

.full-width-link {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
}

/* Heading Tag Style */
h1,
h2,
h3,
h4,
h5,
h6,
.h0,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: var(--font-heading-family);
  font-style: var(--font-heading-style);
  font-weight: var(--font-heading-weight);
  letter-spacing: var(--heading-letter-spacing, 0);
  color: rgb(var(--color-foreground));
  line-height: calc(1 + 0.3 / max(1, var(--font-heading-size)));
  margin: 0 0 15px;
  text-transform: var(--header-text-case);
}

.h0 {
  font-size: calc(var(--font-heading-size) * 3rem);
}

@media only screen and (min-width: 992px) {
  .h0 {
    font-size: calc(var(--font-heading-size) * 5rem);
  }
}

h1,
.h1 {
  font-size: calc(var(--font-heading-size) * 2.5rem);
}
@media only screen and (min-width: 750px) {
  h1,
  .h1 {
    font-size: calc(var(--font-heading-size) * 3.6rem);
  }
}

@media only screen and (min-width: 992px) {
  h1,
  .h1 {
    font-size: calc(var(--font-heading-size) * 4rem);
  }
}
h2,
.h2 {
  font-size: calc(var(--font-heading-size) * 2.5rem);
}

@media only screen and (min-width: 750px) {
  h2,
  .h2 {
    font-size: calc(var(--font-heading-size) * 3rem);
  }
}
@media only screen and (min-width: 992px) {
  h2,
  .h2 {
    font-size: calc(var(--font-heading-size) * 3.2rem);
  }
}

h3,
.h3 {
  font-size: calc(var(--font-heading-size) * 2.2rem);
}
@media only screen and (min-width: 750px) {
  h3,
  .h3 {
    font-size: calc(var(--font-heading-size) * 2.8rem);
  }
}

h4,
.h4 {
  font-size: calc(var(--font-heading-size) * 2rem);
}
@media only screen and (min-width: 750px) {
  h4,
  .h4 {
    font-size: calc(var(--font-heading-size) * 2.4rem);
  }
}

h5,
.h5 {
  font-size: calc(var(--font-heading-size) * 1.8rem);
}

@media only screen and (min-width: 750px) {
  h5,
  .h5 {
    font-size: calc(var(--font-heading-size) * 2rem);
  }
}

h6,
.h6 {
  font-size: calc(var(--font-heading-size) * 1.6rem);
}
/*  End Heading Tag Style */

/*  Others Common Style */
p {
  margin-top: 0;
  margin-bottom: 15px;
}
p:last-child {
  margin-bottom: 0;
}

blockquote {
  font-style: italic;
  color: rgba(var(--color-foreground), 0.75);
  border-left: 0.2rem solid rgba(var(--color-foreground), 0.2);
  padding-left: 1rem;
}

@media screen and (min-width: 750px) {
  blockquote {
    padding-left: 1.5rem;
  }
}

.caption {
  font-size: 1rem;
  letter-spacing: 0.07rem;
  line-height: 1.7;
}

@media screen and (min-width: 750px) {
  .caption {
    font-size: 1.2rem;
  }
}

.caption-with-letter-spacing {
  font-size: 1.6rem;
  letter-spacing: 0.13rem;
  line-height: 1.2;
  text-transform: uppercase;
}

.caption-large,
.customer .field input,
.customer select,
.field__input,
.form__label,
.select__select {
  font-size: 16px;
  line-height: 1.5;
}

.color-foreground {
  color: rgb(var(--color-foreground));
}

table:not([class]) {
  table-layout: fixed;
  border-collapse: collapse;
  font-size: 1.4rem;
  border-style: hidden;
  box-shadow: 0 0 0 0.1rem rgba(var(--color-foreground), 0.2);
  /* draws the table border  */
}

table:not([class]) td,
table:not([class]) th {
  padding: 1em;
  border: 0.1rem solid rgba(var(--color-foreground), 0.2);
}
.error {
  color: red;
}
.hidden {
  display: none !important;
}

a:empty,
ul:empty,
dl:empty,
section:empty,
article:empty,
p:empty,
h1:empty,
h2:empty,
h3:empty,
h4:empty,
h5:empty,
h6:empty {
  display: none;
}

.link,
.customer a {
  cursor: pointer;
  display: inline-block;
  border: none;
  box-shadow: none;
  text-decoration: underline;
  text-underline-offset: 0.3rem;
  color: rgb(var(--color-link));
  background-color: transparent;
  font-size: 16px;
  font-family: inherit;
}

.link--text {
  color: rgb(var(--color-foreground));
}

/* .link--text:hover {
  color: rgba(var(--color-base-text-link-hover)) !important;
} */

hr {
  border: none;
  height: 0.1rem;
  background-color: rgba(var(--color-foreground), 0.2);
  display: block;
  margin: 5rem 0;
}

@media screen and (min-width: 750px) {
  hr {
    margin: 7rem 0;
  }
}

.placeholder {
  background-color: rgba(var(--placeholder-background));
  color: rgba(var(--placeholder-foreground), 0.85);
  fill: rgba(var(--placeholder-foreground), 0.85);
  position: relative;
}
.placeholder-svg-new {
  position: absolute;
  left: 0;
  height: 100%;
  top: 0;
  width: 100%;
  fill: currentColor;
}
details > * {
  box-sizing: border-box;
}

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

.visibility-hidden {
  visibility: hidden;
}

.customer a {
  color: rgba(var(--color-link), var(--alpha-link));
  text-underline-offset: 0.3rem;
  text-decoration-thickness: 0.1rem;
  transition: text-decoration-thickness ease 100ms;
}

.customer a:hover {
  color: rgb(var(--color-link));
  text-decoration-thickness: 0.2rem;
}
a,
button {
  line-height: inherit;
  display: inline-block;
  cursor: pointer;
  transition: var(--transition);
  text-decoration: none;
  color: inherit;
  font-family: var(--font-body-family);
}
/*  End Others Common Style */

/* Display: None css */

@media screen and (max-width: 749px) {
  .small-hide {
    display: none !important;
  }
}

@media screen and (min-width: 750px) and (max-width: 989px) {
  .medium-hide {
    display: none !important;
  }
}

@media screen and (min-width: 990px) {
  .large-up-hide {
    display: none !important;
  }
}

.d-none {
  display: none;
}
@media only screen and (max-width: 991px) {
  .d-md-none {
    display: none !important;
  }
}

@media only screen and (min-width: 992px) {
  .d-md-only-visible {
    display: none !important;
  }
}

@media only screen and (min-width: 750px) {
  .d-sm-only-visible {
    display: none !important;
  }
}

@media only screen and (max-width: 749px) {
  .d-sm-none {
    display: none !important;
  }
}
@media only screen and (max-width: 575px) {
  .d-xs-none {
    display: none !important;
  }
}

.d-block {
  display: block;
}
@media only screen and (min-width: 992px) {
  .d-md-block {
    display: block !important;
  }
}

@media only screen and (min-width: 750px) {
  .d-sm-block {
    display: block !important;
  }
}

@media only screen and (min-width: 575px) {
  .d-xs-block {
    display: block !important;
  }
}

@media only screen and (max-width: 991px) {
  .d-md-only-block {
    display: block !important;
  }
}

@media only screen and (max-width: 749px) {
  .d-sm-only-block {
    display: block !important;
  }
}
@media only screen and (max-width: 575px) {
  .d-xs-only-block {
    display: block !important;
  }
}

/* End Display: None css */

/* Text Align Center css */
.center {
  text-align: center;
}

.right {
  text-align: right;
}

.uppercase {
  text-transform: uppercase;
}
/* End Text Align Center css */

/* Details summary Css */
summary {
  cursor: pointer;
  list-style: none;
  position: relative;
}

summary .icon-caret {
  position: absolute;
  height: 0.6rem;
  right: 1.5rem;
  top: calc(50% - 0.2rem);
}

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

.disclosure-has-popup {
  position: relative;
}

.disclosure-has-popup[open] > summary::before {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  display: block;
  cursor: default;
  content: " ";
  background: transparent;
}

.disclosure-has-popup > summary::before {
  display: none;
}

.disclosure-has-popup[open] > summary + * {
  z-index: 100;
}

@media screen and (min-width: 750px) {
  .disclosure-has-popup[open] > summary + * {
    z-index: 2;
  }
}

/* base-focus */
/*
  Focus ring - default (with offset)
*/

input:focus {
  box-shadow: 0 0 5px 0px rgba(var(--color-foreground), 0.1);
}

*:focus-visible {
  box-shadow: 0 0 5px 0px rgba(var(--color-foreground), 0.1);
}

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

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

/*
  Focus ring - inset
*/

.focus-inset:focus-visible {
  outline: 0.1rem solid rgba(var(--color-foreground), 0.5);
  outline-offset: -0.2rem;
  box-shadow: 0 0 0.2rem 0 rgba(var(--color-foreground), 0.3);
}

.focused.focus-inset,
.no-js .focus-inset:focus {
  outline: 0.1rem solid rgba(var(--color-foreground), 0.5);
  outline-offset: -0.2rem;
  box-shadow: 0 0 0.2rem 0 rgba(var(--color-foreground), 0.3);
}

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

/*
  Focus ring - none
*/

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

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

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

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

/* component-media */
.media {
  display: block;
  background-color: rgba(var(--color-foreground), 0.1);
  position: relative;
  overflow: hidden;
}

.media--transparent {
  background-color: transparent;
  padding-bottom: 100% !important;

}
.media
  > *:not(
    .zoom,
    .deferred-media__poster-button,
    .lookbook__shop--product-wrapper,
    quick-view-modal
  ),
.media model-viewer {
  display: block;
  max-width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.media > img {
  object-fit: cover;
  object-position: center center;
  transition: opacity 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.media--square {
  padding-bottom: 100%;
}

.media--portrait {
  padding-bottom: 125%;
}

.media--landscape {
  padding-bottom: 66.6%;
}

.media--cropped {
  padding-bottom: 56%;
}

.media--16-9 {
  padding-bottom: 56.25%;
}

.media--circle {
  padding-bottom: 100%;
  border-radius: 50%;
}

.media.media--hover-effect > img + img {
  opacity: 0;
}

@media screen and (min-width: 990px) {
  .media--cropped {
    padding-bottom: 63%;
  }
}

deferred-media {
  display: block;
}

/* End component-media */

/* Button default style */
.button,
.customer button,
.shopify-challenge__button {
  cursor: pointer;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  font-size: calc(var(--button-font-size) * 1.7rem);
  padding: 1rem 1.5rem;
  text-decoration: none;
  border: var(--button-border-width) solid transparent;
  background-color: rgba(var(--color-button), var(--alpha-button-background));
  color: rgb(var(--color-button-text));
  transition: box-shadow var(--duration-short) ease;
  -webkit-appearance: none;
  appearance: none;
  border-radius: var(--button-border-radius);
  letter-spacing: var(--button-letter-spacing);
  text-transform: var(--button-text-case);
  transition: 0.3s;
  position: relative;
}
.button:focus-visible {
  box-shadow: 0 0 0 0.1rem rgba(var(--color-button), var(--alpha-button-border)),
    0 0 0 0.3rem rgb(var(--color-background)),
    0 0 0.5rem 0.4rem rgba(var(--color-foreground), 0.3);
}
.button--primary:hover {
  background-color: rgba(var(--primary-button-hover-background));
  color: rgba(var(--primary-button-hover-text));
}
.button--secondary,
.button--tertiary {
  --color-button: var(--color-secondary-button);
  --color-button-text: var(--color-secondary-button-text);
}

.button--secondary {
  --alpha-button-background: 0;
  border-width: var(--button-border-width);
  border-color: rgba(var(--color-button-text), var(--alpha-button-border));
}

.button--tertiary {
  --alpha-button-background: 0;
  --alpha-button-border: 0.2;
}

.button--secondary:hover {
  background-color: rgba(var(--secondary-button-hover-background));
  color: rgba(var(--secondary-button-hover-text));
  border-color: rgba(var(--secondary-button-hover-background));
}
.button-label {
  font-size: 1.5rem;
  letter-spacing: 0.1rem;
  line-height: 1.2;
}

.button--tertiary {
  font-size: 1.2rem;
  padding: 1rem 1.5rem;
  min-width: 9rem;
  min-height: 3.5rem;
}
.button--large {
  padding-left: 5rem !important;
  padding-right: 5rem !important;
}
.button--medium {
  padding-left: 3.5rem !important;
  padding-right: 3.5rem !important;
}
.button--small {
  padding: 1rem 2rem;
}
.button--extra-small {
  font-size: 1.5rem;
  padding: 1rem 1.5rem;
}
.button--with-icon {
  align-items: center;
}
.button--icon {
  line-height: 0;
}
.button--icon-right {
  margin-left: 0.5rem;
}
.button--icon > svg {
  width: 2.2rem;
  display: inline-block;
}
.button--icon-left {
  margin-right: 0.5rem;
}
/* Button - other */

.button:disabled,
.button[aria-disabled="true"],
.button.disabled,
button:disabled,
.customer button:disabled,
.customer button[aria-disabled="true"],
.customer button.disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

.button--full-width {
  display: flex;
  width: 100%;
}

.button.loading,
button.loading {
  color: transparent !important;
}

.button.loading:after,
button.loading:after {
  animation: loading var(--duration-long) infinite linear;
  border: 2.5px solid rgba(var(--color-foreground));
  border-left: 2.5px solid transparent;
  border-radius: 100%;
  box-sizing: content-box;
  content: "";
  display: block;
  height: 20px;
  position: absolute;
  width: 20px;
  top: 5px;
  left: 5px;
}
@keyframes loading {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* Button default style End */

/* component-form */
.field__input,
.select__select,
.customer .field input {
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  border: 0;
  border-radius: 0;
  color: rgb(var(--color-foreground));
  font-size: 1.6rem;
  width: 100%;
  box-shadow: 0 0 0 0.1rem rgba(var(--color-foreground), 0.55);
  height: 4.5rem;
  box-sizing: border-box;
  transition: box-shadow var(--duration-short) ease;
}

.select__select {
  font-family: var(--font-body-family);
  font-style: var(--font-body-style);
  font-weight: var(--font-body-weight);
  font-size: 1.2rem;
  color: rgba(var(--color-foreground), 0.75);
}

.field__input:hover,
.select__select:hover,
.customer .field input:hover,
.localization-form__select:hover {
  box-shadow: 0 0 0 0.2rem rgba(var(--color-foreground), 0.55);
}

.field__input:focus,
.select__select:focus,
.customer .field input:focus,
.localization-form__select:focus {
  box-shadow: 0 0 0 0.2rem rgba(var(--color-foreground), 0.75);
  outline: transparent;
}

.text-area,
.select {
  display: inline-block;
  position: relative;
  width: 100%;
}

/* Select */

.select .icon-caret,
.customer select + svg,
.select__field_form select + svg {
  height: 0.6rem;
  pointer-events: none;
  position: absolute;
  top: calc(50% - 0.2rem);
  right: 1.5rem;
}

.select__select,
.customer select {
  cursor: pointer;
  line-height: 1.6;
  padding: 0 4rem 0 1.5rem;
}
.select_box {
  appearance: none;
  -webkit-appearance: none;
  height: 50px;
  padding: 0 20px;
  min-width: 200px;
  border-color: rgba(var(--color-foreground), 0.55);
  color: rgba(var(--color-foreground), 1);
  background: rgba(var(--color-background));
}
.select_box option {
  font-size: 16px;
}
select option[disabled] {
  background: #ddd;
}
/* Field */

.field {
  position: relative;
  width: 100%;
  display: flex;
}

.customer .field {
  display: block;
}

.field--with-error {
  flex-wrap: wrap;
}

.field__input,
.customer .field input {
  flex-grow: 1;
  text-align: left;
  padding: 1.5rem;
}

.field__label,
.customer .field label {
  font-size: 1.6rem;
  left: 1.5rem;
  top: 1rem;
  margin-bottom: 0;
  pointer-events: none;
  position: absolute;
  transition: top var(--duration-short) ease,
    font-size var(--duration-short) ease;
  color: rgba(var(--color-foreground), 0.75);
  letter-spacing: 0.1rem;
  line-height: 1.5;
}

.field__input:focus ~ .field__label,
.field__input:not(:placeholder-shown) ~ .field__label,
.field__input:-webkit-autofill ~ .field__label,
.customer .field input:focus ~ label,
.customer .field input:not(:placeholder-shown) ~ label,
.customer .field input:-webkit-autofill ~ label {
  font-size: 1rem;
  top: 0.3em;
  letter-spacing: 0.04rem;
}

.field__input:focus,
.field__input:not(:placeholder-shown),
.field__input:-webkit-autofill,
.customer .field input:focus,
.customer .field input:not(:placeholder-shown),
.customer .field input:-webkit-autofill {
  padding: 2.2rem 1.5rem 0.8rem;
}

.field__input::-webkit-search-cancel-button,
.customer .field input::-webkit-search-cancel-button {
  display: none;
}

.field__input::placeholder,
.customer .field input::placeholder {
  opacity: 0;
}

.field__button {
  align-items: center;
  background-color: transparent;
  border: 0;
  color: currentColor;
  cursor: pointer;
  display: flex;
  height: 4.4rem;
  justify-content: center;
  overflow: hidden;
  padding: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 4.4rem;
}

.field__button > svg {
  height: 2.5rem;
  width: 2.5rem;
}

.field__input:-webkit-autofill ~ .field__button,
.field__input:-webkit-autofill ~ .field__label,
.customer .field input:-webkit-autofill ~ label {
  color: rgb(0, 0, 0);
}

/* Text area */

.text-area {
  font-family: var(--font-body-family);
  font-style: var(--font-body-style);
  font-weight: var(--font-body-weight);
  padding: 1.2rem;
  min-height: 10rem;
  resize: none;
  border: 0.1rem solid rgba(var(--color-foreground), 0.15);
}

.text-area--resize-vertical {
  resize: vertical;
}

input[type="checkbox"] {
  display: inline-block;
  width: auto;
  margin-right: 0.5rem;
}

/* Form global */

.form__label {
  display: block;
  margin-bottom: 0.6rem;
}

.form__message {
  align-items: center;
  display: flex;
  font-size: 1.4rem;
  line-height: 1;
  margin-top: 1rem;
}

.form__message--large {
  font-size: 1.6rem;
}

.customer .field .form__message {
  font-size: 1.4rem;
  text-align: left;
}

.form__message .icon,
.customer .form__message svg {
  flex-shrink: 0;
  height: 1.3rem;
  margin-right: 0.5rem;
  width: 1.3rem;
}

.form__message--large .icon,
.customer .form__message svg {
  height: 1.5rem;
  width: 1.5rem;
  margin-right: 1rem;
}

.customer .field .form__message svg {
  align-self: start;
}

.form-status {
  margin: 0;
  font-size: 1.6rem;
}

.form-status-list {
  padding: 0;
  margin: 2rem 0 4rem;
}

.form-status-list li {
  list-style-position: inside;
}

.form-status-list .link::first-letter {
  text-transform: capitalize;
}

/* component-quantity */

.quantity {
  border: 1.5px solid rgba(var(--color-foreground), 0.08);
  position: relative;
  height: 45px;
  width: 120px;
  display: flex;
  background: rgba(var(--color-background));
  border-radius: 25px;
}
.quantity__input {
  color: currentColor;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
  background-color: transparent;
  border: 0;
  padding: 10px;
  width: 100%;
  flex-grow: 1;
  -webkit-appearance: none;
  appearance: none;
}
.quantity__button {
  width: 40px;
  flex-shrink: 0;
  border: 0;
  background-color: transparent;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgb(var(--color-foreground));
  padding: 0;
}

.quantity__button svg {
  width: 1rem;
  pointer-events: none;
}

.quantity__input:-webkit-autofill,
.quantity__input:-webkit-autofill:hover,
.quantity__input:-webkit-autofill:active {
  box-shadow: 0 0 0 10rem rgb(var(--color-background)) inset !important;
  -webkit-box-shadow: 0 0 0 10rem rgb(var(--color-background)) inset !important;
}

.quantity__input::-webkit-outer-spin-button,
.quantity__input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

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

/* component-modal */
.modal__toggle {
  list-style-type: none;
}

.no-js details[open] .modal__toggle {
  position: absolute;
  z-index: 2;
}

.modal__toggle-close {
  display: none;
}

.no-js details[open] svg.modal__toggle-close {
  display: flex;
  z-index: 1;
  height: 1.7rem;
  width: 1.7rem;
}

.modal__toggle-open {
  display: flex;
}

.no-js details[open] .modal__toggle-open {
  display: none;
}

.no-js .modal__close-button.link {
  display: none;
}

.modal__close-button.link {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0rem;
  height: 20px;
  width: 20px;
  background-color: transparent;
}

.modal__close-button .icon {
  width: 1.7rem;
  height: 1.7rem;
}

.modal__content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgb(var(--color-background));
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}

.media-modal {
  cursor: zoom-out;
}

.media-modal .deferred-media {
  cursor: initial;
}

/* Announcement bar end */

details-disclosure > details {
  position: relative;
}

@keyframes animateMenuOpen {
  0% {
    opacity: 0;
    transform: translateY(-1.5rem);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.overflow-hidden-mobile,
.overflow-hidden-tablet {
  overflow: hidden;
}

@media screen and (min-width: 750px) {
  .overflow-hidden-mobile {
    overflow: auto;
  }
}

@media screen and (min-width: 990px) {
  .overflow-hidden-tablet {
    overflow: auto;
  }
}
.badge {
  border: 1px solid transparent;
  display: inline-block;
  font-size: 13px;
  line-height: 1;
  padding: 4px 10px;
  font-weight: 600;
  text-align: center;
  background-color: rgb(var(--color-badge-background));
  border-color: rgba(var(--color-badge-border), var(--alpha-badge-border));
  color: rgb(var(--color-foreground));
  word-break: break-word;
  /* border-radius: 6px 0 6px; */
  border-radius: 10px;
}
@media only screen and (max-width: 575px) {
  .badge {
    padding: 3px 5px;
  }
}
.gradient {
  background: rgb(var(--color-background));
  background: var(--gradient-background);
  background-attachment: fixed;
}
/*  container width || pag width  */

/* HT own code start */
.container,
.container-fluid {
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}
.container {
  padding-right: 1.5rem;
  padding-left: 1.5rem;
}
.container-fluid {
  --offset-fluid: 1.5rem;
  padding-right: var(--offset-fluid);
  padding-left: var(--offset-fluid);
}

@media only screen and (min-width: 750px) {
  .container-fluid {
    --offset-fluid: 2.5rem; /* 40px */
  }
}

@media only screen and (min-width: 992px) {
  .container-fluid {
    --offset-fluid: 3rem; /* 48px */
  }
}

@media only screen and (min-width: 1280px) {
  .container-fluid {
    /* Fixed at 60px rather than the theme's full "Offset left & right"
       setting (80px) — 80px felt like too much side space on typical
       laptop/desktop widths. Change this value directly if a different
       amount is wanted; it's decoupled from the theme setting on purpose
       so it can be tuned independently. */
    --offset-fluid: 5.75rem; /* 92px - Figma desktop left/right spacing */
  }
}

.px-0 {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

@media (min-width: 1200px) {
  .container {
    max-width: var(--container-lg-width);
  }
}
.row {
  --bs-gutter-x: 20px;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-1 * var(--bs-gutter-y));
  margin-right: calc(-0.5 * var(--bs-gutter-x));
  margin-left: calc(-0.5 * var(--bs-gutter-x));
}
.row > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-top: var(--bs-gutter-y);
}
.g-0,
.gy-0 {
  --bs-gutter-y: 0;
}
.g-0,
.gx-0 {
  --bs-gutter-x: 0;
}
/* HT own code end */

/* HT - Grid Column CSS Start */

.col {
  flex: 1 0 0%;
}

.row-cols-auto > * {
  flex: 0 0 auto;
  width: auto;
}

.row-cols-1 > * {
  flex: 0 0 auto;
  width: 100%;
}

.row-cols-2 > * {
  flex: 0 0 auto;
  width: 50%;
}

.row-cols-3 > * {
  flex: 0 0 auto;
  width: 33.3333333333%;
}

.row-cols-4 > * {
  flex: 0 0 auto;
  width: 25%;
}

.row-cols-5 > * {
  flex: 0 0 auto;
  width: 20%;
}

.row-cols-6 > * {
  flex: 0 0 auto;
  width: 16.6666666667%;
}
@media (min-width: 750px) {
  .col-md {
    flex: 1 0 0%;
  }

  .row-cols-md-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

  .row-cols-md-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }

  .row-cols-md-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }

  .row-cols-md-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .row-cols-md-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }

  .row-cols-md-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }

  .row-cols-md-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
}
@media (min-width: 992px) {
  .col-lg {
    flex: 1 0 0%;
  }

  .row-cols-lg-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

  .row-cols-lg-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }

  .row-cols-lg-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }

  .row-cols-lg-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .row-cols-lg-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }

  .row-cols-lg-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }

  .row-cols-lg-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
}
@media (min-width: 1200px) {
  .col-xl {
    flex: 1 0 0%;
  }

  .row-cols-xl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

  .row-cols-xl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }

  .row-cols-xl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }

  .row-cols-xl-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .row-cols-xl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }

  .row-cols-xl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-xl-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
}
@media (min-width: 1500px) {
  .row-cols-xxl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }

  .row-cols-xxl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }

  .row-cols-xxl-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .row-cols-xxl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }

  .row-cols-xxl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
}
.col-auto {
  flex: 0 0 auto;
  width: auto;
}

.col-1 {
  flex: 0 0 auto;
  width: 8.33333333%;
}

.col-2 {
  flex: 0 0 auto;
  width: 16.66666667%;
}

.col-3 {
  flex: 0 0 auto;
  width: 25%;
}

.col-4 {
  flex: 0 0 auto;
  width: 33.33333333%;
}

.col-5 {
  flex: 0 0 auto;
  width: 41.66666667%;
}

.col-6 {
  flex: 0 0 auto;
  width: 50%;
}

.col-7 {
  flex: 0 0 auto;
  width: 58.33333333%;
}

.col-8 {
  flex: 0 0 auto;
  width: 66.66666667%;
}

.col-9 {
  flex: 0 0 auto;
  width: 75%;
}

.col-10 {
  flex: 0 0 auto;
  width: 83.33333333%;
}

.col-11 {
  flex: 0 0 auto;
  width: 91.66666667%;
}

.col-12 {
  flex: 0 0 auto;
  width: 100%;
}

@media (min-width: 750px) {
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-md-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }

  .col-md-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }

  .col-md-3 {
    flex: 0 0 auto;
    width: 25%;
  }

  .col-md-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }

  .col-md-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }

  .col-md-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-md-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-md-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
}
@media (min-width: 992px) {
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-lg-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }

  .col-lg-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }

  .col-lg-3 {
    flex: 0 0 auto;
    width: 25%;
  }

  .col-lg-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }

  .col-lg-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }

  .col-lg-6 {
    flex: 0 0 auto;
    width: 50%;
  }

  .col-lg-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
}
@media (min-width: 1200px) {
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-xl-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }

  .col-xl-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-xl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-xl-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-xl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
}
@media (min-width: 1400px) {
  .col-xxl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xxl-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-xxl-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-xxl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-xxl-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-xxl-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-xxl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-xxl-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
}
.d-flex {
  display: flex;
}
.flex-wrap {
  flex-wrap: wrap;
}
.align-items-center {
  align-items: center;
}
.align-items-end {
  align-items: flex-end;
}
.align-items-start {
  align-items: flex-start;
}
.align-self-center {
  align-self: center;
}

.justify-content-between {
  justify-content: space-between;
}
.justify-content-around {
  justify-content: space-around;
}
.justify-content-center {
  justify-content: center;
}
.justify-content-end {
  justify-content: flex-end;
}
.justify-content-start {
  justify-content: flex-start;
}
.flex-row-reverse {
  flex-direction: row-reverse;
}
.text-center {
  text-align: center;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}
.flex-grow-1 {
  flex-grow: 1;
}
.flex-direction-column {
  flex-direction: column;
}
.inline-y-center {
  display: flex;
  align-items: center;
}
.inline-x-center {
  display: flex;
  justify-content: center;
}
.inline-xy-center {
  display: flex;
  justify-content: center;
  align-items: center;
}
/* TH Grid Column CSS End  */

/* Wishlist Button Css */
.wishlist__button {
  cursor: pointer;
}
.wishlist__button.loading.adding .remove__wishlist,
.wishlist__button.wishlist__button.loading.adding .add__wishlist,
.wishlist__button.active .add__wishlist,
.loading__wishlist,
.remove__wishlist {
  display: none;
}
.wishlist__button.active .remove__wishlist,
.wishlist__button.loading .loading__wishlist {
  display: inline-block;
}
.wishlist__button.loading.adding {
  pointer-events: none;
}
.wishlist__button svg {
  width: 2rem;
  height: auto;
  display: inline-block;
}
.remove__wishlist svg {
  width: 2rem;
}
/* Added overlay Css */
.added__overlay,
.added__overlay_search,
.added__overlay_filter {
  overflow: hidden;
}
.added__overlay::before,
.added__overlay_search::before,
.added__overlay_filter::before {
  position: absolute;
  content: "";
  background: #000;
  width: 100%;
  height: 100%;
  z-index: 3;
  opacity: 0.5;
  cursor: crosshair;
  z-index: 99;
}

/* HT - Input Field */
.input__field,
input[type="email"],
input[type="text"],
.select__field_form select {
  height: 50px;
  width: 100%;
  padding: 0 15px;
  border: 1px solid rgba(var(--color-foreground), 0.15);
  border-radius: var(--button-border-radius);
  font-size: 11px;
  color: rgba(var(--color-foreground));
  background: rgba(var(--color-background));
  -webkit-appearance: none;
  appearance: none;
}
.input__field_form {
  position: relative;
}
.input__field_form_button {
  position: absolute;
  right: 0;
  background: 0;
  border: none;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  line-height: 1;
}
.input__field:hover {
  appearance: none;
}
textarea {
  padding: 15px;
}

input::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: rgba(var(--color-foreground), 0.55);
}
input::-moz-placeholder {
  /* Firefox 19+ */
  color: rgba(var(--color-foreground), 0.55);
}
input:-ms-input-placeholder {
  /* IE 10+ */
  color: rgba(var(--color-foreground), 0.55);
}
input:-moz-placeholder {
  /* Firefox 18- */
  color: rgba(var(--color-foreground), 0.55);
}
.select__field_form {
  position: relative;
}

/* Tab */
.tab_content {
  display: block;
}

.tab_pane {
  display: none;
  transition: var(--transition);
}
.tab_pane:not(.show) {
  opacity: 0;
}
.tab_pane.show {
  opacity: 1;
}
.tab_pane.active {
  display: block;
}

/*  Spacing Helper css */
.mb-30 {
  /* margin-bottom: 30px; */
  margin-bottom: 22px
}
.mb-40 {
  margin-bottom: 40px;
}
.pt-25 {
  padding-top: 25px !important;
}
.mb-15 {
  margin-bottom: 15px;
}
.mb-20 {
  margin-bottom: 20px;
}
.mt-40 {
  margin-top: 40px;
}
.mr-20 {
  margin-right: 20px;
}
.mb-80 {
  margin-bottom: 80px;
}
.p-0 {
  padding: 0;
}
.pt--0 {
  padding-top: 0;
}
.pb--0 {
  padding-bottom: 0;
}
.pb-80 {
  padding-bottom: 80px;
}
.mt-15 {
  margin-top: 15px;
}
.mb-0 {
  margin-bottom: 0 !important;
}
.mt-0 {
  margin-top: 0 !important;
}
.mb-50 {
  margin-bottom: 50px;
}
.mt-30-minus {
  margin-top: -30px;
}
.mt-50 {
  margin-top: 50px;
}
.mt-30 {
  margin-top: 30px;
}
.mt-20 {
  margin-top: 20px;
}
.max-w-500 {
  max-width: 50rem;
}
.h-100 {
  height: 100%;
}
.y_scroll {
  overflow-y: scroll;
}
.product-form__error-message-wrapper svg,
.drawer_cart-item__error svg {
  width: 1.5rem;
  height: 1.5rem;
  margin-right: 0.7rem;
}
.product-form__error-message-wrapper,
.drawer_cart-item__error {
  background: #f8d7da;
  color: #721c24;
  padding: 5px 10px;
  border-radius: 3px;
  display: flex;
  align-items: center;
}
.drawer_cart-item__error {
  flex: 0 0 100%;
  margin-top: 20px;
}
.mt-10 {
  margin-top: 10px;
}
.placeholder-svg-2 {
  position: absolute;
  left: 50%;
  max-width: 80rem;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  fill: currentColor;
}
.placeholder_svg_parent {
  background-color: rgba(var(--placeholder-background));
  color: rgba(var(--placeholder-foreground));
  position: relative;
}

.relative {
  position: relative;
}
.loading-bar:after {
  content: "";
  /* width: 40px; */
  height: 3px;
  background: #000;

  position: absolute;
  animation: loader 2s;
  -webkit-animation: loader 2s;
  animation-iteration-count: infinite;
  -webkit-animation-iteration-count: infinite;
  transition-timing-function: linear;
  -webkit-transition-timing-function: linear;
  top: 0px;

  margin-left: 0;
}

@keyframes loader {
  0% {
    width: 0%;
    left: 0;
    right: 0;
  }
  50% {
    width: 100%;
    left: 0;
    right: 0;
  }
  99% {
    width: 0%;
    left: 100%;
    right: 0;
  }
}

@-webkit-keyframes loader {
  0% {
    width: 0%;
    left: 0;
    right: 0;
  }
  50% {
    width: 100%;
    left: 0;
    right: 0;
  }
  99% {
    width: 0%;
    left: 100%;
    right: 0;
  }
}

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
  }
}

@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@-webkit-keyframes animate {
  0% {
    -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.7);
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.7);
  }
  40% {
    -webkit-box-shadow: 0 0 0 50px rgba(255, 193, 7, 0);
    box-shadow: 0 0 0 50px rgba(255, 193, 7, 0);
  }
  80% {
    -webkit-box-shadow: 0 0 0 50px rgba(255, 193, 7, 0);
    box-shadow: 0 0 0 50px rgba(255, 193, 7, 0);
  }
  100% {
    -webkit-box-shadow: 0 0 0 rgba(255, 193, 7, 0);
    box-shadow: 0 0 0 rgba(255, 193, 7, 0);
  }
}

@keyframes animate {
  0% {
    -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.7);
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.7);
  }
  40% {
    -webkit-box-shadow: 0 0 0 50px rgba(255, 193, 7, 0);
    box-shadow: 0 0 0 50px rgba(255, 193, 7, 0);
  }
  80% {
    -webkit-box-shadow: 0 0 0 50px rgba(255, 193, 7, 0);
    box-shadow: 0 0 0 50px rgba(255, 193, 7, 0);
  }
  100% {
    -webkit-box-shadow: 0 0 0 rgba(255, 193, 7, 0);
    box-shadow: 0 0 0 rgba(255, 193, 7, 0);
  }
}

.animate-fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

.button__icon--arrow_svg {
  max-width: 2.5rem;
}
/* Theme global css */
.position__relative {
  position: relative;
}
.swiper:hover .swiper__nav--btn {
  opacity: 1;
  visibility: visible;
}

.swiper__nav--btn {
  width: 4rem;
  height: 4rem;
  background: rgba(var(--color-button), var(--alpha-button-background));
  color: rgb(var(--color-button-text));
  border-radius: 50%;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: var(--transition);
  transition: var(--transition);
  font-size: 2rem;
}

@media only screen and (max-width: 749px) {
  .swiper__nav--btn {
    width: 3.5rem;
    height: 3.5rem;
  }
}

.swiper__nav--btn:hover {
  background: rgba(var(--primary-button-hover-background));
  color: rgba(var(--primary-button-hover-text));
}

.swiper__nav--btn:after {
  font-size: 1.8rem;
}
.swiper__nav--btn.swiper-button-prev {
  left: 0;
}

.swiper__nav--btn.swiper-button-next {
  right: 0;
}
.swiper:hover .swiper__nav--btn.swiper-button-disabled {
  opacity: 0.5;
}
.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
  pointer-events: initial;
}
@media only screen and (max-width: 749px) {
  .mobile--text-align-center {
    text-align: center !important;
  }
  .shopify-policy__container {
    margin: 6.5rem auto;
  }
}
@media only screen and (min-width: 750px) {
  .shopify-policy__container {
    margin: 9rem auto;
  }
}
.link.button--not-underline {
  text-decoration: none;
}
/* Cute Pill Buttons */

.product-form__submit,
.shopify-payment-button__button,
button.shopify-payment-button__button--unbranded {
    border-radius: 999px !important;
    min-height: 56px;
    font-weight: 600;
    /* transition: all 0.25s ease; */
    transition:
    background-color 320ms ease,
    color 320ms ease,
    border-color 320ms ease,
    box-shadow 320ms ease,
    opacity 320ms ease;
  }

/* Add to Cart */
.product-form__submit {
    background: #fff !important;
    border: 2px solid #ff6fa5 !important;
    color: #222 !important;
    box-shadow: 0 4px 12px rgba(255, 111, 165, 0.12);
}

/* Buy It Now */
.shopify-payment-button__button,
button.shopify-payment-button__button--unbranded {
    background: #ee2761 !important;
    color: white !important;
    box-shadow: none;
    line-height: 0;
}
.product-form__submit:hover {
    transform: none;
}

.shopify-payment-button__button:hover,
button.shopify-payment-button__button--unbranded:hover {
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
}
/* Collection card corner notch + arrow badge (Figma redesign) */
.collection__card .collection__media--wrap {
  position: relative;
}
.collection__card .collection__media--wrap .media {
  -webkit-mask-image: radial-gradient(
    circle 30px at calc(100% - 12px) 12px,
    transparent 100%,
    black 101%
  );
  mask-image: radial-gradient(
    circle 30px at calc(100% - 12px) 12px,
    transparent 100%,
    black 101%
  );
}
.collection__corner-arrow {
  position: absolute;
  top: 1px;
  right: 11px;
  transform: translate(50%, -50%);
  width: 47px; /* Figma: 46.78px */
  height: 47px;

  display: block;
  border-radius: 50%;
  box-shadow: -2px 4px 0 #ee2761;

  z-index: 3;
  pointer-events: none;
}

.collection__corner-arrow svg {
  display: block;
  width: 47px;
  height: 47px;
  overflow: visible;
}
.collection__corner-arrow svg circle {
  stroke-width: 0.89px; /* Figma: Ellipse 7 border */
}
.collection__corner-arrow-icon--current {
  transform: translate(0, 0);
  opacity: 1;
}
.collection__corner-arrow-icon--next {
  transform: translate(-130%, 130%);
  opacity: 0;
}
.collection__card:hover .collection__corner-arrow-icon--current {
  transform: translate(130%, -130%);
  opacity: 0;
}
.collection__card:hover .collection__corner-arrow-icon--next {
  transform: translate(0, 0);
  opacity: 1;
}
@media only screen and (max-width: 479px) {
  .collection__corner-arrow {
    width: 32px;
    height: 32px;
  }
  .collection__corner-arrow svg {
    width: 13px;
    height: 13px;
  }
}

/* Collection card corner notch + arrow badge — correct target: collection-card.liquid */
.collection__card,
.collection-card--media__wrapper {
  overflow: visible !important;
}
.collection-card--media__wrapper {
  position: relative;
}
.collection-card--media__wrapper .media {
  overflow: hidden;
  clip-path: url(#collection-card-notch);
}

/* Continuous diagonal nudge animation on the whole corner arrow badge (not hover-only) */
.collection__corner-arrow {
  animation: collection-corner-arrow-float 1.6s ease-in-out infinite;
}
@keyframes collection-corner-arrow-float {
  0%, 100% {
    transform: translate(50%, -50%);
  }
  50% {
    transform: translate(calc(50% + 3px), calc(-50% - 3px));
  }
}

/* Corner radius no longer forced separately — it's baked into the clip-path shape above */

/* Collection title pill outline — see Figma-accurate rule at the end of this file
   (.product__categories--content__maintitle), which replaces this block. */

/* "View All" button — top-right of section heading, pink outline pill (Figma redesign) */
.view-all-btn--top-right {
  position: absolute;
  top: 0;
  right: 1.5rem;
}
@media only screen and (min-width: 992px) {
  .view-all-btn--top-right {
    top: 0.5rem;
  }
}
.view-all-btn--pill {
  border-radius: 999px !important;
  border: 1.5px solid #ee2761 !important;
  background: transparent !important;
  color: #ee2761 !important;
  padding: 0.9rem 2.2rem !important;
}
.view-all-btn--pill:hover {
  background: #ee2761 !important;
  color: #ffffff !important;
}

/* ==========================================================================
   Global design grid (Figma spec)
   Desktop frame: 1440px | Content container: 1280px
   Columns: 12 | Gutter: 24px | Side margin: 80px
   ========================================================================== */
:root {
  --grid-frame-width: 1440px;
  --grid-container-width: 1280px;
  --grid-columns: 12;
  --grid-gutter: 24px;
  --grid-margin: 80px;
}

/* 1280px content container centered inside the 1440px frame with 80px side margins.
   Falls back gracefully on smaller viewports. */
.grid-container {
  width: 100%;
  max-width: var(--grid-container-width);
  margin-left: auto;
  margin-right: auto;
  padding-left: 2rem;
  padding-right: 2rem;
  box-sizing: border-box;
}
@media screen and (min-width: 1440px) {
  .grid-container {
    padding-left: 0;
    padding-right: 0;
  }
}

/* 12-column / 24px-gutter row, for any section that needs to lay children out on the grid */
.grid-row {
  display: grid;
  grid-template-columns: repeat(var(--grid-columns), 1fr);
  gap: 0 var(--grid-gutter);
}
.grid-col-1  { grid-column: span 1; }
.grid-col-2  { grid-column: span 2; }
.grid-col-3  { grid-column: span 3; }
.grid-col-4  { grid-column: span 4; }
.grid-col-5  { grid-column: span 5; }
.grid-col-6  { grid-column: span 6; }
.grid-col-7  { grid-column: span 7; }
.grid-col-8  { grid-column: span 8; }
.grid-col-9  { grid-column: span 9; }
.grid-col-10 { grid-column: span 10; }
.grid-col-11 { grid-column: span 11; }
.grid-col-12 { grid-column: span 12; }

/* ==========================================================================
   Collection list / Collection card — Figma measurements
   Card: 255.5 x 356.26px | Image: 255.41 x 275.73px (radius 11.08px)
   Card gap: 44.17px | Heading -> grid gap: 43.18px
   Pill: 221.32 x 49.48px, inset 17.09px, border 0.9px #ee2761 (confirmed brand color)
   Pill gap from image: 23.86px | Pill gap to card bottom: 7.2px
   Title: 17.28px / 100% line-height / 400 weight
   ========================================================================== */

/* Heading-to-grid vertical rhythm on the collection list section */
.collection-list-section .section-heading {
  /* margin-bottom: 43px !important; */
  margin-bottom: 22px !important;
}

/* Swipe without buttons, card width/gap, and the autoplay left-edge peek are now
   all handled directly in collection-list.liquid's scoped <style> block, since
   that section switched from a Swiper.js slider to a native CSS overflow-x +
   scroll-snap row (see #collection-list__{{ section.id }} .collection-scroll-row).
   That removes the Swiper dependency entirely for this section, so there's no
   loop/clone slide to ever peek in from the left, autoplay or not, and no
   buttons are rendered in the markup at all. */

/* Card media */
.collection-card--media__wrapper .media {
  border-radius: 11px;
}

/* Image aspect ratio (255.41 : 275.73, i.e. height ≈ 108% of width) so the card
   height matches Figma regardless of the theme's "image_ratio" setting.
   Uses the theme's own padding-bottom % technique (the <img> is absolutely
   positioned to fill this box) rather than the CSS aspect-ratio property,
   since combining both caused the height to double/stack incorrectly. */
.collection-card--media__wrapper.card--client-height .media {
  padding-bottom: 108% !important;
}

/* Space between image and title pill, and pill-to-card-bottom spacing */
.collection__card .product__categories--content {
  /* margin-top: 24px; */
  padding-bottom: 7px;
}

/* Title pill — sizing, color and typography to match Figma */
.product__categories--content__maintitle {
  display: inline-block;
  /* border: 0.9px solid #ee2761; */
  border-radius: 999px; /* full pill regardless of height, equivalent to Figma's 24.74px radius */
  padding: 1.37rem; /* ~49.48px pill height / ~221.32px pill width at 17.28px type */
  margin: 0;
  color: #ee2761;
  /* font-size: 17.28px; */
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
}
@media only screen and (max-width: 767px) {
  .product__categories--content__maintitle {
    border: none;
    border-radius: 0;
    padding: 0;
  }
}

/* ==========================================================================
   Die Cut Smart policy pages
   ========================================================================== */

.dcs-policy-page {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  box-sizing: border-box;

  font-family: var(--font-body-family), "Fredoka", sans-serif;
  font-style: normal;
  letter-spacing: 0;
  color: rgba(var(--color-foreground), 1);
}

/* Main content title: Diecutsmart – Privacy Policy */
.rte .dcs-policy-page__title,
.dcs-policy-page__title {
  margin: 0 0 20px !important;

  font-family: var(--font-body-family), "Fredoka", sans-serif !important;
  font-size: 32px !important;
  font-weight: 600 !important;
  font-style: normal !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;

  color: #ee2761 !important;
}

/* Introduction and normal paragraph typography */
.rte .dcs-policy-page p,
.dcs-policy-page p {
  margin: 0 0 14px !important;

  font-family: var(--font-body-family), "Fredoka", sans-serif !important;
  font-size: 17px !important;
  font-weight: 300 !important;
  font-style: normal !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;

  color: rgba(var(--color-foreground), 0.75);
}

/* Section headings: 1. What Information We Collect, etc. */
.rte .dcs-policy-page__section h2,
.dcs-policy-page__section h2 {
  margin: 0 0 15px !important;

  font-family: var(--font-body-family), "Fredoka", sans-serif !important;
  font-size: 25.61px !important;
  font-weight: 400 !important;
  font-style: normal !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;

  color: #ee2761 !important;
}

/* Space between policy sections */
.dcs-policy-page__section {
  margin-top: 30px;
}

/* Slightly stronger text inside body paragraphs */
.rte .dcs-policy-page p strong,
.dcs-policy-page p strong {
  font-weight: 400;
  color: rgba(var(--color-foreground), 0.9);
}

/* Email link */
.rte .dcs-policy-page a,
.dcs-policy-page a {
  color: rgba(var(--color-foreground), 0.85);
  text-decoration: none;
  transition: color 0.25s ease;
}

.rte .dcs-policy-page a:hover,
.dcs-policy-page a:hover {
  color: #ee2761;
}

/* Remove unwanted margin created by the last paragraph */
.rte .dcs-policy-page__section:last-child p:last-child,
.dcs-policy-page__section:last-child p:last-child {
  margin-bottom: 0 !important;
}

/* Tablet */
@media screen and (max-width: 991px) {
  .dcs-policy-page {
    padding-right: 20px;
    padding-left: 20px;
  }
}

/* Mobile */
@media screen and (max-width: 749px) {
  .dcs-policy-page {
    padding-right: 15px;
    padding-left: 15px;
  }

  .rte .dcs-policy-page__title,
  .dcs-policy-page__title {
    font-size: 28px !important;
  }

  .rte .dcs-policy-page__section h2,
  .dcs-policy-page__section h2 {
    font-size: 22px !important;
  }

  .rte .dcs-policy-page p,
  .dcs-policy-page p {
    font-size: 16px !important;
    line-height: 1.25 !important;
  }

  .dcs-policy-page__section {
    margin-top: 26px;
  }
}

/* Centered policy page variant */
.dcs-policy-page--centered {
  text-align: center;
  max-width: 1280px;
  margin: 0 auto;
  padding-top: 40px;
  padding-bottom: 40px;
}

.dcs-policy-page--centered .dcs-policy-page__title {
  margin-bottom: 18px !important;
}

.dcs-policy-page--centered .dcs-policy-page__introduction {
  max-width: 720px;
  margin: 0 auto;
}

.dcs-policy-page--centered .dcs-policy-page__introduction p {
  text-align: center;
  margin-bottom: 0 !important;
}

/* ========================================================================
   DIECUTSMART — MOBILE SECTION TITLE TYPOGRAPHY
   Figma/mobile requirement:
   Fredoka / 400 / 24px / 100% / 3% / Capitalize.
   ======================================================================== */
@media only screen and (max-width: 749px) {
  .section-heading__title,
  .section-title,
  .section-title h2,
  .section-heading h2,
  .collection-list-section .section-heading__title {
    font-family: 'Fredoka', sans-serif !important;
    font-weight: 400 !important;
    font-style: normal !important;
    font-size: 24px !important;
    line-height: 100% !important;
    letter-spacing: 0.72px !important;
    text-transform: capitalize !important;
  }

  /* Mobile Figma has clean section titles — no wavy/decorative underline. */
  .section-heading__title::before,
  .section-heading__title::after,
  .section-title::before,
  .section-title::after {
    background-image: none !important;
    border: 0 !important;
    text-decoration: none !important;
  }
}/* ==========================================================
   ADD TO CART — SLOW, SMOOTH & VISIBLE GRADIENT FLOW
   ========================================================== */

.product-form__submit,
.product-form__cart-submit,
button[name="add"],
.add-to-cart,
.add_to_cart_button {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

/* Moving gradient/light layer */
.product-form__submit::before,
.product-form__cart-submit::before,
button[name="add"]::before,
.add-to-cart::before,
.add_to_cart_button::before {
  content: "";
  position: absolute;
  top: 0;
  left: -130%;
  width: 130%;
  height: 100%;
  z-index: 0;

  background: linear-gradient(
    90deg,
    transparent 0%,
    transparent 30%,
    rgba(255, 255, 255, 0.08) 40%,
    rgba(255, 255, 255, 0.30) 50%,
    rgba(255, 255, 255, 0.08) 60%,
    transparent 70%,
    transparent 100%
  );

  transform: skewX(-12deg);

  /* Slower so the movement is clearly visible */
  transition: left 2.6s cubic-bezier(0.22, 1, 0.36, 1);

  pointer-events: none;
}

/* Left → right */
.product-form__submit:hover::before,
.product-form__submit:focus-visible::before,
.product-form__cart-submit:hover::before,
.product-form__cart-submit:focus-visible::before,
button[name="add"]:hover::before,
button[name="add"]:focus-visible::before,
.add-to-cart:hover::before,
.add-to-cart:focus-visible::before,
.add_to_cart_button:hover::before,
.add_to_cart_button:focus-visible::before {
  left: 110%;
}

/* Keep text and icons above the animation */
.product-form__submit > *,
.product-form__cart-submit > *,
button[name="add"] > *,
.add-to-cart > *,
.add_to_cart_button > * {
  position: relative;
  z-index: 1;
}


/* ==========================================================
   QUICK ADD — SLOW, SMOOTH & VISIBLE GRADIENT FLOW
   ========================================================== */

.product__quick_view,
.product__card--action-btn,
.product__card--cart-btn,
.product-card .quick-add,
.quick-add,
.quick-add__submit {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

/* Moving gradient */
.product__quick_view::before,
.product__card--action-btn::before,
.product__card--cart-btn::before,
.product-card .quick-add::before,
.quick-add::before,
.quick-add__submit::before {
  content: "";
  position: absolute;
  top: 0;
  left: -140%;
  width: 140%;
  height: 100%;

  background: linear-gradient(
    90deg,
    transparent 0%,
    transparent 35%,
    rgba(255, 255, 255, 0.05) 42%,
    rgba(255, 255, 255, 0.22) 50%,
    rgba(255, 255, 255, 0.05) 58%,
    transparent 65%,
    transparent 100%
  );

  transform: skewX(-12deg);

  /* Slower Quick Add movement */
  transition: left 2.6s cubic-bezier(0.22, 1, 0.36, 1);

  pointer-events: none;
  z-index: 1;
}

/* Left → right */
.product__quick_view:hover::before,
.product__card--action-btn:hover::before,
.product__card--cart-btn:hover::before,
.product-card .quick-add:hover::before,
.quick-add:hover::before,
.quick-add__submit:hover::before {
  left: 110%;
}

/* Keep Quick Add text/icon above gradient */
.product__quick_view > *,
.product__card--action-btn > *,
.product__card--cart-btn > *,
.product-card .quick-add > *,
.quick-add > *,
.quick-add__submit > * {
  position: relative;
  z-index: 2;
}
/* Hide announcement until theme is ready */
.announcement-bar {
  opacity: 0;
  visibility: hidden;
}

html.theme-ready .announcement-bar {
  opacity: 1;
  visibility: visible;
  transition: opacity .2s ease;
}
/* ============================================================================
   DIECUTSMART — TABLET PRODUCT CARDS (750px–991px)
   Apply the same compact/mobile product-card composition used on touch devices,
   but show THREE cards per row on tablet.

   Applies to:
   - Collection product grid
   - Search product grid
   - Product Tabs / product-card sections
   Desktop (992px+) and mobile (0–749px) are not changed here.
   ============================================================================ */
@media only screen and (min-width: 750px) and (max-width: 991px) {

  /* ------------------------- GRID: 3 CARDS ------------------------- */
  #product-grid [data-product-column] {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    column-gap: 12.32px !important;
    row-gap: 24px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 23px !important;
    box-sizing: border-box !important;
    justify-content: stretch !important;
    align-items: start !important;
  }

  #product-grid [data-product-column] > .col {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: none !important;
  }

  /* ------------------------- SHARED CARD ------------------------- */
  #product-grid .product__card,
  .section-products--tabs .product__card,
  .product__card {
    position: relative !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #FBFBFB !important;
    border-radius: 21px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    transform: none !important;
    transition: none !important;
  }

  #product-grid .product__card:hover,
  .section-products--tabs .product__card:hover,
  .product__card:hover {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: hidden !important;
    transform: none !important;
  }

  /* ------------------------- IMAGE ------------------------- */
  #product-grid .product__card__thumbnail,
  .section-products--tabs .product__card__thumbnail,
  .product__card .product__card__thumbnail {
    position: relative !important;
    width: calc(100% - 20px) !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    aspect-ratio: 163 / 172 !important;
    margin: 10px !important;
    padding: 0 !important;
    border-radius: 16px 22.5px 0 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  #product-grid .product__card__thumbnail .product__media_thumbnail,
  #product-grid .product__card__thumbnail .media,
  .section-products--tabs .product__card__thumbnail .product__media_thumbnail,
  .section-products--tabs .product__card__thumbnail .media,
  .product__card .product__card__thumbnail .media {
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 0 !important;
    max-height: none !important;
    padding-bottom: 0 !important;
    position: relative !important;
    overflow: hidden !important;
  }

  #product-grid .product__card__thumbnail .media > img,
  #product-grid .product__card__thumbnail img,
  .section-products--tabs .product__card__thumbnail .media > img,
  .section-products--tabs .product__card__thumbnail img,
  .product__card .product__card__thumbnail img {
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: cover !important;
    position: absolute !important;
    inset: 0 !important;
  }

  /* ------------------------- CONTENT ------------------------- */
  #product-grid .product__card__content,
  .section-products--tabs .product__card__content,
  .product__card .product__card__content {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    column-gap: 8px !important;
    row-gap: 4px !important;
    align-items: center !important;
    padding: 10px 12px 12px !important;
    grid-template-areas:
      'title title'
      'price swatch'
      'cart cart'
      'rating rating'
      'actions actions' !important;
  }

  #product-grid .product__card__title,
  .section-products--tabs .product__card__title,
  .product__card .product__card__title {
    grid-area: title !important;
    margin: 0 !important;
    min-width: 0 !important;
    font-size: 14px !important;
    line-height: 20px !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  #product-grid .product__card__price,
  .section-products--tabs .product__card__price,
  .product__card .product__card__price {
    grid-area: price !important;
    min-width: 0 !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 22px !important;
  }

  #product-grid .product--color-swatch-wrapper,
  .section-products--tabs .product--color-swatch-wrapper,
  .product__card .product--color-swatch-wrapper {
    grid-area: swatch !important;
    justify-self: end !important;
    margin: 0 !important;
  }

  /* ------------------------- ADD TO CART ------------------------- */
  #product-grid .product__cart--wrapper.product__card--style2,
  .section-products--tabs .product__cart--wrapper.product__card--style2,
  .product__card .product__cart--wrapper.product__card--style2 {
    position: static !important;
    grid-area: cart !important;
    width: 100% !important;
    max-width: none !important;
    margin: 6px 0 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: none !important;
  }

  #product-grid .product__card--cart-btn.product__card--style2,
  .section-products--tabs .product__card--cart-btn.product__card--style2,
  .product__card .product__card--cart-btn.product__card--style2 {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 40px !important;
    min-height: 40px !important;
    border-radius: 999px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
  }

  /* ------------------------- ACTION ICONS ------------------------- */
  #product-grid .product-card-action-buttons-style2,
  .section-products--tabs .product-card-action-buttons-style2,
  .product__card .product-card-action-buttons-style2 {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  #product-grid .product__card-style2--action-btn,
  .section-products--tabs .product__card-style2--action-btn,
  .product__card .product__card-style2--action-btn {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
  }

  #product-grid .product__card-style2--action-btn svg,
  .section-products--tabs .product__card-style2--action-btn svg,
  .product__card .product__card-style2--action-btn svg {
    width: 16px !important;
    height: auto !important;
  }
}

/* ==========================================================
   DIECUTSMART — TABLET PRODUCT CARD FINAL OVERRIDES
   750px–991px

   Tablet should use the same compact/mobile product-card behavior:
   - 3 cards per row (handled by the grid/layout rules)
   - Wishlist = round icon
   - No Quick View icon
   - Add to Cart = always visible and full width
   ========================================================== */
@media only screen and (min-width: 750px) and (max-width: 991px) {

  /* Keep the normal product-card action area visible on tablet. */
  #product-grid .product-card-action-buttons,
  .section-products--tabs .product-card-action-buttons,
  .product__card .product-card-action-buttons {
    grid-area: cart !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 6px 0 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    position: static !important;
  }

  /* Add to Cart wrapper: always visible on tablet. */
  #product-grid .product-card-action-buttons .product__cart--wrapper,
  .section-products--tabs .product-card-action-buttons .product__cart--wrapper,
  .product__card .product-card-action-buttons .product__cart--wrapper {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    position: static !important;
    transform: none !important;
  }

  /* Add to Cart button: same full-width pill style as mobile. */
  #product-grid .product-card-action-buttons .product__card--cart-btn,
  .section-products--tabs .product-card-action-buttons .product__card--cart-btn,
  .product__card .product-card-action-buttons .product__card--cart-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 40px !important;
    min-height: 40px !important;
    margin: 0 !important;
    padding: 0 14px !important;
    border-radius: 999px !important;
    gap: 8px !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  /* No Quick View icon on tablet. */
  #product-grid .product-card-action-buttons .product__quick_view,
  .section-products--tabs .product-card-action-buttons .product__quick_view,
  .product__card .product-card-action-buttons .product__quick_view,
  #product-grid .product-card-action-buttons-style2 .product__quick_view,
  .section-products--tabs .product-card-action-buttons-style2 .product__quick_view,
  .product__card .product-card-action-buttons-style2 .product__quick_view {
    display: none !important;
  }

  /* Hide Compare as well so tablet matches the simplified mobile card. */
  #product-grid .product-card-action-buttons .product--compare,
  .section-products--tabs .product-card-action-buttons .product--compare,
  .product__card .product-card-action-buttons .product--compare,
  #product-grid .product-card-action-buttons .compare__button,
  .section-products--tabs .product-card-action-buttons .compare__button,
  .product__card .product-card-action-buttons .compare__button {
    display: none !important;
  }

  /* Wishlist: round button, like the mobile card. */
  #product-grid .product__card-style2--action-btn,
  .section-products--tabs .product__card-style2--action-btn,
  .product__card .product__card-style2--action-btn,
  #product-grid .product__card--wishlist-btn,
  .section-products--tabs .product__card--wishlist-btn,
  .product__card .product__card--wishlist-btn {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    max-width: 36px !important;
    max-height: 36px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  #product-grid .product__card-style2--action-btn svg,
  .section-products--tabs .product__card-style2--action-btn svg,
  .product__card .product__card-style2--action-btn svg,
  #product-grid .product__card--wishlist-btn svg,
  .section-products--tabs .product__card--wishlist-btn svg,
  .product__card .product__card--wishlist-btn svg {
    width: 16px !important;
    height: 16px !important;
    max-width: 16px !important;
  }

  /* Keep tablet action icons on top of the product image. */
  #product-grid .product-card-action-buttons-style2,
  .section-products--tabs .product-card-action-buttons-style2,
  .product__card .product-card-action-buttons-style2 {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
}

/* ==========================================================
   TABLET — SHOW ADD TO CART TEXT + CART ICON
   750px–991px
   Keep the mobile-style full-width button, but show both
   the Add to cart label and the cart icon.
   ========================================================== */
@media only screen and (min-width: 750px) and (max-width: 991px) {
  #product-grid .product-card-action-buttons .product__card--cart-btn .cart__buton--label,
  .section-products--tabs .product-card-action-buttons .product__card--cart-btn .cart__buton--label,
  .product__card .product-card-action-buttons .product__card--cart-btn .cart__buton--label,
  #product-grid .product__card--cart-btn .cart__buton--label,
  .section-products--tabs .product__card--cart-btn .cart__buton--label,
  .product__card .product__card--cart-btn .cart__buton--label {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    overflow: visible !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
  }

  #product-grid .product-card-action-buttons .product__card--cart-btn .action__btn--svg,
  .section-products--tabs .product-card-action-buttons .product__card--cart-btn .action__btn--svg,
  .product__card .product-card-action-buttons .product__card--cart-btn .action__btn--svg,
  #product-grid .product__card--cart-btn .action__btn--svg,
  .section-products--tabs .product__card--cart-btn .action__btn--svg,
  .product__card .product__card--cart-btn .action__btn--svg {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  #product-grid .product-card-action-buttons .product__card--cart-btn .action__btn--svg svg,
  .section-products--tabs .product-card-action-buttons .product__card--cart-btn .action__btn--svg svg,
  .product__card .product-card-action-buttons .product__card--cart-btn .action__btn--svg svg,
  #product-grid .product__card--cart-btn .action__btn--svg svg,
  .section-products--tabs .product__card--cart-btn .action__btn--svg svg,
  .product__card .product__card--cart-btn .action__btn--svg svg {
    width: 18px !important;
    height: 18px !important;
    display: block !important;
  }
}

/* ==========================================================
   TABLET — ADD TO CART FINAL
   750px–991px
   Same visual treatment as the mobile card:
   pink pill + centered “Add to cart” text + cart icon.
   ========================================================== */
@media only screen and (min-width: 750px) and (max-width: 991px) {
  #product-grid .product__card--cart-btn,
  .section-products--tabs .product__card--cart-btn,
  .product__card .product__card--cart-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 40px !important;
    min-height: 40px !important;
    padding: 0 14px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    border: 1px solid #ee2761 !important;
    border-radius: 999px !important;
    background: #ee2761 !important;
    color: #ffffff !important;
    text-align: center !important;
    font-weight: 600 !important;
    line-height: 1 !important;
  }

  /* Text first — keep it in normal flex flow so the whole group is centered. */
  #product-grid .product__card--cart-btn .cart__buton--label,
  .section-products--tabs .product__card--cart-btn .cart__buton--label,
  .product__card .product__card--cart-btn .cart__buton--label {
    order: 1 !important;
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    text-align: center !important;
  }

  /* Cart icon second. */
  #product-grid .product__card--cart-btn .action__btn--svg,
  .section-products--tabs .product__card--cart-btn .action__btn--svg,
  .product__card .product__card--cart-btn .action__btn--svg {
    order: 2 !important;
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  #product-grid .product__card--cart-btn .action__btn--svg svg,
  #product-grid .product__card--cart-btn .action__btn--svg svg *,
  .section-products--tabs .product__card--cart-btn .action__btn--svg svg,
  .section-products--tabs .product__card--cart-btn .action__btn--svg svg *,
  .product__card .product__card--cart-btn .action__btn--svg svg,
  .product__card .product__card--cart-btn .action__btn--svg svg * {
    width: 18px !important;
    height: 18px !important;
    color: #ffffff !important;
    fill: #ffffff !important;
    stroke: #ffffff !important;
  }

  /* Keep the button contents above the existing shine/gradient pseudo-element. */
  #product-grid .product__card--cart-btn > *,
  .section-products--tabs .product__card--cart-btn > *,
  .product__card .product__card--cart-btn > * {
    position: relative !important;
    z-index: 2 !important;
  }


/* ==========================================================
   TABLET — FINAL BUTTON ALIGNMENT
   Keep "Add to cart" exactly centered in the button.
   The cart icon sits immediately to the right of the centered
   label without moving the label itself.
   ========================================================== */
@media only screen and (min-width: 750px) and (max-width: 991px) {

  #product-grid .product-card-action-buttons .product__card--cart-btn,
  .section-products--tabs .product-card-action-buttons .product__card--cart-btn,
  .product__card .product-card-action-buttons .product__card--cart-btn,
  #product-grid .product__card--cart-btn,
  .section-products--tabs .product__card--cart-btn,
  .product__card .product__card--cart-btn {
    position: relative !important;
    display: block !important;
    text-align: center !important;
    padding: 0 42px 0 14px !important;
    box-sizing: border-box !important;
  }

  /* Add to cart text — mathematically centered in the full button. */
  #product-grid .product__card--cart-btn .cart__buton--label,
  .section-products--tabs .product__card--cart-btn .cart__buton--label,
  .product__card .product__card--cart-btn .cart__buton--label {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    display: block !important;
    width: max-content !important;
    max-width: calc(100% - 70px) !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
    white-space: nowrap !important;
    color: #ffffff !important;
    z-index: 3 !important;
  }

  /* Cart icon — placed after the text, without affecting text centering. */
  #product-grid .product__card--cart-btn .action__btn--svg,
  .section-products--tabs .product__card--cart-btn .action__btn--svg,
  .product__card .product__card--cart-btn .action__btn--svg {
    position: absolute !important;
    left: calc(50% + 48px) !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 3 !important;
    color: #ffffff !important;
  }

  #product-grid .product__card--cart-btn .action__btn--svg svg,
  #product-grid .product__card--cart-btn .action__btn--svg svg *,
  .section-products--tabs .product__card--cart-btn .action__btn--svg svg,
  .section-products--tabs .product__card--cart-btn .action__btn--svg svg *,
  .product__card .product__card--cart-btn .action__btn--svg svg,
  .product__card .product__card--cart-btn .action__btn--svg svg * {
    width: 18px !important;
    height: 18px !important;
    color: #ffffff !important;
    fill: #ffffff !important;
    stroke: #ffffff !important;
  }
}
@media screen and (max-width: 749px) {

  /* Make the header row the positioning reference */
  .header_bottom .header__inner {
    position: relative !important;
    width: 100% !important;
  }

  /* Center logo in the entire header */
  .header_bottom .header__logo {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;

    width: 150px !important;
    max-width: 150px !important;
    height: 59px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  .header_bottom .header__logo img,
  .header_bottom .header__heading-logo {
    width: 150px !important;
    max-width: 150px !important;
    height: auto !important;
    display: block !important;
  }
}
/* Die Cut Mart — large desktop content offset */
@media only screen and (min-width: 1280px) {
  .container-fluid {
    --offset-fluid: 3rem;
  }
}
