/* inter-cyrillic-ext-400-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/assets/fonts/inter-cyrillic-ext-400-normal.woff2) format('woff2');
  unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
}

/* inter-cyrillic-400-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/assets/fonts/inter-cyrillic-400-normal.woff2) format('woff2');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}

/* inter-greek-ext-400-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/assets/fonts/inter-greek-ext-400-normal.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}

/* inter-greek-400-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/assets/fonts/inter-greek-400-normal.woff2) format('woff2');
  unicode-range: U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;
}

/* inter-vietnamese-400-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/assets/fonts/inter-vietnamese-400-normal.woff2) format('woff2');
  unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;
}

/* inter-latin-ext-400-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/assets/fonts/inter-latin-ext-400-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

/* inter-latin-400-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/assets/fonts/inter-latin-400-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}/* inter-cyrillic-ext-500-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(/assets/fonts/inter-cyrillic-ext-500-normal.woff2) format('woff2');
  unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
}

/* inter-cyrillic-500-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(/assets/fonts/inter-cyrillic-500-normal.woff2) format('woff2');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}

/* inter-greek-ext-500-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(/assets/fonts/inter-greek-ext-500-normal.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}

/* inter-greek-500-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(/assets/fonts/inter-greek-500-normal.woff2) format('woff2');
  unicode-range: U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;
}

/* inter-vietnamese-500-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(/assets/fonts/inter-vietnamese-500-normal.woff2) format('woff2');
  unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;
}

/* inter-latin-ext-500-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(/assets/fonts/inter-latin-ext-500-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

/* inter-latin-500-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(/assets/fonts/inter-latin-500-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}/* inter-cyrillic-ext-700-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/assets/fonts/inter-cyrillic-ext-700-normal.woff2) format('woff2');
  unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
}

/* inter-cyrillic-700-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/assets/fonts/inter-cyrillic-700-normal.woff2) format('woff2');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}

/* inter-greek-ext-700-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/assets/fonts/inter-greek-ext-700-normal.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}

/* inter-greek-700-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/assets/fonts/inter-greek-700-normal.woff2) format('woff2');
  unicode-range: U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;
}

/* inter-vietnamese-700-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/assets/fonts/inter-vietnamese-700-normal.woff2) format('woff2');
  unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;
}

/* inter-latin-ext-700-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/assets/fonts/inter-latin-ext-700-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

/* inter-latin-700-normal */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/assets/fonts/inter-latin-700-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
/* ===== theme tokens (from the capture) ===== */
:root {
  --fg: 36, 40, 51;              /* #242833 */
  --bg: 255, 255, 255;
  --button: 18, 18, 18;          /* #121212 */
  --accent: #006838;
  --shop: #5a31f4;
  --page-width: 120rem;
  --gap-d: 8px;
  --gap-m: 4px;
  --font: Inter, sans-serif;
  --ease: cubic-bezier(0, 0, .3, 1);
}
*, *::before, *::after { box-sizing: border-box; }
html { font-size: 62.5%; height: 100%; }
body {
  margin: 0; min-height: 100%; display: grid; grid-template-rows: auto auto 1fr auto;
  font-family: var(--font); font-weight: 400; font-size: 1.5rem; letter-spacing: .06rem; line-height: 1.8;
  color: rgba(var(--fg), .75); background: rgb(var(--bg));
  -webkit-font-smoothing: antialiased; overflow-x: hidden;
}
@media (min-width: 750px) { body { font-size: 1.6rem; } }
img, svg { display: block; }
a { color: inherit; }
button { font-family: inherit; }
p { margin: 0 0 1em; }
.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; }
.skip-to-content-link:focus { z-index: 9999; position: inherit; overflow: auto; width: auto; height: auto; clip: auto; padding: 1rem 2rem; background: rgb(var(--button)); color: #fff; }
[hidden] { display: none !important; }
.list-unstyled { list-style: none; margin: 0; padding: 0; }
.center { text-align: center; }
.icon { width: 10px; height: 6px; }

h1, h2, h3, h4, h5, .h0, .h1, .h2, .h3, .h4, .h5 {
  font-family: var(--font); font-weight: 500; letter-spacing: .06rem; color: rgb(var(--fg)); line-height: 1.3; word-break: break-word;
}
.h0 { font-size: 4rem; }
h1, .h1 { font-size: 3rem; }
h2, .h2 { font-size: 2rem; }
h3, .h3 { font-size: 1.7rem; }
h4, .h4 { font-size: 1.5rem; }
h5, .h5 { font-size: 1.2rem; }
@media (min-width: 750px) {
  .h0 { font-size: 5.2rem; }
  h1, .h1 { font-size: 4rem; }
  h2, .h2 { font-size: 2.4rem; }
  h3, .h3 { font-size: 1.8rem; }
  h5, .h5 { font-size: 1.3rem; }
}
.caption { font-size: 1rem; letter-spacing: .07rem; line-height: 1.7; }
@media (min-width: 750px) { .caption { font-size: 1.2rem; } }
.caption-large { font-size: 1.3rem; line-height: 1.5; letter-spacing: .04rem; }
.caption-with-letter-spacing { font-size: 1rem; letter-spacing: .13rem; line-height: 1.2; text-transform: uppercase; }

.page-width { max-width: var(--page-width); margin: 0 auto; padding: 0 1.5rem; }
@media (min-width: 750px) { .page-width { padding: 0 5rem; } .page-width--narrow { padding: 0 9rem; } }
@media (min-width: 990px) { .page-width--narrow { max-width: 72.6rem; padding: 0; } }
@media (max-width: 989px) { .page-width-desktop { padding: 0; } }

.link, .underlined-link { color: rgb(var(--fg)); text-underline-offset: .3rem; text-decoration-thickness: .1rem; }
.underlined-link { text-decoration: underline; }
.link { background: none; border: 0; padding: 0; cursor: pointer; font: inherit; letter-spacing: inherit; }

/* ===== buttons & fields ===== */
.button, .button--primary {
  display: inline-flex; justify-content: center; align-items: center; min-width: 12rem; min-height: 4.5rem;
  padding: 0 3rem; border: 0; border-radius: 0; cursor: pointer; font: inherit; font-size: 1.5rem; letter-spacing: .1rem; line-height: 1.2;
  text-decoration: none; background: rgb(var(--button)); color: #fff; box-shadow: 0 0 0 1px rgb(var(--button)); transition: box-shadow .1s;
}
.button:hover { box-shadow: 0 0 0 2px rgb(var(--button)); }
.button--secondary { background: #fff; color: rgb(var(--button)); }
.button--full-width { display: flex; width: 100%; }
.button:disabled, .button[disabled] { cursor: not-allowed; opacity: .5; }

.field { position: relative; width: 100%; display: flex; }
.field::after { content: ''; position: absolute; inset: 1px; pointer-events: none; box-shadow: 0 0 0 1px rgba(var(--fg), .55); transition: box-shadow .1s ease; }
.field:hover::after { box-shadow: 0 0 0 2px rgba(var(--fg), .55); }
.field:focus-within::after { box-shadow: 0 0 0 2px rgba(var(--fg), .75); }
.field__input, .select__select {
  flex-grow: 1; width: 100%; height: 4.5rem; margin: 0; padding: 1.5rem 2rem; border: 0; border-radius: 0; background: #fff;
  color: rgb(var(--fg)); font: inherit; font-size: 1.6rem; letter-spacing: .1rem; outline: none; -webkit-appearance: none; appearance: none;
}
.field__input::placeholder { opacity: 0; }
.field__label {
  position: absolute; left: calc(2rem + 1px); top: calc(1rem + 1px); margin: 0; pointer-events: none; font-size: 1.6rem; letter-spacing: .1rem;
  line-height: 1.5; color: rgba(var(--fg), .75); transition: top .1s ease, font-size .1s ease;
}
.field__input:focus ~ .field__label, .field__input:not(:placeholder-shown) ~ .field__label { font-size: 1rem; top: calc(.3rem + 1px); letter-spacing: .04rem; }
.field__input:focus, .field__input:not(:placeholder-shown) { padding: 2.2rem 1.5rem .8rem 2rem; }
.field__button { position: absolute; right: 0; top: 0; width: 4.4rem; height: 100%; display: flex; align-items: center; justify-content: center; background: transparent; border: 0; color: rgba(var(--fg), .75); cursor: pointer; padding: 0; }
.field__button .icon-search { width: 1.8rem; height: 1.8rem; }
.field__button .icon-arrow { width: 1.5rem; height: 1rem; }
.field__button .icon-close { width: 1.4rem; height: 1.4rem; }
.text-area { min-height: 10rem; resize: none; height: auto; }
.form__message { font-size: 1.4rem; margin: 1rem 0 0; color: rgb(var(--fg)); }
.form__message.is-error { color: #c00; }

/* ===== announcement bar ===== */
.announcement-bar-section { background: var(--accent); color: #fff; border-bottom: 1px solid rgba(255, 255, 255, .08); }
.announcement-bar { display: flex; align-items: center; }
.announcement-bar__track { flex: 1; position: relative; overflow: hidden; }
.announcement-bar__message {
  display: none; margin: 0; text-align: center; padding: 1rem 0; min-height: 3.8rem; line-height: 1.5;
  font-size: 1.2rem; font-weight: 500; letter-spacing: .1rem; color: #fff; animation: slideIn .25s var(--ease);
}
.announcement-bar__message.is-active { display: block; }
@media (max-width: 989px) { .announcement-bar__message { padding: 1.3rem 0; min-height: 4.4rem; } }
@media (min-width: 750px) { .announcement-bar__message { font-size: 1.3rem; } .announcement-bar { margin: 0 -1.5rem; } }
.slider-button {
  width: 4.4rem; height: 4.4rem; display: flex; align-items: center; justify-content: center; flex-shrink: 0;
  background: transparent; border: 0; color: rgba(var(--fg), .75); cursor: pointer; padding: 0;
}
.slider-button .icon { width: 1rem; height: .6rem; }
.slider-button:disabled { cursor: not-allowed; opacity: .3; }
.announcement-bar .slider-button { color: rgba(255, 255, 255, .75); height: 3.8rem; }
@media (max-width: 989px) { .announcement-bar .slider-button { height: 4.4rem; } }

/* ===== header ===== */
.section-header { position: sticky; top: 0; z-index: 3; background: #fff; border-bottom: 1px solid rgba(var(--fg), .08); }
.header {
  display: grid; grid-template-areas: 'left-icons heading icons'; grid-template-columns: 1fr 2fr 1fr; align-items: center;
  padding: 0 3rem; position: relative;
}
@media (min-width: 750px) { .header.page-width { padding: 0 3.2rem; } }
@media (min-width: 990px) {
  .header.page-width { padding: 0 5rem; grid-template-areas: 'heading icons'; grid-template-columns: auto 1fr; column-gap: 2rem; }
}
.header__heading { grid-area: heading; justify-self: center; margin: 0; line-height: 0; }
@media (min-width: 990px) { .header__heading { justify-self: start; } }
.header__heading-link { display: inline-block; padding: .75rem; text-decoration: none; }
.logo { width: 9.3rem; height: 9.3rem; object-fit: contain; transition: transform .3s var(--ease); }
.scrolled .logo { transform: scale(.75); }
.header__icons { grid-area: icons; justify-self: end; display: flex; align-items: center; }
.header__icon { width: 4.4rem; height: 4.4rem; display: flex; align-items: center; justify-content: center; color: rgb(var(--fg)); cursor: pointer; text-decoration: none; position: relative; list-style: none; }
.header__icon::-webkit-details-marker { display: none; }
.header__icon .icon { width: 2rem; height: 2rem; }
.header__icon .icon-cart-empty { width: 4.4rem; height: 4.4rem; margin: 0 -1.2rem; }
.header__icon--cart .icon-cart-empty { margin: 0; }
.cart-count-bubble { position: absolute; bottom: .8rem; left: 2.2rem; height: 1.7rem; min-width: 1.7rem; border-radius: 100%; background: rgb(var(--button)); color: #fff; font-size: .9rem; line-height: 1.7rem; text-align: center; padding: 0 .3rem; }
.header__search--mobile { grid-area: left-icons; justify-self: start; }
@media (min-width: 990px) { .header__search--mobile { display: none; } }
@media (max-width: 989px) { .header__search--desktop, .localization--header { display: none; } }
.header__search > summary { list-style: none; }

/* localization */
.disclosure { position: relative; }
.disclosure__button {
  display: flex; align-items: center; gap: .8rem; height: 3.8rem; padding: 0 1.7rem 0 1.5rem; background: transparent; border: 0; cursor: pointer;
  font: inherit; font-size: 1.4rem; letter-spacing: .06rem; color: rgb(var(--fg)); white-space: nowrap;
}
.disclosure__button .icon-caret { width: 1rem; height: .6rem; transition: transform .15s; }
.disclosure__button[aria-expanded='true'] .icon-caret { transform: rotate(180deg); }
.disclosure__list-wrapper {
  position: absolute; z-index: 4; top: calc(100% + .4rem); right: 0; width: 30rem; background: #fff; border: 1px solid rgba(var(--fg), .1);
  box-shadow: 0 4px 5px rgba(var(--button), .05); font-size: 1.4rem;
}
.footer .disclosure__list-wrapper { top: auto; bottom: calc(100% + .4rem); left: 0; right: auto; }
.country-filter { padding: 1.5rem 1.5rem .8rem; }
.country-filter .field::after { box-shadow: 0 0 0 1px rgba(var(--fg), .3); }
.country-filter .icon-search { position: absolute; right: 1.4rem; top: 1.4rem; width: 1.6rem; height: 1.6rem; color: rgba(var(--fg), .75); pointer-events: none; }
.disclosure__list { list-style: none; margin: 0; padding: .5rem 0 1rem; max-height: 27rem; overflow-y: auto; }
.disclosure__link { display: flex; align-items: baseline; gap: .6rem; padding: .7rem 1.5rem; text-decoration: none; color: rgba(var(--fg), .75); line-height: 1.3; }
.disclosure__link:hover, .disclosure__link[aria-current] { color: rgb(var(--fg)); }
.disclosure__link .check { width: 1.2rem; flex-shrink: 0; visibility: hidden; }
.disclosure__link[aria-current] .check { visibility: visible; }
.disclosure__link .icon-checkmark { width: 1.1rem; height: .8rem; }
.localization-form__currency { color: rgba(var(--fg), .6); }

/* search modal */
.search-modal {
  display: none; position: absolute; z-index: 5; left: 0; right: 0; top: 0; height: 100%; min-height: 10rem; background: #fff;
  border-bottom: 1px solid rgba(var(--fg), .08);
}
.header__search[open] .search-modal { display: block; animation: fadeIn .2s var(--ease); }
.modal-overlay { position: fixed; left: 0; right: 0; top: 100%; }
.search-modal .modal-overlay { position: absolute; top: 100%; height: 100vh; background: rgba(var(--fg), .5); }
.search-modal__content { position: relative; height: 100%; display: flex; align-items: center; justify-content: center; padding: 0 5rem 0 1rem; }
@media (min-width: 750px) { .search-modal__content { padding: 0 6rem; } }
.search-modal__form { position: relative; flex: 1; max-width: 74.2rem; }
.search-modal__close-button { width: 4.4rem; height: 4.4rem; margin-left: .5rem; display: flex; align-items: center; justify-content: center; background: none; border: 0; cursor: pointer; color: rgb(var(--fg)); }
.search-modal__close-button .icon { width: 1.7rem; height: 1.7rem; }
.search__input { padding-right: 9.8rem; }
.reset__button { right: 4.4rem; }
.predictive-search {
  position: absolute; top: calc(100% + .1rem); left: -.1rem; right: -.1rem; z-index: 3; background: #fff; border: 1px solid rgba(var(--fg), .2);
  box-shadow: 0 4px 5px rgba(var(--button), .05); max-height: 60vh; overflow-y: auto;
}
.predictive-search__heading { margin: 0 2rem; padding: 1.5rem 0 .75rem; font-size: 1.2rem; letter-spacing: .07rem; color: rgba(var(--fg), .7); border-bottom: 1px solid rgba(var(--fg), .08); font-weight: 400; }
.predictive-search__list { list-style: none; margin: 0; padding: .5rem 0; }
.predictive-search__item { display: grid; grid-template-columns: 5rem 1fr; gap: 2rem; align-items: center; padding: 1rem 2rem; text-decoration: none; color: rgb(var(--fg)); }
.predictive-search__item:hover { background: rgba(var(--fg), .04); }
.predictive-search__item .thumb { position: relative; width: 5rem; height: 5rem; }
.predictive-search__item-heading { font-size: 1.4rem; margin: 0; font-weight: 400; }
.predictive-search__item .price { font-size: 1.2rem; color: rgba(var(--fg), .75); }
.predictive-search__term { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 1.3rem 2rem; border: 0; border-top: 1px solid rgba(var(--fg), .08); background: #fff; color: rgb(var(--fg)); font: inherit; font-size: 1.4rem; cursor: pointer; text-align: left; }
.predictive-search__term .icon { width: 1.5rem; height: 1rem; }
.predictive-search__empty { padding: 1.5rem 2rem; font-size: 1.4rem; margin: 0; }

/* cart notification */
.cart-notification { position: absolute; right: 0; left: 0; top: 100%; z-index: 4; pointer-events: none; }
.cart-notification__inner { position: relative; display: flex; justify-content: flex-end; }
.cart-notification__inner > * { pointer-events: auto; }
.cart-notification__inner {
  flex-direction: column; margin-left: auto; width: 100%; max-width: 100%; padding: 2.5rem 3.5rem; background: #fff; border: 1px solid rgba(var(--fg), .1);
  border-top: 0; pointer-events: auto; animation: fadeIn .3s var(--ease);
}
@media (min-width: 750px) { .cart-notification__inner { width: 45rem; margin-right: 5rem; } }
.cart-notification__header { display: flex; align-items: flex-start; justify-content: space-between; }
.cart-notification__heading { display: flex; align-items: center; gap: 1rem; margin: 0; color: rgb(var(--fg)); font-weight: 400; }
.cart-notification__heading .icon { width: 1.3rem; height: 1rem; }
.cart-notification__close { width: 4.4rem; height: 4.4rem; margin: -1.4rem -1.4rem 0 0; background: none; border: 0; cursor: pointer; color: rgb(var(--fg)); display: flex; align-items: center; justify-content: center; }
.cart-notification__close .icon { width: 1.4rem; height: 1.4rem; }
.cart-notification-product { display: flex; gap: 1.5rem; padding: 2.5rem 0 3rem; }
.cart-notification-product .thumb { position: relative; width: 7rem; height: 7rem; flex-shrink: 0; }
.cart-notification-product h3 { margin: 0; font-size: 1.5rem; font-weight: 400; }
.cart-notification-product p { margin: .5rem 0 0; font-size: 1.3rem; }
.cart-notification__links { display: grid; gap: 1rem; text-align: center; }
.cart-notification__close-link { margin-top: .5rem; text-decoration: underline; font-size: 1.4rem; }

/* ===== placeholders (stand-ins for the original photos) ===== */
.ratio { position: relative; display: block; }
.ratio::before { content: ''; display: block; padding-bottom: var(--ratio-percent, 100%); }
.ratio > .media-img, .thumb > .media-img, .cart-item__image > .media-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.thumb, .cart-item__image { overflow: hidden; }

/* ===== slideshow ===== */
.slideshow { position: relative; overflow: hidden; }
.slideshow__track { display: flex; transition: transform .6s var(--ease); }
.slideshow__slide { flex: 0 0 100%; position: relative; min-height: 39rem; display: flex; align-items: center; justify-content: center; }
@media (min-width: 750px) { .slideshow__slide { min-height: 72rem; } }
.banner__media { position: absolute; inset: 0; overflow: hidden; }
.banner__media img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.banner__content { position: relative; z-index: 1; width: 100%; display: flex; align-items: center; justify-content: center; padding: 0; }
.banner__box { max-width: 54.5rem; padding: 4rem 1.5rem; text-align: center; color: rgba(255, 255, 255, .75); }
@media (min-width: 750px) { .banner__box { padding: 4rem 3.5rem; } }
.banner__heading { margin: 0; color: #fff; }
.banner__heading strong { font-weight: 700; }
.banner__text { margin-top: 1rem; }
.banner__text p { margin: 0; }
.slider-buttons { display: flex; align-items: center; justify-content: center; }
.slider-counter { display: flex; justify-content: center; min-width: 4.4rem; color: rgba(var(--fg), .75); }
@media (min-width: 750px) { .slider-counter { font-size: 1.2rem; } }
.slideshow__controls { border-bottom: 0; height: 4.6rem; }

/* ===== grids & cards ===== */
.grid { display: grid; grid-template-columns: repeat(var(--cols, 1), minmax(0, 1fr)); column-gap: var(--gap-m); row-gap: var(--gap-m); list-style: none; margin: 0; padding: 0; align-items: start; }
@media (min-width: 750px) { .grid { column-gap: var(--gap-d); row-gap: var(--gap-d); } }
.grid--2-col-tablet-down { --cols: 2; }
@media (min-width: 750px) { .grid--2-col-tablet { --cols: 2; } }
@media (min-width: 990px) { .grid--4-col-desktop { --cols: 4; } }
.grid__item { min-width: 0; }
.card { position: relative; text-decoration: none; }
.card__inner { overflow: hidden; }
.card__heading { margin: 0; }
.card__heading a { text-decoration: none; }
.card__heading a::after { content: ''; position: absolute; inset: 0; z-index: 1; }
.product-card-wrapper:hover .card__heading a { text-decoration: underline; text-underline-offset: .3rem; }
.card__information { padding: 1.7rem 0 1.7rem; }
.card-information > * + * { margin-top: .5rem; }
.card-information .price { margin-top: .5rem; }
.card__badge { position: absolute; left: 1rem; bottom: 1rem; z-index: 1; }
.badge { display: inline-block; padding: .5rem 1.3rem .6rem; border-radius: 4rem; font-size: 1.2rem; letter-spacing: .1rem; line-height: 1; background: rgb(var(--fg)); color: #fff; }
.badge--sold { background: #fff; color: rgb(var(--fg)); border: 1px solid rgba(var(--fg), .1); }
.price { font-size: 1.6rem; letter-spacing: .1rem; line-height: 1.5; color: rgb(var(--fg)); }
.price s { color: rgba(var(--fg), .75); font-size: 1.3rem; margin-right: 1rem; }
.collection-card-wrapper .card__heading { font-size: 1.7rem; }
@media (min-width: 750px) { .collection-card-wrapper .card__heading { font-size: 1.8rem; } }
.collection-card-wrapper .card__information { padding: 1.7rem 0 0; }
.icon-wrap { display: inline-block; margin-left: 1rem; vertical-align: middle; }
.icon-wrap .icon-arrow { width: 1.5rem; height: 1.1rem; transition: transform .2s; }
.collection-card-wrapper:hover .icon-arrow { transform: translateX(.4rem); }
.card .media-img { transition: transform .6s var(--ease); }
.card-wrapper:hover .media-img { transform: scale(1.03); }

/* collection list section */
.section-collection-list .section-pad { padding-top: 2.7rem; padding-bottom: 2.7rem; }
@media (min-width: 750px) { .section-collection-list .section-pad { padding-top: 3.6rem; padding-bottom: 3.6rem; } }
.section-collection-list .slider-buttons { display: none; }
@media (max-width: 989px) {
  .slider--tablet { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; padding: 0 1.5rem; scroll-padding-left: 1.5rem; }
  .slider--tablet::-webkit-scrollbar { display: none; }
  .slider--tablet .grid__item { flex: 0 0 calc(50% - var(--gap-m) - 3rem); scroll-snap-align: start; }
  .section-collection-list .slider-buttons { display: flex; margin-top: 1rem; }
}
@media (min-width: 750px) and (max-width: 989px) {
  .slider--tablet { padding: 0 5rem; scroll-padding-left: 5rem; }
  .slider--tablet .grid__item { flex-basis: calc(50% - var(--gap-d) - 3rem); }
}

/* featured collection */
.featured-collection__inner { padding: .6rem 0 2.7rem; }
@media (min-width: 750px) { .featured-collection__inner { padding: .8rem 0 3.6rem; } }
.title-wrapper .title { margin: 0 0 3rem; }
.title strong { font-weight: 700; }

/* ===== footer ===== */
.footer { border-top: 1px solid rgba(var(--fg), .08); padding: 2.7rem 0; }
@media (min-width: 750px) { .footer { padding: 3.6rem 0; } }
.footer__content-top { padding-bottom: 5rem; }
@media (max-width: 749px) { .footer__content-top { padding: 0 4rem 5rem; } }
.footer__blocks-wrapper { display: grid; grid-template-columns: 1fr; }
@media (min-width: 750px) { .footer__blocks-wrapper { grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: var(--gap-d); } }
.footer-block { margin-bottom: 4rem; }
@media (min-width: 750px) { .footer-block { margin-bottom: 0; } }
.footer-block__heading { margin: 0 0 2rem; font-size: 1.8rem; }
.footer-block__heading strong { font-weight: 500; }
.footer-block__details-content p { margin: 0; }
.footer-block__details-content .list-menu__item--link { display: inline-block; padding: 1rem 0; font-size: 1.4rem; text-decoration: none; color: rgba(var(--fg), .75); line-height: 1.8; }
@media (min-width: 750px) {
  .footer-block__details-content .list-menu__item--link { padding: .5rem 0; }
  .footer-block__details-content li:first-child .list-menu__item--link { padding-top: 0; }
}
.footer-block__details-content .list-menu__item--link:hover, .footer-block__details-content [aria-current] { color: rgb(var(--fg)); text-decoration: underline; text-underline-offset: .3rem; }
.footer-block--newsletter { margin-top: 0; }
@media (min-width: 750px) { .footer-block--newsletter { display: flex; align-items: flex-end; justify-content: space-between; margin-top: 3.7rem; } }
.footer-block__newsletter { text-align: center; padding: 0 1rem; }
@media (min-width: 750px) { .footer-block__newsletter { text-align: left; padding: 0; } }
.newsletter-form { max-width: 36rem; margin: 0 auto; }
@media (min-width: 750px) { .newsletter-form { margin: 0; width: 36rem; } }
.newsletter-form .field__input { height: 4.7rem; padding-right: 5rem; }
.newsletter-form__button { width: 4.4rem; }
.footer__follow-on-shop { display: flex; justify-content: center; margin-top: 3rem; }
@media (min-width: 750px) { .footer__follow-on-shop { margin: 0 0 .5rem; } }
.follow-shop {
  display: inline-flex; align-items: center; gap: .5rem; height: 3.6rem; padding: 0 1.4rem 0 1rem; border: 0; border-radius: 99px; cursor: pointer;
  background: var(--shop); color: #fff; font-size: 1.6rem; font-weight: 500; letter-spacing: -.02rem;
}
.follow-shop b { font-weight: 700; }
.follow-shop.is-following { background: #fff; color: var(--shop); box-shadow: inset 0 0 0 1px var(--shop); }
.footer__content-bottom { border-top: 1px solid rgba(var(--fg), .08); padding-top: 3rem; }
.footer__content-bottom-wrapper { display: flex; flex-direction: column; align-items: center; gap: 2rem; }
@media (min-width: 750px) { .footer__content-bottom-wrapper { flex-direction: row; justify-content: space-between; align-items: flex-end; } }
.footer__localization { padding-top: 1rem; text-align: center; }
@media (min-width: 750px) { .footer__localization { text-align: left; } }
.footer__localization .caption-large { margin: 0 0 1rem; font-weight: 400; color: rgba(var(--fg), .75); }
.footer .disclosure__button { height: 4.2rem; font-size: 1.3rem; padding: 0 2rem; gap: 2.5rem; box-shadow: 0 0 0 1px rgba(var(--fg), .55); margin: 1px; }
.footer .disclosure__button .loc-label { margin-right: 1rem; }
.list-payment { display: flex; flex-wrap: wrap; justify-content: center; margin: 0; padding: 0; list-style: none; max-width: 31rem; }
@media (min-width: 750px) { .list-payment { justify-content: flex-end; max-width: none; margin-bottom: .8rem; } }
.list-payment__item { padding: .5rem; }
.pay {
  display: flex; align-items: center; justify-content: center; width: 3.8rem; height: 2.4rem; border-radius: 3px; overflow: hidden;
  font-size: .75rem; font-weight: 700; letter-spacing: 0; line-height: 1; border: 1px solid rgba(0, 0, 0, .07); background: #fff; color: #222;
}
.pay--amex { background: #1f72cd; color: #fff; }
.pay--apple { color: #000; }
.pay--diners { color: #0165ac; font-size: 1.3rem; }
.pay--discover { color: #e88a28; font-size: .6rem; }
.pay--gpay { color: #5f6368; }
.pay--master { background: #252525; color: #f79e1b; font-size: 1.1rem; letter-spacing: -.3rem; }
.pay--paypal { color: #003087; font-size: 1.2rem; font-style: italic; }
.pay--shop { background: var(--shop); color: #fff; font-size: 1rem; }
.pay--visa { background: #1434cb; color: #fff; font-size: .95rem; font-style: italic; }
.footer__copyright { margin-top: 4rem; text-align: center; width: 100%; font-size: 1.1rem; }
@media (min-width: 750px) { .footer__copyright { text-align: left; margin-top: 4rem; } }
.copyright__content a { text-decoration: none; }

/* ===== collection page ===== */
.collection-hero__title { margin: 3rem 0 2.5rem; }
@media (min-width: 750px) { .collection-hero__title { margin: 3rem 0 2.5rem; } }
.collection-section { padding: 2.7rem 0 2.7rem; }
@media (min-width: 750px) { .collection-section { padding: 3.6rem 0 3.6rem; } }
.facets-wrapper { margin-bottom: 1rem; }
.facets__form { display: none; }
@media (min-width: 750px) {
  .facets__form { display: flex; justify-content: space-between; align-items: center; min-height: 4.6rem; margin-bottom: 1.2rem; }
  .mobile-facets__wrapper { display: none !important; }
}
.facet-filters { display: flex; align-items: center; gap: 2.5rem; }
.facets__heading { margin: 0; font-size: 1.4rem; color: rgba(var(--fg), .85); font-weight: 400; }
.facets__disclosure { position: relative; }
.facets__summary { display: flex; align-items: center; gap: .8rem; list-style: none; cursor: pointer; font-size: 1.4rem; color: rgba(var(--fg), .75); }
.facets__summary::-webkit-details-marker { display: none; }
.facets__summary:hover span { text-decoration: underline; text-underline-offset: .3rem; }
.facets__summary .icon-caret { width: 1rem; height: .6rem; }
.facets__disclosure[open] .icon-caret { transform: rotate(180deg); }
.facets__display {
  position: absolute; z-index: 3; top: calc(100% + .5rem); left: -1.2rem; width: 35rem; max-height: 55rem; overflow-y: auto;
  background: #fff; border: 1px solid rgba(var(--fg), .2); font-size: 1.4rem;
}
.facets__header { display: flex; justify-content: space-between; padding: 1.5rem 2rem; border-bottom: 1px solid rgba(var(--fg), .2); }
.facets__reset { font-size: 1.4rem; }
.facets__list { padding: .5rem 2rem; }
.facet-checkbox { display: flex; align-items: center; gap: 1rem; padding: 1rem 0; cursor: pointer; color: rgb(var(--fg)); position: relative; }
.facet-checkbox input { position: absolute; opacity: 0; }
.facet-box { width: 1.6rem; height: 1.6rem; border: 1px solid rgba(var(--fg), .55); display: flex; align-items: center; justify-content: center; }
.facet-box .icon { width: 1.1rem; height: .7rem; visibility: hidden; }
.facet-checkbox input:checked + .facet-box .icon { visibility: visible; }
.facet-checkbox--disabled { color: rgba(var(--fg), .4); cursor: default; }
.facets__price-note { margin: 0; padding: 1.5rem 2rem 0; }
.price-range { display: flex; gap: 2rem; padding: 2rem; }
.price-range .field__currency { position: absolute; left: 1.5rem; top: 1.1rem; color: rgb(var(--fg)); }
.price-range .field__input { padding-left: 3rem; }
.price-range .field__label { left: 3rem; }
.facet-filters.sorting { gap: 0; }
.facet-filters__field { display: flex; align-items: center; }
.facet-filters__label { margin: 0 2rem 0 0; font-size: 1.4rem; font-weight: 400; color: rgba(var(--fg), .85); }
.select { position: relative; display: inline-flex; align-items: center; }
.select .icon-caret { position: absolute; right: 1.2rem; width: 1rem; height: .6rem; pointer-events: none; }
.facet-filters__sort { height: auto; padding: 0 3.5rem 0 0; font-size: 1.4rem; color: rgba(var(--fg), .75); background: transparent; cursor: pointer; letter-spacing: .06rem; min-width: 12rem; }
.product-count { margin-left: 2.5rem; }
.product-count__text { margin: 0; font-size: 1.4rem; font-weight: 400; color: rgba(var(--fg), .75); }
.mobile-facets__wrapper { display: flex; justify-content: space-between; align-items: center; margin-bottom: 1.5rem; }
.mobile-facets__open { display: flex; align-items: center; gap: 1rem; background: none; border: 0; padding: 0; cursor: pointer; font-size: 1.4rem; color: rgba(var(--fg), .75); letter-spacing: .07rem; }
.mobile-facets__open .icon { width: 2rem; height: 2rem; }
.mobile-facets { position: fixed; inset: 0; z-index: 10; }
.mobile-facets__overlay { position: absolute; inset: 0; background: rgba(var(--fg), .5); }
.mobile-facets__inner { position: absolute; right: 0; top: 0; bottom: 0; width: calc(100% - 5rem); max-width: 37.5rem; background: #fff; display: flex; flex-direction: column; animation: drawerIn .3s var(--ease); }
.mobile-facets__header { display: flex; justify-content: space-between; align-items: center; padding: 1rem 2.5rem; border-bottom: 1px solid rgba(var(--fg), .08); text-align: center; }
.mobile-facets__header-inner { flex: 1; }
.mobile-facets__heading { margin: 0; font-size: 1.4rem; }
.mobile-facets__count { margin: 0; font-size: 1.3rem; }
.mobile-facets__close { width: 4.4rem; height: 4.4rem; background: none; border: 0; cursor: pointer; display: flex; align-items: center; justify-content: center; color: rgb(var(--fg)); }
.mobile-facets__close .icon { width: 1.4rem; height: 1.4rem; }
.mobile-facets__main { flex: 1; overflow-y: auto; padding: 1rem 2.5rem; }
.mobile-facets__section h3 { font-size: 1.4rem; margin: 1.5rem 0 .5rem; }
.mobile-facets__section .facets__list, .mobile-facets__section .facets__price-note { padding-left: 0; padding-right: 0; }
.mobile-facets__section .price-range { padding: 1.5rem 0; }
.mobile-facets__section .facet-filters__sort { padding: 1rem 3.5rem 1rem 0; }
.mobile-facets__footer { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; padding: 2rem 2.5rem; border-top: 1px solid rgba(var(--fg), .08); }
.mobile-facets__footer .button { min-width: 0; padding: 0 1rem; }
.collection--empty { text-align: center; padding: 6rem 0; color: rgb(var(--fg)); }
.pagination-wrapper { margin-top: 4rem; }
@media (min-width: 990px) { .pagination-wrapper { margin-top: 5rem; } }
.pagination__list { display: flex; justify-content: center; flex-wrap: wrap; }
.pagination__item { display: inline-flex; align-items: center; justify-content: center; position: relative; height: 4.4rem; width: 4.4rem; padding: 0; text-decoration: none; color: rgb(var(--fg)); font-size: 1.4rem; }
.pagination__item--current::after { content: ''; position: absolute; left: 25%; right: 25%; bottom: 8px; height: .1rem; background: rgb(var(--fg)); }
.pagination__item:hover::after { content: ''; position: absolute; left: 25%; right: 25%; bottom: 8px; height: .1rem; background: rgb(var(--fg)); }
.pagination__item .icon { width: 1rem; height: .6rem; }

/* ===== product page ===== */
.product-section { padding: 2.7rem 1.5rem 1.2rem; }
@media (min-width: 750px) { .product-section { padding: 3.6rem 5rem 3.6rem; } }
.product { column-gap: 0; row-gap: 2.5rem; }
@media (min-width: 750px) {
  .product { grid-template-columns: 65% 35%; }
  .product__info-wrapper { padding-left: 4rem; }
}
.product__media-main { position: relative; }
.product__media-item { display: none; }
.product__media-item.is-active { display: block; }
.product__media-counter { display: flex; align-items: center; justify-content: center; gap: 0; }
@media (min-width: 750px) { .product__media-counter { display: none; } }
.thumbnail-list { display: none; }
@media (min-width: 750px) { .thumbnail-list { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1rem; margin-top: 1rem; } }
.thumbnail { display: block; width: 100%; padding: 0; border: 0; cursor: pointer; background: none; position: relative; }
.thumbnail.is-active { box-shadow: 0 0 0 .1rem #fff, 0 0 0 .3rem rgb(var(--fg)); }
.product__info-container > * + * { margin: 1.5rem 0; }
.product__text { margin: 0; color: rgba(var(--fg), .75); }
.product__title h1 { margin: 0; }
.product__title { margin-top: .5rem !important; }
.price--large { font-size: 1.6rem; letter-spacing: .13rem; }
@media (min-width: 750px) { .price--large { font-size: 1.8rem; } }
.price__badge-sale { margin-left: .5rem; font-size: 1.1rem; vertical-align: middle; }
.installments { margin: 0; color: rgb(var(--fg)); font-size: 1.2rem; }
.shop-word { color: var(--shop); font-weight: 700; }
.info-dot { display: inline-flex; width: 1.3rem; height: 1.3rem; border: 1px solid currentColor; border-radius: 50%; align-items: center; justify-content: center; font-size: .9rem; }
.form__label { display: block; margin-bottom: .6rem; font-size: 1.3rem; color: rgba(var(--fg), .75); }
.product-form__input { border: 0; padding: 0; margin: 0 0 1.2rem; }
.product-form__input--pill legend { padding: 0; }
.product-form__input--pill input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.product-form__input--pill label {
  display: inline-block; margin: .7rem .5rem .2rem 0; padding: 1rem 2rem; border: 1px solid rgba(var(--fg), .55); border-radius: 4rem;
  color: rgb(var(--fg)); font-size: 1.4rem; letter-spacing: .1rem; line-height: 1; cursor: pointer; transition: border-color .1s;
}
.product-form__input--pill label:hover { border-color: rgb(var(--fg)); }
.product-form__input--pill input:checked + label { background: rgb(var(--fg)); color: #fff; }
.quantity { position: relative; display: flex; width: 14rem; min-height: 4.5rem; }
.quantity::after { content: ''; position: absolute; inset: 1px; pointer-events: none; box-shadow: 0 0 0 1px rgba(var(--fg), .55); }
.quantity__input { width: 100%; border: 0; text-align: center; font: inherit; font-size: 1.6rem; color: rgb(var(--fg)); padding: 0 .5rem; -moz-appearance: textfield; background: transparent; }
.quantity__input::-webkit-inner-spin-button, .quantity__input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.quantity__button { width: 4.5rem; flex-shrink: 0; border: 0; background: transparent; cursor: pointer; display: flex; align-items: center; justify-content: center; color: rgb(var(--fg)); }
.quantity__button .icon { width: 1rem; height: 1rem; }
.product-form__buttons { max-width: 44rem; }
.product-form__submit { margin-bottom: 1rem; }
.shop-pay-button { display: flex; align-items: center; justify-content: center; gap: .5rem; height: 4.4rem; border: 0; cursor: pointer; background: var(--shop); color: #fff; font-size: 1.5rem; letter-spacing: .05rem; }
.shop-pay-button b { font-size: 1.9rem; }
.shop-pay-button:hover { background: #4720d4; }
.more-payment-options { display: block; text-align: center; margin-top: 1rem; font-size: 1.1rem; }
.product__description p { margin: 0 0 1.4rem; }
.share-button__button { display: flex; align-items: center; gap: 1rem; background: none; border: 0; padding: 0; cursor: pointer; color: rgb(var(--fg)); font-size: 1.2rem; letter-spacing: .1rem; }
.share-button__button .icon { width: 1.3rem; height: 1.2rem; }
.share-button__message { font-size: 1.2rem; }
.related-products { padding-top: 3.6rem; padding-bottom: 3.6rem; }
.related-products__heading { margin: 0 0 3rem; }

/* ===== cart page ===== */
.cart-page { padding: 3.6rem 0 2.9rem; }
.cart__warnings { text-align: center; padding: 3.5rem 0 0; }
.cart__empty-text { margin: 0 0 2.9rem; }
.cart__warnings .button { width: 21rem; padding: 0; }
.cart__login-title { margin: 5.6rem 0 .5rem; font-size: 2rem; }
@media (min-width: 750px) { .cart__login-title { font-size: 2.4rem; } }
.cart__login-paragraph { margin: 0; }
.title-wrapper-with-link { display: flex; justify-content: space-between; align-items: flex-end; gap: 1rem; margin: 0 0 3rem; }
.title-wrapper-with-link .title { margin: 0; }
.title-wrapper-with-link a { font-size: 1.4rem; }
.cart-items { width: 100%; border-collapse: collapse; }
.cart-items th { text-align: left; padding-bottom: 1.8rem; font-weight: 400; color: rgba(var(--fg), .75); border-bottom: 1px solid rgba(var(--fg), .08); }
.cart-items th.right, .cart-items td.right { text-align: right; }
.cart-items td { padding-top: 4rem; vertical-align: top; }
.cart-item__media { width: 10rem; }
@media (min-width: 750px) { .cart-item__media { width: 15rem; } }
.cart-item__image { position: relative; display: block; width: 10rem; height: 10rem; }
.cart-item__details { padding-left: 2rem; }
@media (min-width: 750px) { .cart-item__details { width: 35rem; padding-left: 4rem; } }
.cart-item__name { color: rgb(var(--fg)); text-decoration: none; font-size: 1.6rem; display: block; margin-bottom: .6rem; }
.cart-item__name:hover { text-decoration: underline; }
.cart-item__details .product-option { font-size: 1.4rem; margin: 0; }
.cart-item__quantity-wrapper { display: flex; align-items: center; gap: 1rem; }
.cart-remove-button { width: 4.4rem; height: 4.4rem; display: flex; align-items: center; justify-content: center; background: none; border: 0; cursor: pointer; color: rgb(var(--fg)); }
.cart-remove-button .icon { width: 1.5rem; height: 1.7rem; }
.cart-item__totals { color: rgb(var(--fg)); }
.cart-items .small-hide { display: none; }
@media (min-width: 750px) { .cart-items .small-hide { display: table-cell; } .cart-items .medium-hide { display: none; } }
@media (max-width: 749px) {
  .cart-items .cart-item__quantity-cell { display: block; padding-top: 1.5rem; }
  .cart-items tr.cart-item { display: grid; grid-template-columns: 10rem 1fr auto; grid-template-areas: 'media details totals' 'media quantity quantity'; column-gap: 1.5rem; padding-top: 4rem; }
  .cart-items tr.cart-item > td { padding: 0; }
  .cart-item__media { grid-area: media; } .cart-item__details { grid-area: details; padding-left: 0; } .cart-item__totals-m { grid-area: totals; } .cart-item__quantity-cell { grid-area: quantity; }
}
.cart__footer { display: flex; justify-content: flex-end; padding: 4rem 0 0; margin-top: 4rem; border-top: 1px solid rgba(var(--fg), .08); }
.cart__blocks { width: 100%; text-align: center; }
@media (min-width: 750px) { .cart__blocks { width: 35rem; text-align: right; } }
.totals { display: flex; justify-content: center; align-items: baseline; gap: 2rem; }
@media (min-width: 750px) { .totals { justify-content: flex-end; } }
.totals__total { margin: 0; font-size: 1.6rem; }
.totals__total-value { margin: 0; font-size: 1.8rem; color: rgb(var(--fg)); letter-spacing: .1rem; }
.tax-note { display: block; margin: 2.2rem 0 1.6rem; }
.cart__checkout-button { width: 100%; max-width: 36rem; }
.checkout-message { margin-top: 1rem; color: rgb(var(--fg)); }

/* ===== content pages ===== */
.main-page { padding: 2.7rem 1.5rem; }
@media (min-width: 750px) { .main-page { padding-top: 3.6rem; padding-bottom: 3.6rem; } }
@media (min-width: 990px) { .main-page { padding-left: 0; padding-right: 0; } }
.main-page-title { margin: 0 0 3rem; }
@media (min-width: 750px) { .main-page-title { margin-bottom: 4rem; } }
.rte h2 { margin: 0 0 1.6rem; }
.rte p { margin: 0 0 1.6rem; }
.rte strong { font-weight: 700; }
.rte a { color: rgb(var(--fg)); text-underline-offset: .3rem; }
.contact { margin-top: 3rem; }
.contact .field { margin-bottom: 2rem; }
@media (min-width: 750px) { .contact__fields { display: grid; grid-template-columns: 1fr 1fr; column-gap: 2rem; } }
.contact .text-area { min-height: 10rem; padding-top: 2.2rem; }
.contact__button { margin-top: 3rem; }
.contact__button .button { min-width: 14rem; }
.contact__consent { display: flex; align-items: flex-start; gap: 1rem; margin: 0 0 1.6rem; font-size: 1.4rem; line-height: 1.6; cursor: pointer; }
.contact__hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.contact__consent input { flex: none; width: 1.8rem; height: 1.8rem; margin: .3rem 0 0; accent-color: rgb(var(--fg)); cursor: pointer; }
.accordion { border-top: 1px solid rgba(var(--fg), .08); }
.accordion:last-child { border-bottom: 1px solid rgba(var(--fg), .08); }
.accordion summary { display: flex; align-items: center; justify-content: space-between; padding: 1.5rem 0; cursor: pointer; list-style: none; }
.accordion summary::-webkit-details-marker { display: none; }
.accordion__title { margin: 0; font-weight: 500; }
.accordion summary .icon-caret { width: 1rem; height: .6rem; flex-shrink: 0; margin-left: 1rem; transition: transform .2s; }
.accordion[open] summary .icon-caret { transform: rotate(180deg); }
.accordion__content { padding: 0 0 1.5rem; }
.accordion__content p { margin: 0; }
.template-search__header { padding: 3.6rem 1.5rem 0; max-width: 60rem; }
@media (min-width: 750px) { .template-search__header { padding-left: 5rem; padding-right: 5rem; } }
.template-search__header h1 { margin: 0 0 3rem; }
.search-status { margin: 2rem 0; }
.template-search__results { padding-bottom: 3.6rem; }
.template-404 { padding: 8rem 1.5rem; }
.template-404 .title { margin: 1rem 0 3rem; }

/* ===== sign-in page ===== */
.auth { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif; letter-spacing: 0; color: #000; display: flex; flex-direction: column; min-height: 100vh; line-height: 1.4; font-size: 1.4rem; }
.auth__header { text-align: center; }
.auth__header-inner { padding: 3.8rem 1.6rem 0; }
.auth__store-heading { font-family: inherit; font-size: 2rem; font-weight: 600; letter-spacing: 0; margin: 0; line-height: 1.4; }
.auth__store { font-size: 2rem; font-weight: 600; color: #000; text-decoration: none; }
.auth__main { flex: 1; display: flex; }
.auth__main-inner { flex: 1; display: flex; align-items: center; justify-content: center; padding: 4rem 1.6rem; }
.auth__card { width: 100%; max-width: 38rem; }
@media (max-width: 749px) { .auth__main-inner { padding: 2rem 2.4rem 4rem; } }
.auth__title { font-family: inherit; font-size: 2.2rem; font-weight: 600; letter-spacing: 0; margin: 0 0 .4rem; color: #000; }
.auth__sub { margin: 0 0 2rem; color: #0000008f; font-size: 1.3rem; }
.auth__shop { width: 100%; height: 5rem; border: 0; border-radius: .8rem; background: #5433eb; color: #fff; font-size: 1.6rem; font-weight: 600; cursor: pointer; letter-spacing: -.02rem; }
.auth__shop b { font-weight: 800; }
.auth__shop:hover { background: #4524db; }
.auth__or { display: flex; align-items: center; gap: 1.6rem; margin: 1.4rem 0; color: #707070; font-size: 1.3rem; }
.auth__or::before, .auth__or::after { content: ''; flex: 1; height: 1px; background: #dedede; }
.auth__field { position: relative; }
.auth__field input { width: 100%; height: 4.8rem; border: 1px solid #dedede; border-radius: .8rem; padding: 0 4.8rem 0 1.1rem; font: inherit; font-size: 1.4rem; color: #000; outline: none; }
.auth__field input:focus { border-color: #005bd1; box-shadow: 0 0 0 1px #005bd1; }
.auth__field button { position: absolute; right: .4rem; top: .4rem; width: 4rem; height: 4rem; border: 0; background: none; cursor: pointer; display: flex; align-items: center; justify-content: center; color: #000; }
.auth__field .icon { width: 1.5rem; height: 1.1rem; }
.auth__error { color: #dd1d1d; font-size: 1.3rem; margin: .8rem 0 0; }
.auth__back { margin-top: 1.6rem; background: none; border: 0; color: #005bd1; cursor: pointer; font: inherit; padding: 0; }
.auth__footer { text-align: center; }
.auth__footer-inner { padding: 0 1.6rem 2.2rem; }
.auth__footer a { color: #005bd1; text-decoration: none; font-size: 1.4rem; }
.auth__footer a:hover { text-decoration: underline; }

/* ===== motion ===== */
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes slideIn { from { transform: translateY(1rem); opacity: .01; } to { transform: none; opacity: 1; } }
@keyframes drawerIn { from { transform: translateX(100%); } to { transform: none; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; } }
:focus-visible { outline: .2rem solid rgba(var(--fg), .5); outline-offset: .3rem; }

/* ===== live-store content ===== */
.shop-pay-pill { display: inline-block; margin-left: .4rem; padding: .1rem .4rem; border-radius: .3rem; background: #fff; color: var(--shop); font-size: 1rem; font-weight: 700; letter-spacing: 0; }
.product-form__input--pill input.disabled + label { color: rgba(var(--fg), .4); text-decoration: line-through; }
.product__description img, .rte img { max-width: 100%; height: auto; }
.rte ul, .rte ol { padding-left: 2rem; }
.page-order-tracking #YQNum { height: 4.5rem; width: min(30rem, 100%); padding: 0 1.5rem; border: 1px solid rgba(var(--fg), .55); font: inherit; color: rgb(var(--fg)); }
.page-order-tracking #YQTrack { height: 4.5rem; padding: 0 3rem; border: 0; background: rgb(var(--button)); color: #fff; font: inherit; letter-spacing: .1rem; cursor: pointer; margin-top: 1rem; }
.footer .footer-mail { color: inherit; text-decoration: none; }
/* search modal and its dimmed overlay span the whole window width, as on the original */
.section-header > .header { position: static; }
/* the open search field shows its label raised, as the original does while it has focus */
.header__search[open] .field__label { font-size: 1rem; top: calc(.3rem + 1px); letter-spacing: .04rem; }
.header__search[open] .search__input { padding: 2.2rem 1.5rem .8rem 2rem; }
.footer .footer-block__details-content p { margin: 0; }
.footer-block__heading strong { font-weight: 700; }
@media (max-width: 749px) {
  .footer__content-top { padding-bottom: 3rem; }
  .footer__localization { padding-top: 0; }
}
.pagination-wrapper { display: block; }
.pagination__list > li { display: block; }
.link, .underlined-link { color: rgba(18, 18, 18, .85); }
.skip-to-content-link { background: rgb(var(--button)); color: #fff; font-size: 1.5rem; }
