/* css/fonts.27f36bb1ac.css */

@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-italic-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-italic-latin-ext.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;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-italic-latin.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;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-italic-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-italic-latin-ext.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;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-italic-latin.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;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-italic-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-italic-latin-ext.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;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-italic-latin.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;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-italic-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-italic-latin-ext.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;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-italic-latin.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;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-normal-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-normal-latin-ext.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;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-normal-latin.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;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-normal-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-normal-latin-ext.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;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-normal-latin.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;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-normal-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-normal-latin-ext.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;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-normal-latin.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;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-normal-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-normal-latin-ext.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;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/wp-content/themes/thebox/assets/dist/font/playfair-normal-latin.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;
}

/* css/main.718626e248.css */

:root {
  --color-brand:      #DC3B63;
  --color-brand-rgb:  220, 59, 99;
  --color-bg:         #ffffff;
  --color-bg-footer:  #FAF7F4;
  --color-text:       #1A1A1A;
  --color-text-rgb:   26, 26, 26;
  --color-black:      #000000;
  --color-muted:      #767676;
  --color-border:     #E5E5E5;
  --color-border-warm: #F0EBE8;
  --color-star:       #FFCC00;
  --color-badge-top:  #F5A623;
  --color-badge-new:  #3BBFAD;

  --color-bg-brand-hover: #fdf0f4;
  --color-bg-hover:       #f5f5f5;
  --color-bg-warm:        #FFF9F3;
  --color-beige:          #F0E3D7;

  --font-main:   'Pragmatica', sans-serif;
  --font-italic: 'Playfair Display', Georgia, serif;
  --fw-action:   500;

  --radius-card: 14px;
  --radius-btn:  40px;

  --transition: 0.3s ease;
  --container:        1760px;
  --container-narrow: 1314px;
  --container-text:    868px;
  --header-container: 1820px;
  --header-h:         60px;
  --gutter:           16px;
  --icon-glyph:       22px;

  --fs-body: 15px;
  --lh-body: 20px;
  --fs-page-h1: 40px;
  --lh-page-h1: 42px;
  --fs-section-h2: 30px;
  --lh-section-h2: 33px;
  --fs-card-h2: 18px;
  --lh-card-h2: 24px;
  --fs-case-accent: 16px;
  --lh-case-accent: 22px;
  --fs-benefit-title: 16px;
  --lh-benefit-title: 22px;
  --fs-footer-link: 15px;
  --lh-footer-link: 20px;
  --fs-action-link: 15px;
  --lh-action-link: 20px;
  --underline-top: calc(100% + 2px - 0.165em);
  --fs-price: 14px;
  --fs-price-lg: 15px;
  --fs-price-old: 12px;
  --fs-filter-control: 13px;
  --fs-breadcrumbs: 13px;
  --lh-breadcrumbs: 1.231;
  --breadcrumbs-top: 24px;
  --breadcrumbs-title-gap: 50px;
  --inner-hero-h: 220px;
  --inner-hero-bc-top: 16px;
  --case-hero-title-top: clamp(80px, calc(4.4643vw + 34.285504px), 120px);
  --page-h1-bottom: clamp(40px, calc(4.4643vw - 5.714496px), 80px);
  --section-h2-bottom: clamp(24px, calc(2.901786vw - 5.714286px), 50px);
  --rv-dur: 1.05s;
  --rv-step: 150ms;
  --rv-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
  --rv-ease-pop: cubic-bezier(0.34, 1.3, 0.64, 1);
}

::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: var(--color-bg-footer); }
::-webkit-scrollbar-thumb { background: var(--color-brand); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #b82d55; }
* { scrollbar-width: thin; scrollbar-color: var(--color-brand) var(--color-bg-footer); }

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; overflow-x: clip; overflow-y: scroll; scrollbar-gutter: stable; }
body {
  font-family: var(--font-main);
  font-size: var(--fs-body);
  line-height: var(--lh-body);
  color: var(--color-text);
  background: var(--color-bg);
  overflow-x: clip;
}
img { display: block; max-width: 100%; }
a { text-decoration: none; color: inherit; }
button { cursor: pointer; border: none; background: none; font-family: inherit; color: inherit; }
a, button { -webkit-tap-highlight-color: transparent; }
a, button, input, select, textarea, label, summary, [role="button"], [role="tab"] { touch-action: manipulation; }
ul { list-style: none; }
h1 {
  font-family: var(--font-italic);
  font-weight: 600;
  font-style: normal;
  font-size: var(--fs-page-h1);
  line-height: var(--lh-page-h1);
  letter-spacing: -0.02em;
}
h2 {
  font-family: var(--font-italic);
  font-weight: 600;
  font-style: normal;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: -0.02em;
}
input, textarea, select { font-family: inherit; }

@font-face {
  font-family: 'Pragmatica';
  src: url('/wp-content/themes/thebox/assets/dist/font/pragmatica-book.woff2') format('woff2'),
       url('/wp-content/themes/thebox/assets/dist/font/pragmatica-book.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

.container {
  width: 100%;
  max-width: calc(var(--container) + 2 * var(--gutter));
  margin: 0 auto;
  padding: 0 var(--gutter);
}

.container--narrow { --container: var(--container-narrow); }
.container--text   { --container: var(--container-text); }
.container--full   { --container: var(--header-container); }

.container--narrow,
.container--text {
  width: calc(100% - 2 * var(--gutter));
  max-width: var(--container);
  padding: 0;
}

.page-title,
.inner-hero__title,
.case-hero__title {
  font-family: var(--font-italic);
  font-weight: 600;
  font-style: normal;
  font-size: var(--fs-page-h1);
  line-height: var(--lh-page-h1);
  letter-spacing: -0.02em;
  text-align: center;
}

.page-title {
  color: var(--color-text);
  margin: 0 0 var(--page-h1-bottom);
}

.page-title--with-subtitle {
  margin-bottom: 16px;
}

.page-heading--plain .page-heading__body,
.page-heading--with-subtitle .page-heading__body {
  margin-top: var(--breadcrumbs-title-gap);
}

.page-end { padding-bottom: 40px; }
@media (min-width: 1366px) { .page-end { padding-bottom: 80px; } }

.liked-empty,
.cart-empty {
  display: flex; flex-direction: column; align-items: center; text-align: center;
  padding: clamp(56px, calc(2.4654vw + 46.754527px), 72px) 20px 40px;
}
.liked-empty__icon,
.cart-empty__icon { display: block; width: 36px; margin-bottom: 16px; }
.liked-empty__icon svg,
.cart-empty__icon svg { display: block; width: 100%; height: auto; }
.liked-empty__text,
.cart-empty__text {
  font-family: var(--font-italic); font-style: italic;
  font-size: 20px; line-height: 1.4; color: var(--color-text); margin: 0;
}
.liked-empty__accent,
.cart-empty__accent { color: var(--color-brand); }
@media (min-width: 1024px) {
  .liked-empty,
  .cart-empty { padding: 72px 20px 40px; }
  .liked-empty__icon,
  .cart-empty__icon { width: 40px; }
  .liked-empty__text,
  .cart-empty__text { font-size: 24px; }
}
@media (min-width: 1366px) {
  .liked-empty,
  .cart-empty { padding-bottom: 80px; }
}

.visually-hidden {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

.breadcrumbs { padding: var(--breadcrumbs-top) 0 0; text-align: center; }
.breadcrumbs__list {
  display: flex; align-items: center; justify-content: center;
  gap: 0; flex-wrap: wrap;
  font-family: var(--font-main); font-weight: 400;
  font-size: var(--fs-breadcrumbs); line-height: var(--lh-breadcrumbs); letter-spacing: -0.02em;
}
.breadcrumbs__item { display: flex; align-items: center; color: var(--color-text); }
.breadcrumbs__item + .breadcrumbs__item::before { content: '/'; margin: 0 8px; color: var(--color-text); }
.breadcrumbs__link { color: var(--color-text); transition: color var(--transition); }
.breadcrumbs__link:hover { color: var(--color-brand); }
.breadcrumbs__current { color: var(--color-text); }



.case-card__link, .case-cta__link, .seo-block__toggle,
.cart-item__add-btn, .cart-group__duplicate,
.breadcrumbs__current,
.checkout-delivery__tab-btn.is-active,
.liked-card__add, .search-card__add, .product-inside__card-add, .product__link-italic, .contacts-card__tg, .notfound__home,
.product-tabs__btn.is-active, .product-review__more, .product__field-btn,
.ctor-box__caption-text, .ctor-extra__tab.is-active {
  position: relative;
  width: fit-content;
}
.case-card__link::after, .case-cta__link::after, .seo-block__toggle::after,
.cart-item__add-btn::after, .cart-group__duplicate::after,
.breadcrumbs__current::after,
.checkout-delivery__tab-btn.is-active::after,
.liked-card__add::after, .search-card__add::after, .product-inside__card-add::after, .product__link-italic::after, .contacts-card__tg::after, .notfound__home::after,
.product-tabs__btn.is-active::after, .product-review__more::after, .product__field-btn::after,
.ctor-box__caption-text::after, .ctor-extra__tab.is-active::after {
  content: ''; position: absolute; left: 0; right: 0;
  top: var(--underline-top); height: 0.55em;
  background: url('/wp-content/themes/thebox/assets/dist/ico/line_blog_brand_wave.svg') left center / 0.385em 0.55em round no-repeat;
  pointer-events: none;
}
.case-card__link.case-card__link, .case-cta__link.case-cta__link, .seo-block__toggle.seo-block__toggle,
.cart-item__add-btn.cart-item__add-btn, .cart-group__duplicate.cart-group__duplicate,
.liked-card__add.liked-card__add, .search-card__add.search-card__add, .product-inside__card-add.product-inside__card-add,
.product__link-italic.product__link-italic, .contacts-card__tg.contacts-card__tg, .notfound__home.notfound__home,
.product-review__more.product-review__more, .product__field-btn.product__field-btn {
  padding-left: 0.25em; margin-left: -0.25em;
}
.case-card__link.case-card__link::after, .case-cta__link.case-cta__link::after, .seo-block__toggle.seo-block__toggle::after,
.cart-item__add-btn.cart-item__add-btn::after, .cart-group__duplicate.cart-group__duplicate::after,
.liked-card__add.liked-card__add::after, .search-card__add.search-card__add::after, .product-inside__card-add.product-inside__card-add::after,
.product__link-italic.product__link-italic::after, .contacts-card__tg.contacts-card__tg::after, .notfound__home.notfound__home::after,
.product-review__more.product-review__more::after, .product__field-btn.product__field-btn::after {
  left: 0.25em;

}
@media (min-width: 1280px) {
  .breadcrumbs__current::after {
    top: calc(var(--underline-top) - 2px);
  }
}

.scroll-indicator {
  position: fixed;
  top: 0; left: 0;
  height: 3px;
  width: 0%;
  background: var(--color-brand);
  z-index: 9999;
  transition: width 0.1s linear;
}


@media (min-width: 640px) {
  :root { --inner-hero-h: 260px; }
}

@media (min-width: 481px) {
  :root { --fs-case-accent: 17px; }
}

@media (min-width: 768px) {
  :root {
    --breadcrumbs-title-gap: 40px;
    --gutter: 30px;
    --inner-hero-h: 280px;
    --fs-case-accent: 18px;
  }
}

@media (min-width: 1024px) {
  :root { --breadcrumbs-title-gap: 60px; --inner-hero-h: clamp(280px, calc(52.5862vw - 258.483px), 341px);
    --inner-hero-bc-top: 24px; }
  h2 { font-size: 22px; line-height: 28px; }
}

@media (min-width: 1025px) {
  :root { --header-h: 80px; }
}

@media (min-width: 1140px) {
  :root {
    --fs-action-link: 16px;
    --fs-footer-link: 16px;
    --lh-footer-link: 22px;
  }
}

@media (min-width: 1200px) {
  :root {
    --fs-page-h1: 44px;
    --lh-page-h1: 46px;    --fs-section-h2: 32px;
    --lh-section-h2: 35px;
    --fs-case-accent: 19px;
    --lh-case-accent: 23px;
    --fs-footer-link: 17px;
    --lh-footer-link: 23px;
    --fs-price: 15px;
  }
}

@media (min-width: 1280px) {
  :root {
    --fs-page-h1: 46px;
    --lh-page-h1: 47px;    --fs-section-h2: 33px;
    --lh-section-h2: 36px;
    --fs-breadcrumbs: 17px;
    --fs-card-h2: 22px;
    --lh-card-h2: 28px;
    --lh-case-accent: 24px;
    --fs-price: 16px;
    --fs-price-lg: 16px;
  }
}

@media (min-width: 1314px) {
  :root {
    --lh-page-h1: 48px;
    --breadcrumbs-title-gap: 80px;
    --fs-body: 17px;
    --lh-body: 24px;
    --fs-footer-link: 18px;
    --lh-footer-link: 24px;
  }
}

@media (min-width: 1366px) {
  :root {
    --fs-page-h1: 48px;
    --lh-page-h1: 49px;    --fs-section-h2: 34px;
    --lh-section-h2: 37px;
    --fs-case-accent: 20px;
    --fs-filter-control: 14px;
  }
}

@media (min-width: 1440px) {
  :root {
    --fs-page-h1: 49px;
    --lh-page-h1: 50px;    --fs-section-h2: 35px;
    --lh-section-h2: 39px;
    --lh-case-accent: 25px;
    --fs-price: 17px;
    --fs-price-lg: 17px;
    --fs-price-old: 13px;
    --gutter: clamp(35px, calc(3.125vw - 10px), 50px);
  }
}

@media (min-width: 1514px) {
  :root {
    --fs-page-h1: 51px;
    --lh-page-h1: 52px;
    --fs-case-accent: 21px;
    --lh-case-accent: 26px;  }
}

@media (min-width: 1560px) {
  :root {
    --fs-page-h1: 52px;
    --lh-page-h1: 53px;    --fs-section-h2: 36px;
    --lh-section-h2: 40px;
    --fs-price: 18px;
    --fs-price-lg: 18px;
  }
}

@media (min-width: 1600px) {
  :root {
    --fs-page-h1: 54px;
    --lh-page-h1: 55px;
    --fs-section-h2: 37px;
    --lh-section-h2: 41px;
    --fs-case-accent: 22px;
    --lh-case-accent: 28px;  }
}
@media (min-width: 1025px) {
  :root { --fs-benefit-title: var(--fs-case-accent); --lh-benefit-title: var(--lh-case-accent); }
}

@media (min-width: 1680px) {
  :root {
    --fs-page-h1: 56px;
    --lh-page-h1: 56px;    --fs-section-h2: 38px;
    --lh-section-h2: 42px;
    --fs-filter-control: 15px;
    --fs-price: 19px;
    --fs-price-lg: 19px;
  }
}

@media (min-width: 1760px) {
  :root {
    --fs-page-h1: 58px;
    --lh-page-h1: 58px;    --fs-section-h2: 39px;
    --lh-section-h2: 43px;
  }
}

@media (min-width: 1840px) {
  :root {
    --fs-page-h1: 60px;
    --lh-page-h1: 60px;    --fs-section-h2: 40px;
    --lh-section-h2: 44px;
    --fs-filter-control: 16px;
    --fs-price: 20px;
    --fs-price-lg: 20px;
    --fs-price-old: 14px;
  }
}

@media (min-width: 1920px) {
  .container:not(.container--narrow) { max-width: var(--container); padding: 0; }
}


.cherry-divider {
  display: flex; align-items: center; justify-content: center;
  gap: 20px; padding: 40px 0;
}
.cherry-divider__line { display: block; width: 64px; height: 10px; flex-shrink: 0; }
.cherry-divider__cherry { display: block; width: 23.739px; height: 32px; flex-shrink: 0; object-fit: contain; }

@media (min-width: 768px) {
  .cherry-divider { gap: 24px; }
}
@media (min-width: 1024px) {
  .cherry-divider { padding: clamp(40px, calc(4.4643vw - 5.714496px), 80px) 0; gap: 28px; }
  .cherry-divider__cherry { width: clamp(23.739px, calc(0.6624vw + 16.955972px), 29.674px); height: clamp(32px, calc(0.8929vw + 22.856512px), 40px); }
}
@media (min-width: 1314px) {
  .cherry-divider { gap: 30px; }
}

.product__dot,
.product-slider__dot,
.article-related__dot,
.case-slider__dot,
.case-recommended__dot,
.home-insta__dot,
.home-steps__dot,
.lightbox__dot {
  width: 8px;
  height: 8px;
  border: none;
  padding: 0;
  border-radius: 50%;
  background: var(--color-brand);
  opacity: 0.4;
  cursor: pointer;
  transition: background var(--transition), opacity var(--transition), transform var(--transition);
}
.product__dot.is-active,
.product-slider__dot.is-active,
.article-related__dot--active,
.case-slider__dot.is-active,
.case-recommended__dot.is-active,
.home-insta__dot.is-active,
.home-steps__dot.is-active,
.lightbox__dot.is-active {
  opacity: 1;
}
.article-related__dot--active { transform: scale(1.3); }


.product-card__badge,
.market-card__badge { display: block; width: 31px; height: 30px; }

.product-card__fav,
.market-card__fav { width: 18px; height: 18px; }
.product-card__fav img.fav-icon,
.market-card__fav img.fav-icon { width: 18px; height: 18px; display: block; position: relative; z-index: 1; }
.product-card__fav::before,
.market-card__fav::before {
  content: ''; position: absolute;
  width: 18px; height: 18px; top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  background: var(--color-brand);
  clip-path: path('M9 4.09C5.12 -0.68 1.02 2.71 0.97 6.36C0.97 11.79 7.47 16.25 9 16.25C10.54 16.25 17.04 11.79 17.04 6.36C16.98 2.71 12.88 -0.68 9 4.09Z');
  opacity: 0; transition: opacity var(--transition); z-index: 0;
}
.product-card__fav.is-liked::before,
.market-card__fav.is-liked::before { opacity: 1; }
@media (hover: hover) {
  .product-card__fav:hover::before,
  .market-card__fav:hover::before { opacity: 1; }
}

.market-card__fav--lg { width: 26px; height: 26px; }
.market-card__fav--lg img.fav-icon { width: 26px; height: 26px; }
.market-card__fav--lg::before {
  width: 28px; height: 28px;
  transform: translate(-50%, -50%) scale(0.9286);
  clip-path: path('M14.0019 6.35945C7.96251 -1.05083 1.58586 4.21449 1.50195 9.89041C1.50195 18.3403 11.6121 25.2758 14.0019 25.2758C16.3918 25.2758 26.502 18.3403 26.502 9.89041C26.418 4.21449 20.0414 -1.05083 14.0019 6.35945Z');
}

.qty .qty__btn,
.cart-item__qty-btn,
.product__qty-btn { transition: background var(--transition), color var(--transition), border-color var(--transition); }
@media (hover: hover) {
  .qty .qty__btn:hover,
  .cart-item__qty-btn:hover,
  .product__qty-btn:hover { background: var(--color-brand); color: var(--color-bg); border-color: transparent; }
}
.qty .qty__btn:active,
.cart-item__qty-btn:active,
.product__qty-btn:active { background: var(--color-brand); color: var(--color-bg); border-color: transparent; }
.cart-item__qty-btn:disabled:active,
.product__qty-btn:disabled:active { background: var(--color-bg); color: var(--color-text); }

.ctor-modal__close,
.ctor-picked__close,
.product-lightbox__close,
.postcard-modal__close,
.form-modal__close,
.filter-panel__close,
.lightbox__close { transition: color var(--transition), border-color var(--transition); }
@media (hover: hover) {
  .ctor-modal__close:hover,
  .ctor-picked__close:hover,
  .product-lightbox__close:hover,
  .postcard-modal__close:hover,
  .form-modal__close:hover,
  .filter-panel__close:hover,
  .lightbox__close:hover { color: var(--color-brand); border-color: var(--color-brand); }
}
.ctor-modal__close:active,
.ctor-picked__close:active,
.product-lightbox__close:active,
.postcard-modal__close:active,
.form-modal__close:active,
.filter-panel__close:active,
.lightbox__close:active { color: var(--color-brand); border-color: var(--color-brand); }

.product-card__buy-wrap .qty,
.market-card .qty { width: 90px; height: 34px; padding: 0 4px; }
.product-card__buy-wrap .qty__btn,
.market-card .qty__btn { width: 26px; height: 26px; font-size: 16px; }
.product-card__buy-wrap .qty__value,
.market-card .qty__value { font-size: var(--fs-filter-control); }

@media (min-width: 1280px) {
  .product-card__badge,
  .market-card__badge { width: clamp(36px, 1.875vw + 12px, 48px); height: clamp(36px, 1.5625vw + 16px, 46px); }

  .product-card__fav,
  .market-card__fav { width: 26px; height: 26px; }
  .product-card__fav img.fav-icon,
  .market-card__fav img.fav-icon { width: 26px; height: 26px; }
  .product-card__fav::before,
  .market-card__fav::before {
    width: 28px; height: 28px;
    transform: translate(-50%, -50%) scale(0.9286);
    clip-path: path('M14.0019 6.35945C7.96251 -1.05083 1.58586 4.21449 1.50195 9.89041C1.50195 18.3403 11.6121 25.2758 14.0019 25.2758C16.3918 25.2758 26.502 18.3403 26.502 9.89041C26.418 4.21449 20.0414 -1.05083 14.0019 6.35945Z');
  }

  .product-card__buy-wrap .qty,
  .market-card .qty { width: clamp(90px, calc(3.929vw + 39.7px), 112px); height: clamp(34px, calc(1.071vw + 20.29px), 40px); padding: 0 6px; }
  .product-card__buy-wrap .qty__btn,
  .market-card .qty__btn { width: clamp(26px, calc(0.714vw + 16.86px), 30px); height: clamp(26px, calc(0.714vw + 16.86px), 30px); font-size: clamp(16px, calc(0.357vw + 11.43px), 18px); }
}


.blog-hero,
.article-hero,
.dp-hero,
.policy-hero {
  position: relative;
  min-height: var(--inner-hero-h);
  display: flex;
  align-items: stretch;
}

.blog-hero,
.dp-hero,
.policy-hero {
  background-color: var(--color-brand);
  overflow: hidden;
}
.blog-hero::before,
.dp-hero::before,
.policy-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: url('/wp-content/themes/thebox/assets/dist/image/blog_bg_mob.webp') center / cover no-repeat;
  opacity: 0.8;
  pointer-events: none;
}
@media (min-width: 640px) {
  .blog-hero::before,
  .dp-hero::before,
  .policy-hero::before {
    background-image: url('/wp-content/themes/thebox/assets/dist/image/blog_bg.webp');
  }
}

.breadcrumbs--hero {
  position: absolute;
  top: var(--inner-hero-bc-top);
  left: 0;
  right: 0;
  padding-top: 0;
}
.breadcrumbs--hero .breadcrumbs__item,
.breadcrumbs--hero .breadcrumbs__item + .breadcrumbs__item::before,
.breadcrumbs--hero .breadcrumbs__link { color: rgba(255, 255, 255, .85); }
.breadcrumbs--hero .breadcrumbs__link:hover { color: #fff; }
.breadcrumbs--hero .breadcrumbs__current { color: #fff; }

.blog-hero__inner,
.article-hero__inner,
.dp-hero__inner,
.policy-hero__inner,
.cases-hero__inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: calc(var(--container) + 2 * var(--gutter));
  margin: 0 auto;
  padding: 0 var(--gutter);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

@media (min-width: 1920px) {
  .blog-hero__inner,
  .article-hero__inner,
  .dp-hero__inner,
  .policy-hero__inner,
  .cases-hero__inner {
    max-width: var(--container);
    padding: 0;
  }
}

.inner-hero__title {
  color: #fff;
  max-width: 100%;
  overflow-wrap: break-word;
  margin: 0;
}

.inner-hero__desc,
.page-subtitle {
  font-family: var(--font-main);
  font-weight: 400;
  font-style: normal;
  font-size: var(--fs-body);
  line-height: var(--lh-body);
  letter-spacing: -0.02em;
  color: var(--color-text);
  text-align: center;
  max-width: 680px;
  margin: 0 auto;
}

.prose p,
.article-content p,
.policy-content p,
.seo-block__text p,
.dp-accordion__body p,
.product-faq__a p {
  font-size: 15px;
  line-height: 20px;
  letter-spacing: -0.02em;
  margin: 0 0 16px;
}

.prose h2,
.article-content h2,
.policy-content h2 {
  font-family: var(--font-italic);
  font-style: normal;
  font-weight: 700;
  font-size: var(--fs-section-h2);
  line-height: var(--lh-section-h2);
  letter-spacing: -0.02em;
  text-align: center;
  color: var(--color-text);
  margin: 24px 0 16px;
}

@media (min-width: 1314px) {
  .prose p,
  .article-content p,
  .policy-content p,
  .seo-block__text p,
  .dp-accordion__body p,
  .product-faq__a p {
    font-size: 17px;
    line-height: 24px;
    letter-spacing: -0.34px;
  }
}

.inner-hero__desc--sm {
  color: var(--color-bg-warm);
}

html.js-reveal [data-reveal] { opacity: 0; }
html.js-reveal [data-reveal].is-in {
  opacity: 1;
  animation: rv-fade-up var(--rv-dur) var(--rv-ease) both;
  animation-delay: calc(var(--rv-i, 0) * var(--rv-step));
}
html.js-reveal [data-reveal="pop"].is-in { animation-name: rv-pop; animation-timing-function: var(--rv-ease-pop); }
html.js-reveal [data-reveal="tilt"].is-in { animation-name: rv-pop; animation-timing-function: var(--rv-ease-pop); }
html.js-reveal [data-reveal="left"].is-in  { animation-name: rv-left; }
html.js-reveal [data-reveal="right"].is-in { animation-name: rv-right; }
html.js-reveal [data-reveal="cherry"].is-in { animation-name: rv-cherry; animation-timing-function: var(--rv-ease-pop); transform-origin: center bottom; }
html.js-reveal [data-reveal].is-done { animation: none; opacity: 1; translate: none; scale: none; rotate: none; }
@keyframes rv-fade-up {
  from { opacity: 0; translate: 0 44px; }
  to   { opacity: 1; translate: none; }
}
@keyframes rv-pop {
  from { opacity: 0; translate: 0 34px; }
  to   { opacity: 1; translate: none; }
}
@keyframes rv-left {
  from { opacity: 0; translate: -64px 0; }
  to   { opacity: 1; translate: none; }
}
@keyframes rv-right {
  from { opacity: 0; translate: 64px 0; }
  to   { opacity: 1; translate: none; }
}
@keyframes rv-cherry {
  from { opacity: 0; scale: 0.5; }
  to   { opacity: 1; scale: none; }
}
@media (prefers-reduced-motion: reduce) {
  html.js-reveal [data-reveal] { opacity: 1; animation: none; }
}

/* css/header.de702834f8.css */

.header .container {
  max-width: calc(var(--header-container) + 2 * var(--gutter));
  padding: 0 var(--gutter);
}

.header {
  position: sticky; top: 0; z-index: 1000;
  background: var(--color-bg);
  border-bottom: 1px solid var(--color-border);
  height: var(--header-h);
}
.header::before {
  content: ''; position: absolute; left: 0; right: 0;
  bottom: 100%; height: 120px;
  background: var(--color-bg); pointer-events: none;
}
.header__inner {
  display: flex; align-items: center;
  height: var(--header-h); position: relative;
  justify-content: space-between;
}

.header__logo { display: flex; align-items: center; flex-shrink: 0; }
.header__logo img,
.header__logo svg { height: 26px; width: auto; }

.header__catalog-wrap,
.header__nav,
.header__right { display: none; }

.header__catalog-wrap { position: relative; flex-shrink: 0; }
.header__catalog-btn {
  display: flex; align-items: center; gap: 7px;
  font-weight: 500; color: var(--color-text);
  padding: 5px 10px 5px 8px; border-radius: 8px;
  transition: color var(--transition); white-space: nowrap;
}
.header__catalog-btn:hover { color: var(--color-brand); }
.header__catalog-btn img { width: 22px; height: 22px; }
.header__catalog-btn .header__catalog-arrow {
  width: 14px; height: 14px; aspect-ratio: 1/1;
  opacity: 0.4; transition: transform var(--transition), opacity var(--transition);
}
.header__catalog-wrap.is-open .header__catalog-arrow { transform: rotate(180deg); opacity: 0.8; }

.header__catalog-dropdown {
  position: absolute; top: calc(100% + 8px); left: 0;
  width: 230px; background: var(--color-bg);
  border: 1px solid var(--color-border); border-radius: 12px;
  box-shadow: 0 8px 32px rgba(0,0,0,.10);
  padding: 6px 0; opacity: 0; pointer-events: none;
  transform: translateY(-8px);
  transition: opacity var(--transition), transform var(--transition);
}
.header__catalog-wrap.is-open .header__catalog-dropdown {
  opacity: 1; pointer-events: auto; transform: translateY(0);
}
.header__catalog-dropdown a {
  display: block; padding: 10px 20px; font-size: 14px; color: var(--color-text);
  transition: color var(--transition), background var(--transition);
}
.header__catalog-dropdown a:hover { color: var(--color-bg); background: var(--color-brand); }

.header__nav {
  align-items: center; justify-content: flex-start;
}
.header__nav-item {
  font-weight: 500; color: var(--color-text);
  white-space: nowrap; transition: color var(--transition);
}
.header__nav-item:hover { color: var(--color-brand); }
.header__nav > .header__nav-item:first-child { margin-right: 20px; }

.header__right { align-items: center; flex-shrink: 0; margin-left: auto; }

.header__right-icons {
  position: absolute; right: 0; top: 50%; transform: translateY(-50%);
  display: flex; align-items: center; gap: 12px; z-index: 11;
}

.header__phone {
  display: none; align-items: center; gap: 6px;
  font-weight: 500; color: var(--color-text);
  white-space: nowrap; transition: color var(--transition); margin: 0;
}
.header__phone:hover { color: var(--color-brand); }
.header__phone-icon { width: 22px; height: 22px; flex-shrink: 0; opacity: 0.75; }
.header__phone-text { display: none; }

.header__socials { display: flex; align-items: center; gap: 8px; margin: 0; }
.header__social-link {
  display: flex; align-items: center; justify-content: center;
  width: 22px; height: 22px; border-radius: 50%;
  transition: transform var(--transition);
}
.header__social-link:hover { transform: scale(1.1); }
.header__social-link img,
.header__social-link svg { width: 22px; height: 22px; flex-shrink: 0; }

.header__lang-wrap { position: relative; flex-shrink: 0; margin: 0; }
.header__lang {
  display: flex; align-items: center; gap: 4px;
  font-weight: 500; color: var(--color-text);
  transition: color var(--transition); padding: 4px 8px; border-radius: 6px; white-space: nowrap;
}
.header__lang:hover { color: var(--color-brand); }
.header__lang img { width: 22px; height: 22px; flex-shrink: 0; }
.header__lang svg:first-of-type { width: 22px; height: 22px; }
.header__lang .header__lang-arrow {
  width: 14px; height: 14px; aspect-ratio: 1/1;
  opacity: 0.45; margin-left: 2px;
  transition: transform var(--transition), opacity var(--transition);
}
.header__lang-wrap.is-open .header__lang-arrow { transform: rotate(180deg); opacity: 0.8; }
.header__lang-dropdown {
  position: absolute; top: calc(100% + 8px); left: 50%;
  transform: translateX(-50%) translateY(-8px);
  min-width: 110px; background: var(--color-bg);
  border: 1px solid var(--color-border); border-radius: 10px;
  box-shadow: 0 8px 24px rgba(0,0,0,.10);
  padding: 4px 0; opacity: 0; pointer-events: none;
  transition: opacity var(--transition), transform var(--transition); z-index: 200;
}
.header__lang-wrap.is-open .header__lang-dropdown {
  opacity: 1; pointer-events: auto; transform: translateX(-50%) translateY(0);
}
.header__lang-option {
  display: block; width: 100%; padding: 9px 18px;
  text-align: left; font-size: 13px; font-weight: 500; color: var(--color-text);
  transition: color var(--transition), background var(--transition); white-space: nowrap;
}
.header__lang-option:hover,
.header__lang-option.is-active { color: var(--color-bg); background: var(--color-brand); }
.header__lang-option.is-active { font-weight: 600; }

.header__right-left { display: flex; align-items: center; gap: 12px; flex-shrink: 0; }

.header__search-wrap { display: none; align-items: center; flex-shrink: 0; }
.header__right.search-is-open .header__search-wrap {
  position: absolute; left: 155px; right: 88px; top: 0; bottom: 0;
  background: var(--color-bg); border-bottom: 1.5px solid var(--color-brand);
  padding: 0 16px; z-index: 10; display: flex; align-items: center;
}
.header__search-btn {
  display: flex; align-items: center; gap: 5px;
  padding: 5px 8px; border-radius: 6px;
  font-weight: 500; color: var(--color-text); white-space: nowrap;
  transition: color var(--transition), opacity 0.3s ease; flex-shrink: 0;
}
.header__search-btn:hover { color: var(--color-brand); }
.header__search-btn img { width: 22px; height: 22px; flex-shrink: 0; }
.header__search-label { display: none; }
.header__right.search-is-open .header__search-btn { display: none; }
.header__search-input {
  flex: none; border: none; outline: none;
  font-size: 13px; font-family: var(--font-main); color: var(--color-text);
  background: transparent; width: 0; min-width: 0; opacity: 0; pointer-events: none; padding: 0;
  transition: opacity 0.3s ease;
}
.header__search-input::placeholder { color: var(--color-muted); }
.header__right.search-is-open .header__search-input {
  flex: 1; width: 100%; opacity: 1; pointer-events: auto; padding: 0 8px;
}
.header__search-close {
  display: none; align-items: center; justify-content: center;
  flex-shrink: 0; width: 22px; height: 22px;
  color: var(--color-muted); border-radius: 50%; transition: color var(--transition);
}
.header__search-close:hover { color: var(--color-brand); }
.header__right.search-is-open .header__search-close { display: flex; }

.header__icon-btn {
  display: flex; align-items: center; justify-content: center;
  width: auto; height: auto; border-radius: 50%;
  transition: background var(--transition); position: relative; color: var(--color-text);
}
.header__icon-btn:hover { background: var(--color-bg-hover); }
.header__icon-btn img,
.header__icon-btn svg { width: var(--icon-glyph); height: var(--icon-glyph); }

.header__cart-badge,
.header__like-badge {
  position: absolute;
  top: 0; right: 0; transform: translate(45%, -45%);
  width: 16px; height: 16px; background: var(--color-brand); color: #fff;
  box-sizing: border-box;
  border: 1.5px solid var(--color-bg);
  border-radius: 50%; font-size: 9px; font-weight: 700;
  align-items: center; justify-content: center; line-height: 1; display: none;
  pointer-events: none;
}
.header__cart-badge.visible,
.header__like-badge.visible { display: flex; }

.header__burger {
  display: flex; align-items: center; justify-content: center;
  width: auto; height: auto; padding: 0; flex-shrink: 0;
  color: var(--color-text);
}
.header__burger svg { display: block; width: 22px; height: 22px; }

.mobile-nav {
  position: fixed; top: var(--header-h); bottom: 0; width: 100%;
  background: var(--color-bg); z-index: 1001;
  display: flex; flex-direction: column;
  padding: 16px var(--gutter) 24px;
  overflow-y: auto; overscroll-behavior: contain;
  letter-spacing: -0.02em;
  right: -100%; visibility: hidden;
  transition: right 0.35s ease, visibility 0.35s ease;
}
.mobile-nav.is-open { right: 0; visibility: visible; }

.mobile-nav__search {
  display: flex; align-items: center; gap: 12px; flex-shrink: 0;
  border: 1px solid rgba(var(--color-text-rgb), 0.08); border-radius: 15px;
  padding: 12px 16px;
}
.mobile-nav__search svg { width: 22px; height: 22px; flex-shrink: 0; color: var(--color-text); }
.mobile-nav__search-input {
  flex: 1; min-width: 0; border: none; outline: none; background: transparent; padding: 0;
  font-family: var(--font-main); font-size: 17px; line-height: 24px;
  letter-spacing: -0.02em; color: var(--color-text);
}
.mobile-nav__search-input::placeholder { color: rgba(var(--color-text-rgb), 0.4); }

.mobile-nav__menu {
  display: flex; flex-direction: column; align-items: center; gap: 16px;
  margin-top: 32px; text-align: center; flex-shrink: 0;
}
.mobile-nav__link {
  font-size: 15px; line-height: 20px; color: var(--color-text);
  padding: 2px 8px; transition: color var(--transition);
}
.mobile-nav__link:hover { color: var(--color-brand); }
.mobile-nav__cta {
  display: flex;
  justify-content: center;
  margin-top: auto;
  padding: 24px 0;
  flex-shrink: 0;
}

.mobile-nav__link--build {
  min-width: 220px;
  text-align: center;
  padding: 14px 24px;
  border: 1px solid var(--color-brand);
  border-radius: 100px;
  background: var(--color-brand);
  color: #fff;
  font-weight: var(--fw-action);
  transition: background var(--transition), color var(--transition);
}
.mobile-nav__link--build:hover,
.mobile-nav__link--build:active {
  background: transparent;
  color: var(--color-brand);
}
.mobile-nav__cats { display: flex; flex-direction: column; align-items: center; gap: 16px; }
.mobile-nav__cat {
  position: relative; font-family: var(--font-italic); font-weight: 600;
  font-size: 16px; line-height: 16px; color: var(--color-text);
  padding-bottom: 16px; transition: color var(--transition);
}
.mobile-nav__cat:hover { color: var(--color-brand); }
.mobile-nav__cat::after {
  content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 1px;
  background: repeating-linear-gradient(90deg,
    rgba(var(--color-text-rgb), 0.12) 0 4px, transparent 4px 8px);
}

.mobile-nav__contacts {
  margin-top: auto; padding-top: 20px; flex-shrink: 0;
  display: flex; flex-direction: column; align-items: center; gap: 20px;
}
.mobile-nav__phone {
  display: flex; align-items: center; gap: 12px;
  font-size: 15px; line-height: 20px; color: var(--color-text);
  transition: color var(--transition);
}
.mobile-nav__phone:hover { color: var(--color-brand); }
.mobile-nav__phone svg { width: 26px; height: 26px; flex-shrink: 0; }
.mobile-nav__langs { display: flex; align-items: center; gap: 24px; }
.mobile-nav__lang {
  position: relative; font-family: var(--font-italic); font-style: italic; font-weight: 600;
  font-size: 16px; line-height: 20px; color: var(--color-text); padding: 0 2px;
  transition: color var(--transition);
}
.mobile-nav__lang::after {
  content: ''; position: absolute; left: 0; right: 0;
  top: var(--underline-top); height: 0.55em;
  background: url('/wp-content/themes/thebox/assets/dist/ico/line_blog_brand_wave.svg') left center / 0.385em 0.55em round no-repeat;

  opacity: 0.35; transition: opacity var(--transition); pointer-events: none;
}
.mobile-nav__lang.is-active::after,
.mobile-nav__lang:hover::after { opacity: 1; }
.mobile-nav__socials { display: flex; align-items: center; gap: 8px; }
.mobile-nav__socials a {
  display: flex; align-items: center; justify-content: center;
  width: 42px; height: 42px; border-radius: 50%; overflow: hidden;
  transition: transform var(--transition);
}
.mobile-nav__socials a:hover { transform: scale(1.1); }
.mobile-nav__socials img,
.mobile-nav__socials svg { width: 42px; height: 42px; }

.mobile-nav__secondary {
  display: none; flex-direction: column; align-items: center; gap: 16px;
  width: 100%; margin-top: 24px; padding-top: 24px;
  border-top: 1px solid var(--color-border);
}
.mobile-nav__slink {
  font-size: 17px; line-height: 24px; color: var(--color-text);
  transition: color var(--transition);
}
.mobile-nav__slink:hover { color: var(--color-brand); }

@media (min-width: 568px) and (max-width: 767.98px) {
  .mobile-nav__link--catalog, .mobile-nav__cats { display: none; }
}

@media (min-width: 768px) {
  .mobile-nav {
    width: 420px; border-left: 1px solid var(--color-border);
    padding: 32px 40px 40px;
    right: -420px;
  }
  .mobile-nav.is-open { right: 0; }
  .mobile-nav__cats { display: none; }
  .mobile-nav__link { font-size: 17px; line-height: 24px; }
  .mobile-nav__secondary { display: flex; }
}

@media (min-width: 1280px) { .mobile-nav { display: none; } }

.header__burger svg path {
  transform-box: fill-box; transform-origin: center;
  transition: transform 0.3s ease, opacity 0.2s ease;
}
.header__burger.is-active svg path:nth-child(1) { transform: translateY(-7.582px) rotate(45deg); }
.header__burger.is-active svg path:nth-child(2) { transform: translateY(7.582px) rotate(-45deg); }
.header__burger.is-active svg path:nth-child(3) { opacity: 0; }

.header__mobile-right { display: flex; align-items: center; gap: 14px; }
.header__mobile-right .header__burger { margin-left: 0; }
.header__mobile-right .header__social-link--mob-tg { display: flex; }

.nav-overlay {
  display: none; position: fixed; inset: var(--header-h) 0 0 0;
  background: rgba(0,0,0,.4); z-index: 1000; opacity: 0;
  transition: opacity var(--transition);
}
.nav-overlay.is-visible { opacity: 1; }

.header__catalog-btn,
.header__nav-item,
.header__lang,
.header__phone,
.header__search-btn { font-size: 15px; }



@media (max-width: 319.98px) {
  .header__mobile-right .header__icon-btn--fav { display: none; }
}

@media (min-width: 568px) {
  .header__catalog-wrap { display: block; }
}

@media (min-width: 768px) {
  .header__inner { justify-content: flex-start; gap: clamp(12px, 3vw, 24px); }
  .header__right { display: flex; gap: 12px; }
  .header__right-icons { position: relative; top: auto; right: auto; transform: none; }
  .header__phone { display: flex; }
  .header__divider { display: none; }
  .header__mobile-right .header__icon-btn { display: none; }
  .header__mobile-right .header__social-link--mob-tg { display: none; }
  .header__social-link--ig { display: none; }
  .header__catalog-wrap { margin-left: 65px; }
}

@media (min-width: 851px) {
  .header__nav { display: flex; flex: 0 1 auto; padding: 0; }
  .header__nav-item:not(:first-child) { display: none; }
}

@media (min-width: 851px) and (max-width: 1023.98px) {
  .header__nav   { margin-left: auto; margin-right: auto; }
  .header__right { margin-left: 0; }
}

@media (min-width: 1024px) {
  .header__logo { padding-block: 17px; }
  .header__inner { justify-content: flex-start; gap: 0; }
  .header__catalog-wrap { margin-left: clamp(73px, calc(5.02vw + 21.57px), 118px); }
  .header__catalog-btn { padding: 5px 7px 5px 6px; gap: 10px; font-size: 15px; letter-spacing: -0.02em; }
  .header__nav { flex: 0 1 auto; min-width: 0; gap: 18px; margin-left: clamp(45px, calc(8.93vw - 46.43px), 125px); }
  .header__nav-item:not(:first-child) { display: revert; }
  a.header__nav-item.header__nav-item--market { display: none; }
  .header__nav > .header__nav-item:first-child { margin-right: 0; }
  .header__right { margin-left: auto; gap: 18px; }
  .header__right-left { gap: 16px; }
  .header__right-icons { gap: 4px; }
  .header__lang { padding: 0; gap: 8px; font-size: 15px; letter-spacing: -0.02em; }
  .header__lang .header__lang-arrow { margin-left: 0; }
  .header__mobile-right { margin-left: 12px; }
  .header__social-link--ig { display: none; }
  .header__nav-item { font-size: 15px; letter-spacing: -0.02em; }
  .header__phone { font-size: 15px; }
}

@media (min-width: 768px) and (max-width: 1279.98px) {
  .header__right        { gap: 16px; }
  .header__right-left   { gap: 16px; }
  .header__right-icons  { gap: 16px; }

  .header__lang         { padding: 0; margin: 0; }
  .header__mobile-right { margin-left: -8px; }
}

@media (min-width: 1024px) and (max-width: 1279.98px) {
  .header__mobile-right { margin-left: 16px; }
}

@media (min-width: 1140px) {
  a.header__nav-item.header__nav-item--market { display: inline; margin-left: clamp(30px, calc(10.64vw - 91.3px), 113px); }
}

@media (min-width: 1280px) {
  .header__search-wrap { display: flex; }
  .header__social-link { width: 32px; height: 32px; }
  .header__social-link img,
  .header__social-link svg { width: 32px; height: 32px; }
  .header__social-link--ig { display: flex; }
  .header__socials { display: flex; }
  .header__mobile-right { display: none; }
  .header__right, .header__right-left { gap: 0; }
  .header__nav         { gap: clamp(18px, calc(0.3125vw + 14px), 20px); margin-left: clamp(68px, calc(28.5vw - 422.2px), 125px); }
  .header__phone       { gap: clamp(6px, calc(0.625vw - 2px), 10px); }
  .header__socials     { margin-left: clamp(16px, calc(15vw - 242px), 46px); }
  .header__lang-wrap   { margin-left: clamp(16px, calc(15.5vw - 250.6px), 47px); }
  .header__search-wrap { margin-left: clamp(10px, calc(7vw - 110.4px), 24px); }
  .header__search-btn  { gap: clamp(5px, calc(1.09375vw - 9px), 12px); padding: 5px 0; }
  .header__right-icons { gap: 14px; margin-left: clamp(20px, calc(28.5vw - 470.2px), 77px); margin-right: 0; }
  .header__lang        { gap: 0; padding: 2px 0; }
  .header__lang span   { margin-left: 8px; }
  .header__lang .header__lang-arrow { margin-left: 11px; }
  .header__catalog-btn { gap: 0; }
  .header__catalog-btn span { margin-left: 10px; }
  .header__catalog-btn .header__catalog-arrow { margin-left: 11px; }
}

@media (min-width: 1500px) {
  .header__phone-text { display: inline; }
}

@media (min-width: 1366px) {
  .header__catalog-btn,
  .header__nav-item,
  .header__lang,
  .header__search-btn,
  .header__phone { font-size: 17px; }
}

@media (min-width: 1440px) {
  .header__catalog-btn { padding: 5px 6px 5px 5px; }
}

@media (min-width: 1600px) {
  .header__search-label { display: inline; }
}

@media (min-width: 1025px) and (max-width: 1919.98px) {
  .header__logo img,
  .header__logo svg { height: 34px; }
}


@media (min-width: 1920px) {
  .header .container { max-width: var(--header-container); padding: 0; }

  .header__logo img, .header__logo svg { height: 34px; }

  .header__inner        { justify-content: flex-start; gap: 0; }
  .header__catalog-wrap { margin-left: 118px; }
  .header__catalog-btn        { gap: 0; font-size: 17px; letter-spacing: -0.02em; }
  .header__catalog-btn span   { margin-left: 10px; }
  .header__catalog-btn .header__catalog-arrow { margin-left: 11px; width: 14px; height: 14px; aspect-ratio: 1/1; align-self: center; }
  .header__nav          { flex: 0 1 auto; margin-left: 125px; gap: 20px; }
  .header__nav-item     { font-size: 17px; letter-spacing: -0.02em; }
  a.header__nav-item.header__nav-item--market { margin-left: 113px; }

  .header__right       { gap: 0; margin-left: auto; }
  .header__right-left  { gap: 0; }
  .header__phone       { gap: 10px; font-size: 17px; }
  .header__socials     { margin-left: 46px; }
  .header__lang-wrap   { margin-left: 47px; }
  .header__lang        { gap: 0; font-size: 17px; letter-spacing: -0.02em; }
  .header__lang span   { margin-left: 8px; }
  .header__lang .header__lang-arrow { margin-left: 11px; width: 14px; height: 14px; aspect-ratio: 1/1; align-self: center; }

  .header__search-wrap { margin-left: 24px; }
  .header__search-btn  { gap: 12px; }
  .header__right-icons { gap: 14px; margin-left: 77px; }
}

.header__nav-item, .header__catalog-btn span, .header__lang span, .header__phone-text, .header__search-label { position: relative; }
.header__nav-item::after, .header__catalog-btn span::after, .header__lang span::after, .header__phone-text::after, .header__search-label::after {
  content: ""; position: absolute; left: 0; right: 0;
  top: calc(var(--underline-top) - 1px - (var(--lh-body) - 20px) / 2); height: 0.55em;
  background: url("/wp-content/themes/thebox/assets/dist/ico/line_blog_brand_wave.svg") left center / 0.385em 0.55em round no-repeat;

  clip-path: inset(0 100% 0 0); transition: clip-path .4s ease; pointer-events: none;
}
.header__nav-item::before, .header__catalog-btn span::before, .header__lang span::before, .header__phone-text::before, .header__search-label::before {
  content: ""; position: absolute; left: 50%; top: -14px; width: 10px; height: 13px; margin-left: -5px;
  background: url("/wp-content/themes/thebox/assets/dist/ico/cherry.svg") no-repeat center / contain;
  opacity: 0; transform: translateY(5px) scale(.5) rotate(-8deg);
  transition: transform .45s cubic-bezier(.34,1.7,.5,1), opacity .22s ease; pointer-events: none;
}
.header__nav-item:hover::after { clip-path: inset(0 0 0 0); }
.header__nav-item:hover::before { opacity: 1; transform: translateY(0) scale(1) rotate(0); }
.header__catalog-wrap:hover .header__catalog-btn span::after,
.header__catalog-wrap.is-open .header__catalog-btn span::after { clip-path: inset(0 0 0 0); }
.header__catalog-wrap:hover .header__catalog-btn span::before,
.header__catalog-wrap.is-open .header__catalog-btn span::before { opacity: 1; transform: translateY(0) scale(1) rotate(0); }
.header__catalog-wrap:hover .header__catalog-btn,
.header__catalog-wrap.is-open .header__catalog-btn { color: var(--color-brand); }
.header__lang-wrap:hover .header__lang span::after,
.header__lang-wrap.is-open .header__lang span::after { clip-path: inset(0 0 0 0); }
.header__lang-wrap:hover .header__lang span::before,
.header__lang-wrap.is-open .header__lang span::before { opacity: 1; transform: translateY(0) scale(1) rotate(0); }
.header__lang-wrap:hover .header__lang,
.header__lang-wrap.is-open .header__lang { color: var(--color-brand); }
.header__catalog-arrow path, .header__lang-arrow path { transition: fill var(--transition), opacity var(--transition); }
.header__catalog-wrap:hover .header__catalog-arrow path,
.header__catalog-wrap.is-open .header__catalog-arrow path,
.header__lang-wrap:hover .header__lang-arrow path,
.header__lang-wrap.is-open .header__lang-arrow path { fill: var(--color-brand); opacity: 0.9; }
.header__phone:hover .header__phone-text::after,
.header__search-btn:hover .header__search-label::after { clip-path: inset(0 0 0 0); }
.header__phone:hover .header__phone-text::before,
.header__search-btn:hover .header__search-label::before { opacity: 1; transform: translateY(0) scale(1) rotate(0); }

.header__phone-icon, .header__search-btn svg, .header__lang svg:first-of-type { transition: color var(--transition), opacity var(--transition); }

@media (max-width: 1024.98px) {
  .header__nav-item::before, .header__catalog-btn span::before, .header__lang span::before,
  .header__phone-text::before, .header__search-label::before { display: none; }
}

.header__icon-btn, .header__burger { transition: transform var(--transition), color var(--transition), background var(--transition); }
.header__icon-btn:hover, .header__burger:hover { transform: scale(1.1); color: var(--color-brand); }
.header__icon-btn:active, .header__burger:active, .header__phone:active { color: var(--color-brand); }

/* css/components/info-bar.e81bb7ccb3.css */

.info-bar {
  position: relative; z-index: 1001;
  background: var(--color-brand);
  color: #fff;
}

.info-bar__inner {
  position: relative;
  max-width: calc(var(--header-container) + 2 * var(--gutter));
  margin: 0 auto;
  padding: 0 calc(var(--gutter) + 34px) 0 var(--gutter);
  height: 32px;
  display: flex; align-items: center; justify-content: center;
}

.info-bar__msg {
  position: absolute; left: var(--gutter); right: calc(var(--gutter) + 34px);
  top: 0; height: 32px;
  display: flex; align-items: center; justify-content: center;
  font-size: 13px; line-height: 16px;
  color: #fff; text-align: center;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  opacity: 0; visibility: hidden;
  transition: opacity var(--transition), visibility var(--transition);
}
.info-bar__msg.is-active { opacity: 1; visibility: visible; }

.info-bar__text {
  display: block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}

.info-bar__msg.is-marquee { justify-content: flex-start; }

.info-bar__msg.is-marquee .info-bar__text {
  max-width: none;
  overflow: visible;
  text-overflow: clip;
  will-change: transform;
  animation: infobar-slide var(--infobar-time, 12s) ease-in-out infinite alternate;
}

@keyframes infobar-slide {
  0%, 12%   { transform: translateX(0); }
  88%, 100% { transform: translateX(var(--infobar-shift, 0px)); }
}

a.info-bar__msg { text-decoration: none; }
a.info-bar__msg:hover { text-decoration: underline; text-underline-offset: 3px; }

.info-bar__close {
  position: absolute; right: var(--gutter); top: 50%;
  transform: translateY(-50%);
  width: 26px; height: 26px;
  display: flex; align-items: center; justify-content: center;
  color: #fff; opacity: 0.75;
  transition: opacity var(--transition);
}
.info-bar__close:hover { opacity: 1; }

@media (prefers-reduced-motion: reduce) {
  .info-bar__msg { transition: none; }
  .info-bar__msg.is-marquee { justify-content: center; }
  .info-bar__msg.is-marquee .info-bar__text {
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    animation: none;
  }
}

/* css/footer.c1be1c4415.css */

.footer {
  background: var(--color-bg-warm);
  position: relative;
  overflow: visible;
}

.footer::before {
  content: '';
  position: absolute;
  inset: 0;
  background: url('/wp-content/themes/thebox/assets/dist/image/bg_footer.webp') top center / 200% auto repeat-y;
  opacity: 1;
  pointer-events: none;
  z-index: 0;
}

.footer > .container {
  position: relative;
  z-index: 1;
}

.footer__top-bar {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 16px;
  top: auto;
  z-index: 800;
  padding: 0;
  border-bottom: none;
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  pointer-events: none;
  transition: opacity var(--transition), transform var(--transition), visibility var(--transition);
}
.footer__top-bar .container { display: flex; justify-content: flex-end; }
.footer__scroll-top { pointer-events: auto; }

.footer__top-bar.is-visible {
  opacity: 1;
  visibility: visible;
  transform: none;
}

.footer__top-bar.is-docked {
  position: absolute;
  top: 0;
  bottom: auto;
  z-index: 2;
}
.footer__top-bar.is-docked .footer__scroll-top { transform: translateY(-50%); }

@media (prefers-reduced-motion: reduce) {
  .footer__top-bar { transform: none; }
}

.footer__scroll-top {
  display: inline-flex; flex-direction: column;
  align-items: center; justify-content: center; gap: 5px;
  width: 78px; height: 78px;
  background: var(--color-bg-warm);
  color: var(--color-brand);
  border-radius: 50%;
  border: 8px solid #fff;
  font-family: var(--font-italic);
  font-size: 11px; font-weight: 600; font-style: italic;
  cursor: pointer;
  transition: background var(--transition), color var(--transition);
}
.footer__scroll-top:hover { background: var(--color-brand); color: #fff; }
.footer__scroll-top:hover svg path { stroke: #fff; }

.footer__top {
  max-width: var(--container-narrow); margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  padding: 0 0 24px;
  border-bottom: none;
  text-align: left;
}

.footer__col { display: flex; flex-direction: column; align-items: stretch; }

.footer__col--shop::after,
.footer__col--info::after {
  content: '';
  display: block;
  width: 100%; max-width: 343px; height: 1px;
  background: rgba(var(--color-text-rgb), 0.08);
  margin: 0 auto;
  flex-shrink: 0;
}

.footer__col-line { display: none; margin-bottom: 16px; flex-shrink: 0; line-height: 0; justify-content: center; align-items: center; }
.footer__col--contact .footer__col-line { display: flex; margin-bottom: 16px; }
.footer__col-content .footer__col-line { display: none; }
.footer__menu::before {
  content: '';
  display: block;
  width: 64px; height: 10px;
  margin: 0 auto 16px;
  background: url('/wp-content/themes/thebox/assets/dist/ico/footer-col-line.svg') center / 64px 10px no-repeat;
}

.footer__col-title {
  font-family: var(--font-italic);
  font-size: 16px; font-weight: 600; line-height: 20px;
  letter-spacing: -0.32px; color: var(--color-text);
  text-transform: none;
  padding: 24px 44px; position: relative;
  cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  width: 100%; margin-bottom: 0;
}
.footer__col-title::after {
  content: '';
  position: absolute; right: 0; top: 50%;
  transform: translateY(-50%);
  width: 36px; height: 36px; min-width: 36px;
  background: transparent;
  border: 1px solid rgba(var(--color-text-rgb), 0.08);
  border-radius: 50%;
  transition: background var(--transition), border-color var(--transition);
  flex-shrink: 0;
}
.footer__col-title::before {
  content: '';
  position: absolute; right: 8px; top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  width: 20px; height: 20px;
  background-color: var(--color-brand);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M9.7002 0.700195L9.7002 18.7002M18.7002 9.7002L0.700195 9.70019' stroke='%23000' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E") center / 20px 20px no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M9.7002 0.700195L9.7002 18.7002M18.7002 9.7002L0.700195 9.70019' stroke='%23000' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E") center / 20px 20px no-repeat;
  transition: background-color var(--transition);
}
.footer__col--open .footer__col-title::after {
  background: var(--color-brand);
  border-color: var(--color-brand);
}
.footer__col--open .footer__col-title::before {
  background-color: #fff;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M0.700195 9.7002L18.7002 9.7002' stroke='%23000' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M0.700195 9.7002L18.7002 9.7002' stroke='%23000' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E");
}

.footer__col-content {
  display: grid;
  grid-template-rows: 0fr;
  overflow: hidden;
  transition: grid-template-rows 0.35s ease;
  text-align: center;
}
.footer__col--open .footer__col-content { grid-template-rows: 1fr; }
.footer__col-content > * { min-height: 0; }

.footer__menu { padding-top: 0; padding-left: 0; }
.footer__menu li { margin-bottom: 12px; }
.footer__menu a {
  font-family: var(--font-main); font-size: var(--fs-body); font-weight: 400;
  line-height: var(--lh-body); letter-spacing: -0.3px; color: var(--color-text);
  transition: color var(--transition);
}
.footer__menu a:hover { color: var(--color-brand); }

.footer__contact-block { display: flex; flex-direction: column; gap: 12px; align-items: center; padding-top: 0; width: 100%; }
.footer__contact-link {
  font-family: var(--font-main); font-size: var(--fs-body); font-weight: 400;
  line-height: var(--lh-body); letter-spacing: -0.3px; color: var(--color-text);
  transition: color var(--transition);
}
.footer__contact-link:hover { color: var(--color-brand); }

.footer__col--contact { padding-top: 14px; }
.footer__col--social { border-top: none; padding-top: 24px; align-items: center; }

.footer__socials { display: flex; gap: 5px; flex-wrap: nowrap; justify-content: center; }
.footer__social-link {
  display: flex; align-items: center; justify-content: center;
  width: 40px; height: 40px; border-radius: 50%; overflow: hidden;
  transition: transform var(--transition);
}
.footer__social-link:hover { transform: scale(1.1); }
.footer__social-link img { width: 40px; height: 40px; display: block; }
.footer__social-link svg { display: block; width: 40px; height: 40px; }

.footer__copy {
  font-family: var(--font-main); font-size: var(--fs-body);
  color: var(--color-text); opacity: 0.4; line-height: var(--lh-body);
}
.footer__col--social .footer__copy { display: none; margin-top: 14px; text-align: left; width: 100%; }

.footer__copy--standalone {
  display: flex; align-items: center; justify-content: center;
  min-height: 40px;
  width: 100vw; margin-left: calc(50% - 50vw);
  background: #fff;
  opacity: 1;
  font-family: var(--font-main); font-size: var(--fs-body);
  color: rgba(var(--color-text-rgb), 0.4); line-height: var(--lh-body);
  text-align: center;
  padding: 8px 16px;
}

.footer__bottom {
  display: flex; flex-direction: column;
  align-items: center; padding: 0 0 30px; gap: 24px;
  width: 100%; max-width: var(--container-narrow); margin: 0 auto;
}
.footer__payments { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; justify-content: center; width: 100%; }
.footer__payments img { height: 17px; width: auto; display: block; }
.footer__links { display: flex; flex-direction: column; gap: 8px; align-items: center; width: 100%; }
.footer__links a {
  font-family: var(--font-main); font-size: var(--fs-body); font-weight: 400;
  line-height: var(--lh-body); letter-spacing: -0.3px; color: var(--color-text);
  transition: color var(--transition);
}
.footer__links a:hover { color: var(--color-brand); }

.footer__stage { position: relative; }

.footer__decor {
  display: block; overflow: hidden;
  pointer-events: none; user-select: none; line-height: 0;
}
.footer__decor img { width: 100%; max-width: var(--header-container); height: auto; display: block; }
@media (min-width: 1860px) {
  .footer__decor { margin-inline: calc((100% - min(100vw - 2 * var(--gutter), var(--header-container))) / 2); }
}


@media (min-width: 360px) {
  .footer__payments img { height: 20px; }
}

@media (min-width: 480px) {
  .footer__payments { gap: 14px; }
}

@media (min-width: 667px) {
  .footer::before { background-position: center; background-size: cover; background-repeat: no-repeat; }
  .footer__menu::before { display: none; }

  .footer__top {
    grid-template-columns: repeat(3, 1fr);
    column-gap: 30px;
    row-gap: 50px;
    padding: 40px 0 50px;
    border-bottom: none;
  }

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

  .footer__social-link { width: 54px; height: 54px; }
  .footer__social-link img { width: 54px; height: 54px; }
  .footer__social-link svg { width: 54px; height: 54px; }

  .footer__col-line { display: flex; justify-content: flex-start; }

  .footer__col-title { display: none; }
  .footer__col--shop::after,
  .footer__col--info::after { display: none; }

  .footer__col-content .footer__col-line { display: none; }

  .footer__col-content { display: block; overflow: visible; text-align: left; }

  .footer__col--social {
    grid-column: 1 / -1;
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
    padding: 0;
    border-top: none;
  }
  .footer__col--social .footer__col-line { display: none; }
  .footer__col--social .footer__copy { display: block; margin-top: 0; text-align: right; }

  .footer__copy--standalone { display: none; }

  .footer__payments img { height: 24px; }
  .footer__bottom {
    position: absolute; bottom: 0; left: 0; right: 0;
    flex-direction: row; align-items: flex-end; justify-content: space-between;
    padding: 0 0 20px; gap: 24px;
  }
  .footer__payments { justify-content: flex-start; width: auto; }
  .footer__links { flex-direction: column; gap: 8px; flex-wrap: nowrap; align-items: flex-end; width: auto; }

  .footer__col--contact { padding-top: 0; grid-column: auto; }
  .footer__contact-block { padding-top: 0; align-items: flex-start; width: auto; }
  .footer__socials { padding-top: 0; justify-content: flex-start; }
}

@media (min-width: 1024px) {
  .footer__top {
    grid-template-columns: repeat(4, 1fr);
    gap: clamp(48px, calc(48px + 88 * (100vw - 1024px) / 896), 136px);
    padding: clamp(40px, calc(40px + 40 * (100vw - 1024px) / 896), 80px) 0 50px;
    border-bottom: none;
  }

  .footer__menu a,
  .footer__contact-link {
    font-size: var(--fs-footer-link); line-height: var(--lh-footer-link); letter-spacing: -0.02em;
  }

  .footer__menu li:last-child { margin-bottom: 12px; }

  .footer__col-line,
  .footer__col--contact .footer__col-line {
    margin-bottom: clamp(16px, calc(16px + 8 * (100vw - 1024px) / 896), 24px);
  }

  .footer__bottom {
    position: absolute;
    bottom: 0; left: 0; right: 0;
    flex-direction: row; align-items: center;
    justify-content: space-between; gap: 16px;
  }
  .footer__payments { justify-content: flex-start; }
  .footer__links { flex-direction: row; align-items: center; justify-content: flex-end; width: auto; flex-wrap: nowrap; gap: clamp(16px, calc(16px + 8 * (100vw - 1024px) / 896), 24px); }
  .footer__links a { white-space: nowrap; }
  .footer__col--social {
    grid-column: auto;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding-top: 0;
    border-top: none;
    min-height: 160px;
  }
  .footer__col--social .footer__col-line { display: block; }
  .footer__col--social .footer__copy {
    margin-top: auto;
    margin-bottom: 12px;
    text-align: right;
    align-self: flex-end;
    width: 100%;
  }
  .footer__bottom { padding: 0 0 20px; }
}


@media (min-width: 1920px) {
  .footer__bottom { padding: 0 0 20px; }
}

@media (min-width: 2048px) {
  .footer__decor { text-align: center; }
  .footer__decor img { margin: 0 auto; }
}

/* css/components/cookie-bar.14d7463dd2.css */

.cookie-bar {
  position: fixed; left: 0; right: 0; bottom: 0;
  z-index: 1050;
  background: var(--color-bg);
  border-top: 1px solid var(--color-border);
  box-shadow: 0 -4px 16px rgba(var(--color-text-rgb), 0.08);
}

.cookie-bar__inner {
  max-width: calc(var(--header-container) + 2 * var(--gutter));
  margin: 0 auto;
  padding: 10px var(--gutter);
  display: flex; align-items: center; justify-content: center;
  gap: 12px;
}

.cookie-bar__text {
  font-size: 13px; line-height: 18px;
  color: var(--color-text);
  overflow: hidden; text-overflow: ellipsis;
}
.cookie-bar__text a { color: var(--color-brand); text-decoration: underline; text-underline-offset: 3px; }
.cookie-bar__text a:hover { text-decoration: none; }

.cookie-bar__ok {
  flex-shrink: 0;
  font-family: var(--font-italic); font-style: italic;
  font-weight: var(--fw-action); font-size: 14px; line-height: 18px;
  color: #fff; background: var(--color-brand);
  border-radius: var(--radius-btn);
  padding: 7px 22px;
  transition: opacity var(--transition);
}
@media (hover: hover) {
  .cookie-bar__ok:hover { opacity: 0.8; }
}

@media (min-width: 768px) {
  .cookie-bar__text { font-size: 14px; }
}

/* css/components/product-card.63be600238.css */
.product-card {
  border-radius: var(--radius-card);
  overflow: hidden;
  background: transparent;
  display: block;
  position: relative;
  width: 100%;
  cursor: pointer;
}

.product-card__image-wrap {
  position: relative; overflow: hidden; display: block;
  border-radius: var(--radius-card);
  clip-path: inset(0 round var(--radius-card));
  aspect-ratio: 169 / 280;
  padding: 7px;
  box-sizing: border-box;
  border: 1px solid var(--color-border);
  background: transparent;
  transition: border-color 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
@media (hover: hover) { .product-card:hover .product-card__image-wrap { border-color: transparent; } }

.product-card__photo {
  position: absolute; top: 7px; left: 7px;
  width: calc(100% - 14px); height: calc(100% - 14px); object-fit: cover;
  display: block;
  border-radius: 10px;
  clip-path: inset(0 round 10px);
  transform-origin: center center;
  transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
@media (hover: hover) {
  .product-card__photo {
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    filter: blur(0px);
    -webkit-filter: blur(0px);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    transform-style: preserve-3d;
    -webkit-transform-style: preserve-3d;
    transform: translateZ(0) scale(1) rotate(0deg);
    -webkit-transform: translateZ(0) scale(1) rotate(0deg);
    will-change: transform, filter;
  }
  .product-card:hover .product-card__photo {
    transform: translateZ(0) scale(1.09) rotate(0.01deg);
    -webkit-transform: translateZ(0) scale(1.09) rotate(0.01deg);
  }
}

.product-card__overlay {
  position: absolute;
  bottom: 8px; left: 8px; right: 8px; width: auto;
  background: transparent;
  padding: 0 12px 28px;
  display: flex; flex-direction: column; justify-content: flex-end; align-items: center; gap: 0;
  border-radius: 0 0 calc(var(--radius-card) - 8px) calc(var(--radius-card) - 8px);
  border: none;
  height: 55%;
  z-index: 10;
  pointer-events: none;
}

.product-card__title a,
.product-card__buy-wrap {
  pointer-events: auto;
}
.product-card__overlay::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; bottom: 0;
  border-radius: 0 0 10px 10px;
  background: linear-gradient(180deg, rgba(var(--color-text-rgb), 0) 0%, rgba(var(--color-text-rgb), 0.4) 100%);
  transition: left 0.3s ease, right 0.3s ease, bottom 0.3s ease, border-radius 0.3s ease, background 0.35s ease;
  z-index: -1;
  pointer-events: none;
}
@media (hover: hover) {
  .product-card:hover .product-card__overlay::before {
    left: -8px; right: -8px; bottom: -8px;
    border-radius: 0 0 var(--radius-card) var(--radius-card);
    background: linear-gradient(360deg, rgba(var(--color-brand-rgb), 0.4) 0%, rgba(var(--color-brand-rgb), 0) 100%);
  }
}

.product-card__badges {
  position: absolute; top: 24px; left: 18px;
  display: flex; flex-direction: column; gap: 4px; z-index: 3;
}

.product-card__controls {
  position: absolute; top: 24px; right: 18px;
  display: flex; flex-direction: row; align-items: center; gap: 6px; z-index: 3;
}

.product-card__fav {
  display: flex; align-items: center; justify-content: center;
  background: none;
  position: relative; transition: transform var(--transition); cursor: pointer;
  transform: translateZ(0); will-change: transform; backface-visibility: hidden;
}
@media (hover: hover) { .product-card__fav:hover { transform: translateZ(0) scale(1.1); } }

.product-card__nav {
  position: absolute; top: 50%; transform: translateY(-50%);
  width: 40px; height: 40px; background: transparent;
  border: 1.5px solid rgba(255,255,255,.8); border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 0; z-index: 11; opacity: 1;
  transition: opacity var(--transition), background var(--transition), border-color var(--transition);
  cursor: pointer;
}
.product-card__nav--prev { left: 10px; }
.product-card__nav--next { right: 10px; }
.product-card__nav img {
  width: 10px; height: 16px; display: block;
  filter: brightness(0) invert(1);
}
.product-card__nav:hover {
  background: var(--color-brand); border-color: transparent;
}

.product-card__title {
  color: var(--color-bg-warm);
  font-family: var(--font-italic); font-style: italic;
  font-size: 16px; font-weight: 600;
  line-height: 28px; margin: 0 0 10px; text-align: center;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
}
.product-card__title a {
  color: inherit;
  display: -webkit-box; -webkit-box-orient: vertical;
  -webkit-line-clamp: inherit; line-clamp: inherit; overflow: hidden;
}
.product-card__title a:hover { opacity: 0.85; }

.product-card__price-wrap { display: flex; flex-direction: row; align-items: baseline; gap: 6px; margin-bottom: 0; }
.product-card__price {
  color: var(--color-bg-warm);
  font-family: var(--font-main); font-size: var(--fs-price); font-weight: 400;
  line-height: 1; letter-spacing: -0.02em;
}
.product-card__price-old {
  color: rgba(255,255,255,.6);
  font-family: var(--font-main); font-weight: 400; line-height: 1;
  font-size: var(--fs-price-old); text-decoration: line-through;
}

.product-card__promo {
  font-family: var(--font-main); font-size: 15px; letter-spacing: -0.02em;
  color: var(--color-bg-warm); margin: 0; line-height: 20px;
  overflow: hidden;
  display: none;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
}

.product-card__buy-wrap {
  margin-top: 12px; display: flex; justify-content: center; align-items: flex-end;
  position: relative;
  width: 100%;
  min-height: 20px;
}
.product-card__buy-wrap .qty {
  position: absolute; top: 0; left: 50%; transform: translateX(-50%);
}

.product-card__btn {
  display: inline-block; padding: 0;
  background: transparent; border: none; color: var(--color-bg-warm);
  font-size: var(--fs-filter-control); line-height: var(--lh-action-link); font-weight: var(--fw-action); font-style: italic;
  font-family: var(--font-italic); cursor: pointer;
  position: relative;
  transition: opacity var(--transition);
}
.product-card__btn::after {
  content: ''; position: absolute; left: 0; right: 0;
  top: var(--underline-top); height: 0.55em;
  background: url('/wp-content/themes/thebox/assets/dist/ico/line_blog_white_wave.svg') left center / 0.385em 0.55em round no-repeat;

  pointer-events: none;
}
.product-card__btn:hover { opacity: 0.85; }

@media (max-width: 767.98px) {
  .product-card__image-wrap { padding: 3px; }
  .product-card__photo { top: 3px; left: 3px; width: calc(100% - 6px); height: calc(100% - 6px); }
  .product-card__overlay { bottom: 4px; left: 4px; right: 4px; padding-bottom: clamp(24px, 2.8vw + 13.5px, 35px); }
  .product-card__badges { top: 14px; left: 12px; }
  .product-card__controls { top: 20px; right: 12px; }
  .product-card__title { line-height: 16px; margin-bottom: 10px; }
  .product-card__buy-wrap { align-items: flex-end; margin-top: 8px; }
  .product-card__nav { opacity: 0; }
}

@media (min-width: 768px) {
  .product-card__image-wrap { aspect-ratio: 422 / 680; }
  .product-card__overlay { height: 360px; padding: 0 16px 40px; text-align: center; }
  .product-card__title { line-height: 16px; margin-bottom: 10px; text-align: center; }
  .product-card__price-wrap { margin-bottom: 0; justify-content: center; }
  .product-card__badges { top: 14px; left: 20px; }
  .product-card__controls { top: 20px; right: 20px; }
  .product-card__price-old { color: rgba(255,255,255,.55); }
  .product-card__buy-wrap { margin-top: 12px; justify-content: center; }
  .product-card__nav { opacity: 0; }
  .product-card:hover .product-card__nav { opacity: 1; }
}

@media (min-width: 768px) and (max-width: 1023.98px) {
  .product-card__image-wrap { aspect-ratio: 229 / 364; padding: 3px; }
  .product-card__photo { top: 3px; left: 3px; width: calc(100% - 6px); height: calc(100% - 6px); }
  .product-card__overlay { bottom: 4px; left: 4px; right: 4px; padding-bottom: 35px; }
  .product-card__buy-wrap { align-items: flex-start; }
}

@media (min-width: 1024px) {
  .product-card__badges { top: clamp(14px, calc(2.2321vw - 8.86px), 34px); left: clamp(20px, calc(1.1161vw + 8.57px), 30px); }
  .product-card__controls { top: clamp(24.71px, calc(3.0134vw - 13.86px), 44px); right: clamp(20px, calc(1.1161vw + 8.57px), 30px); }
  .product-card__overlay { height: 260px; padding: 0 12px 35px; align-items: center; text-align: center; }
  .product-card__title { line-height: 16px; font-style: normal; font-weight: 600; text-align: center; margin-bottom: 10px; }
  .product-card__price-wrap { align-self: auto; justify-content: center; margin-bottom: 0; }
  .product-card__price { line-height: 16px; font-weight: 400; font-style: normal; }
  .product-card__btn { font-size: var(--fs-filter-control); line-height: var(--lh-action-link); font-style: italic; font-weight: var(--fw-action); }
  .product-card__buy-wrap { margin-top: 12px; align-self: auto; justify-content: center; }
  .product-card__nav { opacity: 0; }
  .product-card:hover .product-card__nav { opacity: 1; }
}

@media (min-width: 1024px) and (max-width: 1279.98px) {
  .product-card__image-wrap { aspect-ratio: 229 / 364; padding: 3px; }
  .product-card__photo { top: 3px; left: 3px; width: calc(100% - 6px); height: calc(100% - 6px); }
  .product-card__overlay { bottom: 4px; left: 4px; right: 4px; padding-bottom: 35px; }
  .product-card__buy-wrap { align-items: flex-start; }
  .product-card__controls { top: clamp(20px, calc(2.2321vw - 2.86px), 40px); }
}

@media (min-width: 1025px) {
  .product-card__promo {
    display: -webkit-box;
    font-size: 13px;
    line-height: 18px;
    letter-spacing: -0.02em;
    min-height: 54px;
  }
  .product-card__price-wrap { margin-bottom: 20px; }
}

@media (min-width: 1280px) {
  .product-card__overlay {
    height: clamp(360px, 9.38vw + 240px, 420px);
    padding: 0 clamp(16px, 1.25vw, 24px) clamp(40px, 1.5625vw + 20px, 50px);
    flex-direction: row;
    flex-wrap: wrap;
    align-items: baseline;
    align-content: flex-end;
    justify-content: space-between;
    column-gap: 8px;
    row-gap: 0;
    text-align: left;
  }
  .product-card__title {
    flex: 1 1 0; min-width: 0;
    line-height: clamp(16px, 1.875vw - 8px, 28px);
    letter-spacing: -0.02em;
    font-style: normal; font-weight: 600;
    text-align: left; margin-bottom: 15px;
  }
  .product-card__price-wrap { flex: 0 0 auto; flex-direction: column; align-items: flex-end; align-self: baseline; margin-bottom: 0; gap: 0; }
  .product-card__price { line-height: 1; font-weight: 400; font-style: normal; }
  .product-card__price-old { line-height: 20px; }
  .product-card__btn { font-size: var(--fs-filter-control); line-height: var(--lh-action-link); font-style: italic; font-weight: var(--fw-action); }
  .product-card__buy-wrap { flex: 0 0 100%; justify-content: center; align-items: flex-start; margin-top: 12px; }
  .product-card__promo { flex: 0 0 100%; padding-right: 80px; font-size: 14px; line-height: 19px; min-height: 57px; }
}

@media (min-width: 1366px) {
  .product-card__title { font-size: 17px; }
  .product-card__buy-wrap { margin-top: 16px; }
}

@media (min-width: 1440px) {
  .product-card__buy-wrap { margin-top: 20px; }
}

@media (min-width: 1560px) {
  .product-card__title { font-size: 18px; }
  .product-card__promo { font-size: 15px; line-height: 20px; min-height: 60px; }
  .product-card__buy-wrap { margin-top: 24px; }
}

@media (min-width: 1680px) {
  .product-card__title { font-size: 19px; }
  .product-card__buy-wrap { margin-top: 28px; }
}

@media (min-width: 1760px) {
  .product-card__title { font-size: 20px; }
  .product-card__promo { font-size: 16px; line-height: 22px; min-height: 66px; }
  .product-card__buy-wrap { margin-top: 34px; }
}

@media (min-width: 1840px) {
  .product-card__title { font-size: 22px; }
  .product-card__buy-wrap { margin-top: 40px; }
}

.product-card__btn { padding-left: 0.25em; margin-left: -0.25em; }
.product-card__btn::after { left: 0.25em; }

.product-card__soldout {
  font-family: var(--font-main); font-size: 15px; line-height: 20px;
  letter-spacing: -0.02em; color: var(--color-bg-warm); margin: 0;
}

/* css/components/slider-arrow.c1194578ff.css */

.slider-arrow {
  display: none;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  width: 50px;
  height: 50px;
  border: 1.5px solid var(--color-border);
  border-radius: 50%;
  background: var(--color-bg);
  color: var(--color-text);
  cursor: pointer;
  padding: 0;
  transition: border-color var(--transition), background var(--transition), color var(--transition);
}

.slider-arrow:hover {
  background: var(--color-brand);
  border-color: var(--color-brand);
  color: #fff;
}

.slider-arrow svg {
  display: block;
  width: 20px;
  height: 20px;
  aspect-ratio: 1 / 1;
  flex-shrink: 0;
}

@media (min-width: 1024px) {
  .slider-arrow {
    width: clamp(50px, calc(2.232vw + 27.15px), 70px);
    height: clamp(50px, calc(2.232vw + 27.15px), 70px);
  }
}

@media (min-width: 1280px) {
  .slider-arrow svg {
    width: 22px;
    height: 22px;
  }
}

/* css/components/product-page.26783dff7b.css */

.product-topnav { padding: var(--breadcrumbs-top) 0; }
.product-topnav__inner {
  display: flex;
  align-items: flex-start;
  gap: 8px;
}
.product-topnav__back {
  display: none;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 36px; height: 36px;
  color: var(--color-text);
  transition: color var(--transition);
}
.product-topnav__back:hover { color: var(--color-brand); }
@media (max-width: 768px) {
  .product-topnav__back { display: flex; }
}
.product-topnav__crumbs { padding: 0; text-align: left; flex: 1; min-width: 0; }
.breadcrumbs__item--hide-mobile { display: none; }
.product-tabs {
  background: var(--color-bg);
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
}
.product-tabs .container,
.product-tab-panel .container { --container: var(--container-narrow); }
.product-tabs__nav {
  display: flex;
  justify-content: center;
  overflow-x: auto;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.product-tabs__nav::-webkit-scrollbar { display: none; }
.product-tabs__btn {
  flex-shrink: 0;
  padding: 14px 12px 12px;
  font-family: var(--font-italic);
  font-style: italic;
  font-size: 15px;
  font-weight: var(--fw-action);
  color: var(--color-text);
  transition: color var(--transition);
  position: relative;
}
.product-tabs__btn.is-active::after {
  left: 12px; right: 12px;
  top: calc(var(--underline-top) - 12px);

}
@media (min-width: 1314px) {
  .product-tabs__btn { font-size: 16px; }
}
.product-tabs__btn:hover:not(.is-active) { color: var(--color-muted); }
.product { padding: 20px 0 clamp(32px, calc(4.0713vw + 16.732521px), 48px); }
.product__layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  width: 100%;
}
.product__gallery {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}
.product__img-wrap {
  position: relative;
  width: 100%;
  max-width: 500px;
  cursor: zoom-in;
}
.product__main-img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 0;
  object-fit: cover;
  user-select: none;
}
@media (min-width: 1024px) {
  .product__img-wrap { overflow: hidden; }
  .product__main-img { transition: transform 0.3s ease-out; will-change: transform; }
  .product__img-wrap.is-zooming .product__badge-top,
  .product__img-wrap.is-zooming .product__avail-pill { opacity: 0; transition: opacity 0.12s ease; }
}
.product__avail-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  background: var(--color-bg-warm);
  padding: 5px 10px;
  border-radius: 33px;
  font-family: var(--font-main);
  font-size: 15px;
  line-height: 20px;
  color: var(--color-brand);
  letter-spacing: -0.02em;
  white-space: nowrap;
  flex-shrink: 0;
}
.product__avail-check {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
}
.product__thumbs { display: none; }
.product__dots {
  position: absolute;
  bottom: 16px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 0;
}
.product__info {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 0 12px;
}
.product__sep {
  height: 1px;
  background: var(--color-border);
  margin: 16px 0;
}
.product__title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  flex-wrap: wrap;
}
.product__title-group {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1;
  min-width: 0;
  flex-wrap: wrap;
}
.product__price-group {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}
.product__title {
  font-family: var(--font-italic);
  font-weight: 600;
  font-style: normal;
  font-size: 22px;
  line-height: 28px;
  letter-spacing: -0.44px;
  color: var(--color-text);
  margin: 0;
}
.product__badge-top {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.product__img-wrap .product__badge-top {
  position: absolute;
  top: 16px;
  left: 16px;
  z-index: 2;
}
.product__img-wrap .product__avail-pill {
  position: absolute;
  top: 16px;
  right: 16px;
  left: auto;
  z-index: 2;
}
.product__title-group .product__badge-top { display: none; }
.product__title-group .product__avail-pill { display: none; }
.product__avail-pill--stars { display: none; }
.product__wish {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18px; height: 18px;
  aspect-ratio: 1 / 1;
  flex-shrink: 0;
  cursor: pointer;
  transition: transform var(--transition);
}
.product__wish:hover { transform: scale(1.1); }
.product__wish img.fav-icon {
  width: 18px; height: 18px;
  display: block;
  position: relative;
  z-index: 1;
  filter: brightness(0);
}
.product__wish:hover img.fav-icon,
.product__wish[aria-pressed="true"] img.fav-icon { filter: brightness(0) invert(1); }
.product__wish::before {
  content: '';
  position: absolute;
  width: 18px; height: 18px;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  background: var(--color-brand);
  clip-path: path('M9 4.09C5.12 -0.68 1.02 2.71 0.97 6.36C0.97 11.79 7.47 16.25 9 16.25C10.54 16.25 17.04 11.79 17.04 6.36C16.98 2.71 12.88 -0.68 9 4.09Z');
  opacity: 0;
  transition: opacity var(--transition);
  z-index: 0;
}
.product__wish:hover::before,
.product__wish[aria-pressed="true"]::before { opacity: 1; }
.product__stars {
  display: flex;
  gap: 3px;
  align-items: center;
  margin-top: 10px;
}
.product__price {
  font-family: var(--font-main);
  font-size: 18px;
  font-weight: 400;
  color: var(--color-text);
  letter-spacing: -0.02em;
}
.product__contents-label {
  font-size: 17px;
  color: var(--color-text);
  margin-bottom: 12px;
  line-height: 1.4;
  letter-spacing: -0.02em;
}
.product__contents-count {
  color: var(--color-brand);
  font-weight: 400;
}
.product__items-list {
  display: flex;
  flex-direction: column;
  margin-bottom: 14px;
}
.product__items-list.is-animating {
  overflow: hidden;
  transition: height 0.35s ease;
}
.product__items-list.is-animating > * { flex-shrink: 0; }
.product__items-list.is-animating .product__item-extra { transition: opacity 0.35s ease; }
.product__items-list.is-hiding .product__item-extra { opacity: 0; }
.product__item { padding: 8px 0; }
.product__item-info {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
}
.product__item-name {
  font-size: 17px;
  line-height: 1.4;
  color: var(--color-text);
  letter-spacing: -0.02em;
  flex: 1;
}
.product__item-avail {
  flex-shrink: 0;
  background: none;
  padding: 0;
}
.product__item-avail .product__avail-check { position: relative; top: -1px; }
.product__item-line {
  height: 1px;
  background: var(--color-border);
  padding: 0;
}
@media (max-width: 1023.98px) {
  .product__item-info { flex-direction: column; align-items: flex-start; gap: 4px; }
}
.product__link-italic {
  display: inline-block;
  position: relative;
  font-family: var(--font-italic);
  font-style: italic;
  font-weight: var(--fw-action);
  font-size: var(--fs-action-link);
  line-height: var(--lh-action-link);
  color: var(--color-text);
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
  transition: color var(--transition);
  overflow: visible;
}
.product__link-italic:hover { color: var(--color-brand); }
.product__link-italic[hidden] { display: none; }
.product__label {
  display: block;
  font-size: 17px;
  color: var(--color-text);
  margin-bottom: 12px;
  line-height: 1.4;
  letter-spacing: -0.02em;
}
.product__bloc--color {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.product__extras-head .product__label {
  display: inline-flex;
  align-items: center;
  margin-bottom: 0;
}
.product__bloc--color .product__size-info {
  flex-basis: 100%;
  margin-top: 0;
}
.product__colors {
  display: flex;
  gap: 20px;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 0;
}
.product__color-opt {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  position: relative;
}
.product__color-opt input[type="radio"] {
  position: absolute;
  opacity: 0;
  width: 0; height: 0;
  pointer-events: none;
}
.product__color-ring {
  width: 32px; height: 32px;
  border-radius: 50%;
  border: 2px solid rgba(var(--color-text-rgb), 0.12);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: border-color var(--transition);
}
.product__color-opt input:checked ~ .product__color-ring {
  border-color: var(--color-brand);
}
.product__color-swatch {
  width: 24px; height: 24px;
  border-radius: 41px;
  border: 1px solid rgba(0,0,0,0.08);
  position: absolute;
  left: 4px; top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  pointer-events: none;
}
.product__color-name {
  font-size: 17px;
  line-height: 24px;
  letter-spacing: -0.02em;
  color: var(--color-text);
  white-space: nowrap;
}
.product__color-opt input:checked ~ .product__color-name,
.product__color-opt:hover .product__color-name {
  color: var(--color-brand);
}
.product__size-info {
  font-size: 17px;
  line-height: 24px;
  letter-spacing: -0.02em;
  color: var(--color-text);
  margin-top: 4px;
}
.product__check-row {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
}
.product__checkbox-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  flex-shrink: 0;
}
.product__checkbox-input {
  position: absolute;
  opacity: 0;
  width: 0; height: 0;
  pointer-events: none;
}
.product__checkbox-box {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px; height: 26px;
  border-radius: 5px;
  border: 1px solid rgba(var(--color-text-rgb), 0.2);
  background: var(--color-bg);
  transition: border-color var(--transition), background var(--transition);
  flex-shrink: 0;
}
.product__checkbox-input:checked + .product__checkbox-box {
  border-color: var(--color-brand);
  background: var(--color-bg);
}
.product__checkbox-input:checked + .product__checkbox-box::after {
  content: '';
  width: 11px;
  height: 11px;
  background-color: var(--color-brand);
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2211%22%20height%3D%2211%22%20viewBox%3D%220%200%2011%2011%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M0.699219%206.50377L4.07584%209.98591C5.66475%205.42165%206.98802%203.41879%209.98493%200.700195%22%20stroke%3D%22%23000000%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E") center / 11px 11px no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2211%22%20height%3D%2211%22%20viewBox%3D%220%200%2011%2011%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M0.699219%206.50377L4.07584%209.98591C5.66475%205.42165%206.98802%203.41879%209.98493%200.700195%22%20stroke%3D%22%23000000%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E") center / 11px 11px no-repeat;
}
.product__check-text {
  font-size: 17px;
  color: var(--color-text);
  line-height: 24px;
  letter-spacing: -0.02em;
}
.product__extras-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 12px;
}
.product__extras-price {
  font-size: 17px;
  color: var(--color-text);
  font-weight: 400;
  white-space: nowrap;
}
.product__extras-opts {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 12px 32px;
}
.product__extra-panel {
  margin-top: 16px;
}
.product__name-field {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 16px;
  padding: 16px;
  border: 1px solid rgba(var(--color-text-rgb), 0.08);
  border-radius: 15px;
  background: var(--color-bg);
  margin-bottom: 12px;
}
.product__name-field:focus-within { border-color: var(--color-brand); }
.product__name-input {
  flex: 1 1 100%;
  height: 40px;
  padding: 0;
  border: none;
  background: none;
  font-family: var(--font-main);
  font-size: 14px;
  color: var(--color-text);
  outline: none;
}
.product__name-input::placeholder { color: var(--color-muted); }
.product__field-meta {
  flex: 1 1 100%;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 24px;
}
.product__char-count {
  font-size: 13px;
  color: var(--color-muted);
  pointer-events: none;
  white-space: nowrap;
}
.product__char-current { color: var(--color-brand); }
.product__char-max { color: var(--color-text); }
.product__name-actions {
  display: flex;
  align-items: center;
  gap: 16px;
}
.product__field-btn {
  font-family: var(--font-italic);
  font-style: italic;
  font-weight: 600;
  font-size: 15px;
  line-height: 20px;
  color: var(--color-text);
  text-align: center;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  text-decoration: none;
  transition: color var(--transition);
}
.product__field-btn:hover { color: var(--color-brand); }
.product__logo-field {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 16px;
  margin-bottom: 12px;
}
.product__upload-btn {
  position: relative;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  border-radius: 15px;
  border: 1px solid rgba(var(--color-text-rgb), 0.08);
  background: var(--color-bg);
  cursor: pointer;
  overflow: hidden;
  transition: border-color var(--transition);
}
.product__upload-btn:hover { border-color: var(--color-brand); }
.product__upload-plus { color: var(--color-text); }
.product__upload-btn.is-filled .product__upload-plus { display: none; }
.product__upload-preview {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
}
.product__upload-preview[hidden] { display: none; }
.product__upload-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.product__upload-file {
  font-size: 17px;
  line-height: 24px;
  letter-spacing: -0.34px;
  color: var(--color-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.product__upload-file--error { color: var(--color-brand); }
.product__upload-hint {
  font-size: 17px;
  line-height: 24px;
  letter-spacing: -0.34px;
  color: var(--color-text);
  opacity: 0.4;
}
.product__disclaimer {
  font-size: 12px;
  color: var(--color-muted);
  line-height: 1.5;
  margin-top: 4px;
  opacity: 0.4;
}
.product__bloc--buy {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.product__qty {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 120px;
  height: 48px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-btn);
  padding: 0 4px;
}
.product__qty-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px; height: 40px;
  color: var(--color-text);
  border: 1px solid transparent;
  background: var(--color-bg-warm);
  border-radius: 50%;
}
.product__qty-btn:disabled { opacity: 0.3; cursor: default; }
.product__qty-val {
  font-family: var(--font-main);
  font-size: 16px;
  color: var(--color-text);
  min-width: 28px;
  text-align: center;
  user-select: none;
}
.product__cta {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.product__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 52px;
  border-radius: var(--radius-btn);
  font-family: var(--font-italic);
  font-style: italic;
  font-size: var(--fs-action-link);
  font-weight: var(--fw-action);
  transition: background var(--transition), color var(--transition), border-color var(--transition);
  cursor: pointer;
  padding: 0 24px;
}
.product__btn--cart {
  background: transparent;
  color: var(--color-text);
  border: 1px solid var(--color-brand);
}
.product__btn--cart:hover {
  background: var(--color-brand);
  color: var(--color-bg);
}
.product__btn--fast {
  background: var(--color-bg);
  color: var(--color-text);
  border: 1px solid var(--color-brand);
  white-space: nowrap;
}
.product__btn--fast:hover {
  background: var(--color-brand);
  color: var(--color-bg);
}
.product-tab-panel { padding: clamp(32px, calc(1.165vw + 27.632px), 50px) 0 clamp(32px, calc(3.1068vw + 20.34947px), 80px); }
.product-desc__cols {
  display: flex;
  flex-direction: column;
  gap: clamp(16px, calc(4.0713vw + 0.73252px), 32px);
}
.product-desc__cols p {
  color: var(--color-black);
  letter-spacing: -0.02em;
}
.product-specs__table {
  display: flex;
  flex-direction: column;
  width: 100%;
  border-top: 1px solid var(--color-border);
}
.product-specs__cell {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--color-border);
}
.product-specs__name {
  font-size: 14px;
  line-height: 1.4;
  color: var(--color-text);
  flex: 1;
}
.product-specs__qty {
  font-size: 14px;
  color: var(--color-brand);
  flex-shrink: 0;
  text-align: right;
  white-space: nowrap;
}
.product-review {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  height: 247px;
  padding: 33px;
  border: 1px solid rgba(var(--color-text-rgb), 0.08);
  border-radius: 14px;
  background: var(--color-bg);
}
.product-review__head {
  width: 100%;
  padding-right: 60px;
}
.product-review__name {
  font-family: var(--font-italic);
  font-style: normal;
  font-weight: 600;
  font-size: 22px;
  line-height: 28px;
  letter-spacing: -0.44px;
  color: var(--color-text);
  margin: 0;
}
.product-review__avatar {
  position: absolute;
  top: 33px; right: 33px;
  width: 54px; height: 54px;
  border-radius: 50%;
  overflow: hidden;
}
.product-review__avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.product-review__stars { display: flex; gap: 3px; margin-top: 8px; }
.product-review__text {
  margin: 16px 0 0;
  font-family: var(--font-main);
  font-size: 15px;
  line-height: 20px;
  letter-spacing: -0.3px;
  color: var(--color-text);
  max-width: 100%;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
}
.product-review.is-truncated .product-review__text { -webkit-line-clamp: 3; line-clamp: 3; }
.product-review.is-expanded { height: auto; }
.product-review.is-expanded .product-review__text {
  display: block;
  overflow: visible;
  -webkit-line-clamp: none;
  line-clamp: none;
}
.product-review__more {
  margin-top: 15px;
  padding: 0;
  background: none;
  border: none;
  font-family: var(--font-italic);
  font-style: italic;
  font-weight: 600;
  font-size: 15px;
  line-height: 20px;
  color: var(--color-text);
  cursor: pointer;
  transition: color var(--transition);
}
.product-review__more:hover { color: var(--color-brand); }
.product-reviews__write {
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(342px, 100%);
  height: 70px;
  margin: 40px auto 0;
  background: transparent;
  border: 1px solid var(--color-brand);
  border-radius: 41px;
  font-family: var(--font-italic);
  font-style: italic;
  font-weight: var(--fw-action);
  font-size: 16px;
  line-height: 20px;
  color: var(--color-text);
  cursor: pointer;
  transition: background var(--transition), color var(--transition);
}
.product-reviews__write:hover { background: var(--color-brand); color: var(--color-bg); }
.product-inside__desc {
  font-size: 14px;
  line-height: 1.65;
  color: var(--color-text);
  text-align: center;
  max-width: 740px;
  margin: 0 auto 28px;
}
.product-inside__title {
  text-align: center;
  margin-bottom: 20px;
  font-family: var(--font-main);
  font-style: normal;
  font-weight: 400;
  color: var(--color-text);
}
.product-inside .container:not(:has(.product-inside__desc)) {
  padding-top: 168px;
}
.product-inside__avatars {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  margin-bottom: clamp(24px, calc(1.424vw + 18.66px), 46px);
}
.product-inside__avatar {
  width: 50px; height: auto;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  overflow: hidden;
  border: 2px solid var(--color-bg);
  min-width: 0;
}
.product-inside__avatar + .product-inside__avatar { margin-left: -14px; }
.product-inside__avatar img { width: 100%; height: 100%; object-fit: cover; }
.product-inside__slider-wrap {
  position: relative;
  margin-top: 4px;
}
.product-inside__slider {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.product-inside__slider::-webkit-scrollbar { display: none; }
.product-inside__card {
  display: grid;
  grid-template-areas: "name img" "price img" "add add";
  grid-template-columns: 1fr auto;
  grid-template-rows: auto auto auto;
  gap: 8px 14px;
  flex-shrink: 0;
  scroll-snap-align: start;
  width: calc(100vw - 56px);
  max-width: 340px;
  background: var(--color-bg);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-card);
  padding: 14px;
}
.product-inside__card-name {
  grid-area: name;
  font-family: var(--font-italic);
  font-weight: 600;
  font-style: normal;
  font-size: 13px;
  line-height: 1.45;
  color: var(--color-text);
}
.product-inside__card-img {
  grid-area: img;
  align-self: start;
  width: 80px; height: 104px;
  border-radius: 8px;
  overflow: hidden;
}
.product-inside__card-img img { width: 100%; height: 100%; object-fit: cover; }
.product-inside__card-price {
  grid-area: price;
  font-size: 14px;
  font-weight: 400;
  color: var(--color-text);
}
.product-inside__card-add {
  grid-area: add;
  align-self: start;
  display: inline-block;
  font-family: var(--font-italic);
  font-style: italic;
  font-weight: var(--fw-action);
  font-size: var(--fs-action-link);
  line-height: var(--lh-action-link);
  color: var(--color-text);
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  text-decoration: none;
  transition: color var(--transition);
  white-space: nowrap;
}
.product-inside__card-add:hover { color: var(--color-brand); }
.product-recommended .product-card__buy-wrap .qty {
  display: flex; align-items: center; justify-content: space-between;
  background: var(--color-bg); border-radius: var(--radius-btn);
}
:where(.product-recommended .product-card__buy-wrap) .qty__btn {
  display: flex; align-items: center; justify-content: center;
  font-weight: 300; color: var(--color-text);
  background: var(--color-bg-warm); border-radius: 50%; cursor: pointer;
  transition: background var(--transition), color var(--transition); flex-shrink: 0;
}
.product-recommended .product-card__buy-wrap .qty__value {
  flex: 1; text-align: center; font-weight: 400; letter-spacing: -0.02em;
  color: var(--color-text); pointer-events: none;
}
.product-slider__dots {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 16px;
}
.product-tab-panel { padding-bottom: 0; }
.product-recommended { padding: clamp(24px, calc(3.6246vw + 10.407715px), 80px) 0 24px; }
.product-recommended__title {
  font-family: var(--font-italic);
  font-weight: 600;
  font-size: var(--fs-section-h2);
  line-height: var(--lh-section-h2);
  letter-spacing: -0.02em;
  text-align: center;
  margin-bottom: var(--section-h2-bottom);
}
.product-recommended__title em { font-style: italic; color: var(--color-brand); }
.product-faq { padding-top: 32px; }
.product-faq__title {
  font-family: var(--font-italic);
  font-weight: 600;
  font-size: var(--fs-section-h2);
  line-height: var(--lh-section-h2);
  letter-spacing: -0.02em;
  text-align: center;
  margin-bottom: var(--section-h2-bottom);
}
.product-faq__title em { font-style: italic; color: var(--color-brand); }
.product-faq__q {
  display: flex;
  align-items: center;
  width: 100%;
  position: relative;
  padding: 24px 0;
  text-align: left;
  cursor: pointer;
  user-select: none;
  outline: none;
}
.product-faq__q:focus-visible {
  outline: 2px solid var(--color-brand);
  outline-offset: 2px;
  border-radius: 4px;
}
.product-faq__q-text {
  flex: 1;
  padding-right: 56px;
  font-family: var(--font-italic);
  font-weight: 600;
  font-style: normal;
  font-size: var(--fs-case-accent);
  line-height: var(--lh-case-accent);
  letter-spacing: -0.02em;
  color: var(--color-text);
}
.product-faq__icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute; right: 0; top: 50%; transform: translateY(-50%);
  width: 40px; height: 40px;
  border-radius: 50%;
  border: 1px solid rgba(var(--color-text-rgb), 0.08);
  background: var(--color-bg);
  transition: background var(--transition), border-color var(--transition);
}
.product-faq__q:hover .product-faq__icon { background: var(--color-bg-brand-hover); }
.product-faq__minus { display: none; }
.product-faq__plus { display: block; }
.product-faq__q[aria-expanded="true"] .product-faq__icon {
  background: var(--color-brand);
  border-color: var(--color-brand);
}
.product-faq__q[aria-expanded="true"] .product-faq__plus { display: none; }
.product-faq__q[aria-expanded="true"] .product-faq__minus { display: block; }
.product-faq__a {
  padding: 0 56px 16px 0;
}
.product-faq__a p {
  font-family: var(--font-main);
  color: var(--color-text);
  margin: 0;
}
.product-faq__sep {
  height: 1px;
  background: rgba(var(--color-text-rgb), 0.08);
}
@media (min-width: 1366px) {
  .product-faq__a { padding-bottom: 24px; padding-right: 74px; }
}
@media (min-width: 320px) {
  .product__info { padding: 0 16px; }
  .product__extras-head .product__label { flex-shrink: 0; }
  .product__qty { width: 100%; height: 50px; }
  .product__cta { flex-direction: row; gap: 5px; }
  .product__btn { flex: 1; padding: 0 10px; }
  .product-inside__card { width: calc(100vw - 32px); }
  .product-inside__card-img { width: 90px; height: 120px; }
}
@media (min-width: 480px) {
  .product-inside__card { max-width: 360px; }
  .product__btn { padding: 0 24px; }
  .product__btn--cart { white-space: normal; }
}
@media (max-width: 374.98px) {
  .product__cta { flex-direction: column; gap: 8px; }
  .product__btn { flex: none; width: 100%; }
}
@media (max-width: 767.98px) {
  .product-topnav { padding: 14px 0 0; }
  .product-topnav__inner { position: relative; }
  .product-topnav__back {
    position: absolute;
    left: var(--gutter);
    top: 0;
    width: 26px;
    height: 26px;
  }
  .product-topnav__crumbs {
    flex: none;
    width: 100%;
    text-align: center;
    padding: 5px 0 19px;
    border-bottom: 1px solid var(--color-border);
  }
  .product { padding: 0 0 24px; }
  .product-tabs { border-top: none; }
  .product-tabs__btn { padding: 16px 12px 10px; font-weight: 600; }
  .product-tabs__btn.is-active::after { left: 12px; right: 12px; top: calc(var(--underline-top) - 10px); }
  .product-tabs .container { padding-bottom: 6px; }
  .product-tab-panel { padding-top: 24px; padding-bottom: 0; }
  .product__gallery { width: 100%; min-width: 0; }
  .product__img-wrap { max-width: none; min-width: 0; }
  .product__main-img { height: 460px; }
  .product__info { min-width: 0; }
  .product__img-wrap .product__badge-top img { width: 41.739px; height: 40px; }
  .product__img-wrap .product__avail-pill {
    box-sizing: content-box;
    width: 127px;
    height: 16px;
    padding: 6px 8px 6px 6px;
    gap: 5px;
    justify-content: flex-end;
    line-height: 16px;
  }
  .product__avail-pill {
    font-size: 13px;
    line-height: 18px;
    letter-spacing: -0.26px;
  }
  .product__avail-check { width: 16px; height: 16px; }
  .product__price { font-size: 18px; line-height: 28px; letter-spacing: -0.36px; text-align: right; }
  .product__price-group { gap: 16px; }
  .product__stars { margin-top: 8px; }
  .product__stars > svg { width: 20px; height: 20px; }
  .product__wish,
  .product__wish img.fav-icon { width: 26px; height: 26px; }
  .product__wish::before { transform: translate(-50%, -50%) scale(1.4444); }
  .product__contents-label {
    font-size: 15px;
    line-height: 16px;
    letter-spacing: -0.3px;
    margin-bottom: 16px;
  }
  .product__item { padding: 0; }
  .product__item-line { margin: 14px 0; }
  .product__bloc--contents + .product__sep { margin: 24px 0 16px; }
  .product__bloc--color { gap: 0 20px; }
  .product__bloc--color .product__label { margin-bottom: 10px; }
  .product__colors { gap: 16px; margin-bottom: 10px; }
  .product__color-opt { gap: 10px; }
  .product__extras-head { margin-bottom: 16px; }
  .product__bloc--extras .product__checkbox-box { width: 20px; height: 20px; }
  .product__extras-price { font-size: 15px; line-height: 20px; letter-spacing: -0.3px; }
  .product__extras-opts { column-gap: 24px; }
  .product__bloc--extras + .product__sep { margin: 16px 0 20px; }
  .product__qty {
    border-radius: 48px;
    border-color: rgba(var(--color-text-rgb), 0.08);
    background: var(--color-bg);
  }
  .product__qty-btn { width: 42px; height: 42px; }
  .product__qty-val { font-size: 14px; line-height: 16px; }
  .product__btn { height: 50px; border-radius: 41px; }
  .product-inside__desc {
    font-family: var(--font-italic);
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    letter-spacing: -0.32px;
    max-width: 402px;
    margin: 0 auto;
  }
  .product-inside__title {
    margin: 24px 0;
  }
  .product-inside__avatars { margin-bottom: 28px; }
  .product-inside__avatar {
    border: none;
    border-radius: 89px;
    position: relative;
  }
  .product-inside__avatar::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    border: 1px solid rgba(var(--color-text-rgb), 0.08);
    pointer-events: none;
  }
  .product-inside__avatar + .product-inside__avatar { margin-left: -5px; }
  .product-inside__slider { gap: 5px; }
  .product-inside__card {
    display: block;
    position: relative;
    height: 204px;
    border-radius: 15px;
    border: 1px solid rgba(var(--color-text-rgb), 0.08);
    background: var(--color-bg);
    padding: 0;
  }
  .product-inside__card-name {
    position: absolute;
    left: 24px; top: 24px;
    width: min(154px, calc(100% - 150px));
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 22px;
    letter-spacing: -0.36px;
  }
  .product-inside__card-img {
    position: absolute;
    right: 24px; top: 24px;
    width: 90px; height: 120px;
    border-radius: 6px;
  }
  .product-inside__card-price {
    position: absolute;
    left: 24px; top: 161px;
    font-size: 15px;
    line-height: 20px;
    letter-spacing: -0.3px;
  }
  .product-inside__card-add {
    position: absolute;
    right: 24px; top: 160px;
  }
  .product-recommended { padding: 0; }
  .product-faq { padding-top: 0; }
  .product-faq__q { padding: 24px 0; }
  .product-faq__plus { width: 18px; height: 18px; }
  #namePanel .product__name-field {
    flex-wrap: wrap;
    align-content: center;
    row-gap: 8px;
    width: 100%;
    height: 83px;
    padding: 0 24px;
    margin-bottom: 0;
    border-radius: 14px;
  }
  #namePanel .product__name-input {
    flex: 1 1 auto;
    min-width: 0;
    height: 20px;
    padding: 0;
    border: none;
    background: none;
    font-size: 15px;
  }
  #namePanel .product__field-meta { display: contents; }
  #namePanel .product__char-count {
    flex: 0 0 auto;
    font-size: 15px;
    line-height: 20px;
    letter-spacing: -0.3px;
  }
  #namePanel .product__name-actions {
    flex: 0 0 100%;
    justify-content: flex-end;
    gap: 24px;
  }
  #logoPanel .product__logo-field { flex-wrap: wrap; width: 100%; column-gap: 16px; row-gap: 4px; margin-bottom: 0; }
  #logoPanel .product__upload-text { flex: 1 1 0; min-width: 0; }
  #logoPanel .product__name-actions { flex: 0 0 100%; justify-content: flex-start; margin-left: 0; padding-left: 66px; box-sizing: border-box; }
  .product__upload-btn { width: 50px; height: 50px; border-radius: 14px; }
  .product__upload-hint,
  .product__upload-file { font-size: 15px; line-height: 20px; letter-spacing: -0.3px; }
  .product__disclaimer {
    color: var(--color-text);
    font-size: 15px;
    line-height: 20px;
    letter-spacing: -0.3px;
    margin-top: 16px;
  }
  .product-specs__table {
    border: 1px solid rgba(var(--color-text-rgb), 0.08);
    border-radius: 14px;
    overflow: hidden;
  }
  .product-specs__cell {
    height: 72px;
    padding: 0 24px;
    border-bottom: 1px solid rgba(var(--color-text-rgb), 0.08);
  }
  .product-specs__cell:last-child { border-bottom: none; }
  .product-specs__name { font-size: 15px; line-height: 20px; letter-spacing: -0.3px; color: var(--color-text); }
  .product-specs__qty { font-size: 15px; line-height: 20px; letter-spacing: -0.3px; color: var(--color-brand); }
  .product-specs__cell:nth-child(even) { background: var(--color-bg-warm); }
  .product-review {
    height: 222px;
    padding: 30px;
    border-radius: 15px;
    border: 1px solid rgba(var(--color-text-rgb), 0.08);
    background: var(--color-bg);
  }
  .product-review__avatar { top: 30px; right: 30px; }
  .product-review__name { font-size: 18px; line-height: 22px; letter-spacing: -0.36px; }
  .product-review__stars > svg { width: 20px; height: 20px; }
  .product-review__text {
    width: 246px;
    font-size: 15px;
    line-height: 20px;
    letter-spacing: -0.3px;
    color: var(--color-black);
  }
  .product-reviews__write { width: 169px; height: 50px; margin-top: 24px; }
}
@media (min-width: 768px) {
  .breadcrumbs__item--hide-mobile { display: flex; }
  .breadcrumbs__item--ellipsis { display: none; }
  .product-tabs__btn { padding: 16px 20px 14px; }
  .product-tabs__btn.is-active::after {
    left: 20px; right: 20px;
    top: calc(var(--underline-top) - 14px);

  }
  .product__bloc--color {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 20px;
  }
  .product__bloc--color .product__label {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    margin-bottom: 0;
  }
  .product { padding: 32px 0 clamp(48px, calc(2.7778vw + 26.666368px), 80px); }
  .product__layout { grid-template-columns: 1fr; gap: 32px; padding: 0; }
  .product__sep { margin: 20px 0; }
  .product__img-wrap { max-width: none; }
  .product__main-img { border-radius: 0; }
  .product__info { padding: 0 var(--gutter); }
  .product__price { font-size: 22px; }
  .product__bloc--buy { flex-direction: row; align-items: center; gap: 12px; }
  .product__qty { width: 120px; height: 48px; }
  .product__cta { flex-direction: row; flex: 1; }
  .product__btn { flex: 1; }
  .product-inside__card { width: 280px; max-width: none; }
  .product-inside__card-img { width: 88px; height: 112px; }
  .product-desc__cols { flex-direction: row; gap: clamp(32px, calc(2.691vw + 11.33296px), 63px); }
  .product-desc__cols p { flex: 1; }

  .product-desc__cols:has(> :not(p)),
  .product-desc__cols:has(> p:nth-of-type(3)) {
    display: block;
    columns: 2;
    column-gap: clamp(32px, calc(2.691vw + 11.33296px), 63px);
  }
  .product-desc__cols:has(> :not(p)) > *,
  .product-desc__cols:has(> p:nth-of-type(3)) > * { break-inside: avoid; }
}

.product-desc__cols ul,
.product-desc__cols ol { margin: 0 0 16px; padding-left: 20px; }
.product-desc__cols ul { list-style: disc; }
.product-desc__cols ol { list-style: decimal; }
.product-desc__cols li { margin-bottom: 8px; }
@media (min-width: 768px) and (max-width: 899.98px) {
  .product-topnav { padding: 16px 0; }
  .product-topnav__inner { position: relative; }
  .product-topnav__back {
    position: absolute;
    left: var(--gutter);
    top: 50%;
    transform: translateY(-50%);
    width: 26px;
    height: 26px;
  }
  .product-topnav__crumbs { flex: none; width: 100%; text-align: center; }
  .product-topnav__crumbs .breadcrumbs__list {
    font-size: 13px;
    line-height: 16px;
    letter-spacing: -0.26px;
  }
  .product__layout { gap: 32px; }
  .product__main-img { height: 660px; object-fit: cover; }
  .product__dots { bottom: 16px; }
  .product__img-wrap .product__badge-top { top: 30px; left: 30px; }
  .product__img-wrap .product__badge-top img { width: 41.739px; height: 40px; }
  .product__img-wrap .product__avail-pill {
    top: 30px;
    right: 30px;
    width: auto;
    height: 28px;
    padding: 6px 8px 6px 6px;
    gap: 5px;
    font-size: 13px;
    line-height: 16px;
    letter-spacing: -0.26px;
  }
  .product__img-wrap .product__avail-pill .product__avail-check { width: 16px; height: 16px; }
  .product__title { font-size: 22px; line-height: 28px; letter-spacing: -0.44px; }
  .product__stars { margin-top: 8px; }
  .product__stars > svg { width: 20px; height: 20px; }
  .product__price {
    font-size: 18px;
    line-height: 28px;
    letter-spacing: -0.36px;
    text-align: right;
  }
  .product__price-group { gap: 24px; }
  .product__wish,
  .product__wish img.fav-icon { width: 26px; height: 26px; }
  .product__wish::before { transform: translate(-50%, -50%) scale(1.4444); }
  .product__bloc--title + .product__sep { margin: 16px 0; }
  .product__contents-label {
    font-size: 15px;
    line-height: 16px;
    letter-spacing: -0.3px;
    margin-bottom: 20px;
  }
  .product__item { padding: 0; }
  .product__item-line { margin: 14px 0; }
  .product__item-info { flex-direction: row; align-items: center; gap: 8px; }
  .product__item-name { flex: 0 1 auto; }
  .product__item-avail { font-size: 13px; line-height: 18px; letter-spacing: -0.26px; }
  .product__item-avail .product__avail-check { width: 16px; height: 16px; }
  .product__items-list { margin-bottom: 15px; }
  .product__bloc--contents + .product__sep { margin: 24px 0 16px; }
  .product__bloc--color { gap: 10px 20px; align-items: center; }
  .product__extras-head { margin-bottom: 16px; }
  .product__bloc--extras .product__checkbox-box { width: 20px; height: 20px; }
  .product__extras-price { font-size: 15px; line-height: 20px; letter-spacing: -0.3px; }
  .product__extras-opts { column-gap: 24px; }
  .product__bloc--buy { flex-wrap: wrap; }
  .product__qty {
    width: 280px;
    height: 50px;
    border-radius: 48px;
    border: 1px solid rgba(var(--color-text-rgb), 0.08);
    background: var(--color-bg);
  }
  .product__cta { flex: none; gap: 12px; }
  .product__btn { flex: none; width: 198px; height: 50px; border-radius: 41px; }
  .product { padding: 0 0 24px; }
  .product-tabs { border-top: none; }
  .product-tabs__btn { padding: 16px 12px 10px; }
  .product-tabs__btn.is-active::after { left: 12px; right: 12px; top: calc(var(--underline-top) - 10px); }
  .product-tabs .container { padding-bottom: 14px; }
  .product-tab-panel { padding-top: 24px; padding-bottom: 0; }
  .product-desc__cols { gap: 24px; }
  .product-desc__cols p { font-size: 15px; line-height: 20px; letter-spacing: -0.3px; }
  .product-recommended { padding: 0; }
  .product-faq { padding-top: 0; }
  .product-inside__desc {
    font-family: var(--font-italic);
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    letter-spacing: -0.32px;
    max-width: 402px;
    margin: 0 auto;
  }
  .product-inside__title {
    margin: 24px 0;
  }
  .product-inside__avatars { margin-bottom: 24px; }
  .product-inside__avatar {
    border: none;
    border-radius: 89px;
    position: relative;
  }
  .product-inside__avatar::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    border: 1px solid rgba(var(--color-text-rgb), 0.08);
    pointer-events: none;
  }
  .product-inside__avatar + .product-inside__avatar { margin-left: -5px; }
  .product-inside__slider { gap: 8px; }
  .product-inside__card {
    display: block;
    position: relative;
    width: 316px;
    height: 204px;
    border-radius: 15px;
    border: 1px solid rgba(var(--color-text-rgb), 0.08);
    background: var(--color-bg);
    padding: 0;
  }
  .product-inside__card-name {
    position: absolute;
    left: 24px; top: 24px;
    width: 154px;
    font-family: var(--font-italic);
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 22px;
    letter-spacing: -0.36px;
  }
  .product-inside__card-img {
    position: absolute;
    right: 24px; left: auto; top: 24px;
    width: 90px; height: 120px;
    border-radius: 6px;
  }
  .product-inside__card-price {
    position: absolute;
    left: 24px; top: 161px;
    font-size: 15px;
    line-height: 20px;
    letter-spacing: -0.3px;
  }
  .product-inside__card-add {
    position: absolute;
    right: 24px; top: 160px;
  }
  #namePanel .product__name-field {
    flex-wrap: nowrap;
    width: 100%;
    height: 50px;
    padding: 0 16px;
    gap: 16px;
    margin-bottom: 0;
    border-radius: 14px;
  }
  #namePanel .product__name-input {
    flex: 1 1 auto;
    height: 100%;
    padding: 0;
    border: none;
    background: none;
    font-size: 15px;
  }
  #namePanel .product__field-meta { flex: 0 0 auto; gap: 16px; }
  .product__char-count { font-size: 15px; line-height: 20px; letter-spacing: -0.3px; text-align: center; }
  #logoPanel .product__logo-field { flex-wrap: nowrap; width: 100%; gap: 16px; margin-bottom: 0; }
  #logoPanel .product__upload-text { flex: 1 1 auto; }
  #logoPanel .product__name-actions { flex: 0 0 auto; margin-left: auto; }
  .product__upload-btn { width: 50px; height: 50px; border-radius: 14px; }
  .product__upload-hint,
  .product__upload-file { font-size: 15px; line-height: 20px; letter-spacing: -0.3px; }
  #logoPanel .product__field-btn { font-size: 16px; }
  .product__disclaimer {
    color: var(--color-text);
    font-size: 15px;
    line-height: 20px;
    letter-spacing: -0.3px;
    margin-top: 16px;
  }
  .product-tabs__btn { font-weight: 600; }
  .product-specs__table { display: grid; grid-template-columns: 1fr 1fr; border-top: none; }
  .product-specs__cell {
    height: 72px;
    padding: 0 24px;
    border-bottom: 1px solid rgba(var(--color-text-rgb), 0.08);
    border-top: none;
  }
  .product-specs__name { font-size: 15px; line-height: 20px; letter-spacing: -0.3px; color: var(--color-text); }
  .product-specs__qty { font-size: 15px; line-height: 20px; letter-spacing: -0.3px; color: var(--color-brand); }
  .product-specs__cell--l {
    border-left: 1px solid rgba(var(--color-text-rgb), 0.08);
    border-right: 1px solid rgba(var(--color-text-rgb), 0.08);
  }
  .product-specs__cell--r { border-right: 1px solid rgba(var(--color-text-rgb), 0.08); }
  .product-specs__cell--first { border-top: 1px solid rgba(var(--color-text-rgb), 0.08); }
  .product-specs__cell--l.product-specs__cell--first { border-top-left-radius: 14px; }
  .product-specs__cell--r.product-specs__cell--first { border-top-right-radius: 14px; }
  .product-specs__cell--l.product-specs__cell--last { border-bottom-left-radius: 14px; }
  .product-specs__cell--r.product-specs__cell--last { border-bottom-right-radius: 14px; }
  .product-specs__cell:nth-child(3), .product-specs__cell:nth-child(4),
  .product-specs__cell:nth-child(7), .product-specs__cell:nth-child(8) { background: var(--color-bg-warm); }
  .product-review {
    height: 222px;
    padding: 30px;
    border-radius: 15px;
    border: 1px solid rgba(var(--color-text-rgb), 0.08);
    background: var(--color-bg);
  }
  .product-review__avatar { top: 30px; right: 30px; }
  .product-review__name { font-size: 18px; line-height: 22px; letter-spacing: -0.36px; }
  .product-review__stars > svg { width: 20px; height: 20px; }
  .product-review__text {
    width: 246px;
    font-size: 15px;
    line-height: 20px;
    letter-spacing: -0.3px;
    color: var(--color-black);
  }
  .product-reviews__write { width: 198px; height: 50px; margin-top: 24px; }
}
@media (min-width: 900px) {
  .product__layout {
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    align-items: start;
    width: min(100% - var(--gutter), 1618px);
    margin: 0;
  }
  .product__gallery {
    flex-direction: row;
    align-items: flex-start;
    gap: 10px;
  }
  .product__img-wrap { flex: 1; margin: 0; }
  .product__info { padding: 0; }
  .product__dots { display: none; }
  .product__thumbs {
    display: flex;
    flex-direction: row;
    gap: 8px;
    position: absolute;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    flex-shrink: 0;
  }
  .product__thumb {
    width: 45px; height: 60px;
    border-radius: 8px;
    overflow: hidden;
    border: 2px solid transparent;
    transition: border-color var(--transition), opacity var(--transition);
    flex-shrink: 0;
    padding: 0;
  }
  .product__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .product__thumb.is-active { border-color: var(--color-brand); }
  .product__thumb:hover:not(.is-active) { opacity: 0.8; }
  .product__img-wrap .product__badge-top { display: none; }
  .product__img-wrap .product__avail-pill { display: none; }
  .product__title-group .product__badge-top { display: flex; }
  .product__title-group .product__avail-pill { display: inline-flex; }
  .product { padding-top: 0; }
  .page-product main { position: relative; }
  .product-topnav {
    position: absolute;
    top: var(--breadcrumbs-top);
    left: 0; right: 0;
    padding: 0;
    z-index: 5;
    pointer-events: none;
  }
  .product-topnav * { pointer-events: auto; }
  .product__info { padding-top: 120px; }
  .product-tabs { border-top: none; border-bottom: none; }
  .product-tabs .container { border-bottom: 1px solid var(--color-border); padding-bottom: 30px; }
  .product-tabs__nav { height: 20px; gap: 42px; align-items: flex-start; overflow: visible; }
  .product-tabs__btn { padding: 0; height: 20px; line-height: 20px; }
  .product-tabs__btn.is-active::after {
    left: 0; right: 0;
    top: var(--underline-top);

  }
}
@media (min-width: 1024px) {
  .product-topnav__back { display: none; }
  .product__layout {
    grid-template-columns: auto 1fr;
    gap: 30px;
    align-items: start;
  }
  .product__img-wrap {
    flex: none;
    width: clamp(520px, calc(44.02174vw + 69.217px), 844px);
  }
  .product__main-img {
    width: 100%;
    height: clamp(680px, calc(54.34783vw + 123.478px), 1080px);
    object-fit: cover;
  }
  .product__img-wrap .product__main-img { border-radius: 0; }
  .product__thumb {
    width: clamp(45px, calc(4.75543vw - 3.696px), 80px);
    height: clamp(60px, calc(6.79348vw - 9.565px), 110px);
  }
  .product__bloc--buy { flex-direction: column; gap: 12px; }
  .product__qty { width: 100%; height: 50px; }
  .product__cta { flex: none; width: 100%; gap: 12px; }
  .product__btn { flex: 1; height: 50px; }
  .product__price { font-size: 24px; }
  .product__sep { margin: 22px 0; }
  .product-inside__card { width: 320px; }
}
@media (min-width: 1024px) and (max-width: 1279.98px) {
  .product__title { font-size: 22px; line-height: 28px; letter-spacing: -0.44px; }
  .product__title-group { gap: 16px; }
  .product__price-group { gap: 16px; }
  .product__info { padding-top: 68px; }
  .product__title-group .product__avail-pill { display: none; }
  .product__stars { flex-wrap: wrap; }
  .product__stars .product__avail-pill--stars { display: inline-flex; margin-left: 9px; }
  .product__avail-pill--stars {
    width: 127px;
    height: 28px;
    padding: 6px 8px 6px 6px;
    justify-content: flex-end;
    gap: 5px;
    font-size: 13px;
    line-height: 18px;
    letter-spacing: -0.26px;
  }
  .product__avail-pill--stars .product__avail-check { width: 16px; height: 16px; }
  .product__price {
    font-size: 18px;
    line-height: 28px;
    letter-spacing: -0.36px;
    text-align: right;
  }
  .product__wish,
  .product__wish img.fav-icon { width: 24px; height: 24px; }
  .product__wish::before {
    transform: translate(-50%, -50%) scale(1.3333);
  }
  .product__contents-label {
    font-size: 15px;
    line-height: 16px;
    letter-spacing: -0.3px;
    margin-bottom: 16px;
  }
  .product__item-info { flex-direction: column; align-items: flex-start; gap: 4px; }
  .product__item { padding: 0; }
  .product__item-line { margin: 14px 0; }
  .product__items-list { margin-bottom: 14px; }
  .product__bloc--color { gap: 10px 20px; align-items: flex-start; }
  .product__item-avail {
    font-size: 13px;
    line-height: 18px;
    letter-spacing: -0.26px;
  }
  .product__item-avail .product__avail-check { width: 16px; height: 16px; }
  .product__cta { gap: 16px; }
  .product__btn { font-weight: 600; line-height: 20px; }
  .product-tabs__btn { line-height: 20px; font-weight: 600; }
  .product-tabs .container { padding-bottom: 24px; }
  .product-tab-panel { padding-top: 24px; }
  .product { padding-bottom: 26px; }
  .product-desc__cols { gap: 24px; }
  .product-desc__cols p { font-size: 15px; line-height: 20px; letter-spacing: -0.3px; }
  .product-inside__desc {
    font-family: var(--font-italic);
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    letter-spacing: -0.32px;
    max-width: 402px;
    margin: 0 auto;
  }
  .product-inside__title {
    margin: 24px 0;
  }
  .product-inside__avatars { margin-bottom: 24px; }
  .product-inside__avatar + .product-inside__avatar { margin-left: -5px; }
  .product-inside__slider { gap: 8px; }
  .product-inside__card {
    display: block;
    position: relative;
    width: 316px;
    height: 204px;
    border-radius: 15px;
    border: 1px solid rgba(var(--color-text-rgb), 0.08);
    background: var(--color-bg);
    padding: 0;
  }
  .product-inside__card-name {
    position: absolute;
    left: 24px; top: 24px;
    width: 154px;
    font-family: var(--font-italic);
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 22px;
    letter-spacing: -0.36px;
  }
  .product-inside__card-img {
    position: absolute;
    right: 24px; left: auto; top: 24px;
    width: 90px; height: 120px;
    border-radius: 6px;
  }
  .product-inside__card-price {
    position: absolute;
    left: 24px; top: 161px;
    font-size: 15px;
    line-height: 20px;
    letter-spacing: -0.3px;
  }
  .product-inside__card-add {
    position: absolute;
    right: 24px; top: 160px;
  }
  .product__extras-price {
    font-size: 15px;
    line-height: 20px;
    letter-spacing: -0.3px;
    text-align: right;
  }
  .product__bloc--extras .product__checkbox-box { width: 20px; height: 20px; }
  .product-review {
    height: 222px;
    padding: 24px;
    border-radius: 15px;
    border: 1px solid rgba(var(--color-text-rgb), 0.08);
    background: var(--color-bg);
  }
  .product-review__avatar { top: 24px; right: 24px; }
  .product-review__name { font-size: 18px; line-height: 22px; letter-spacing: -0.36px; }
  .product-review__stars > svg { width: 20px; height: 20px; }
  .product-review__text {
    width: 246px;
    font-size: 15px;
    line-height: 20px;
    letter-spacing: -0.3px;
    color: var(--color-black);
  }
  .product-reviews__write { width: 198px; height: 50px; margin-top: 24px; }
  .product-specs__table {
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-top: none;
  }
  .product-specs__cell {
    height: 60px;
    padding: 0 24px;
    border-bottom: 1px solid rgba(var(--color-text-rgb), 0.08);
    border-top: none;
  }
  .product-specs__name {
    font-size: 15px;
    line-height: 20px;
    letter-spacing: -0.3px;
    color: var(--color-text);
  }
  .product-specs__qty {
    font-size: 16px;
    line-height: 20px;
    letter-spacing: -0.32px;
    color: var(--color-brand);
  }
  .product-specs__cell--l {
    border-left: 1px solid rgba(var(--color-text-rgb), 0.08);
    border-right: 1px solid rgba(var(--color-text-rgb), 0.08);
  }
  .product-specs__cell--r {
    border-right: 1px solid rgba(var(--color-text-rgb), 0.08);
  }
  .product-specs__cell--first {
    border-top: 1px solid rgba(var(--color-text-rgb), 0.08);
  }
  .product-specs__cell--l.product-specs__cell--first { border-top-left-radius: 14px; }
  .product-specs__cell--r.product-specs__cell--first { border-top-right-radius: 14px; }
  .product-specs__cell--l.product-specs__cell--last { border-bottom-left-radius: 14px; }
  .product-specs__cell--r.product-specs__cell--last { border-bottom-right-radius: 14px; }
  .product-specs__cell:nth-child(3),
  .product-specs__cell:nth-child(4),
  .product-specs__cell:nth-child(7),
  .product-specs__cell:nth-child(8) { background: var(--color-bg-warm); }
  #namePanel .product__name-field {
    flex-wrap: nowrap;
    width: 100%;
    height: 50px;
    padding: 0 15px;
    gap: 16px;
    margin-bottom: 0;
    border: 1px solid rgba(var(--color-text-rgb), 0.08);
    border-radius: 15px;
  }
  #namePanel .product__name-input {
    flex: 1 1 auto;
    height: 100%;
    padding: 0;
    border: none;
    background: none;
    font-size: 15px;
  }
  #namePanel .product__field-meta { flex: 0 0 auto; gap: 16px; }
  .product__char-count {
    font-size: 15px;
    line-height: 20px;
    letter-spacing: -0.3px;
    text-align: center;
    color: var(--color-brand);
  }
  #logoPanel .product__logo-field {
    flex-wrap: nowrap;
    width: 100%;
    gap: 16px;
    margin-bottom: 0;
  }
  #logoPanel .product__upload-text { flex: 1 1 auto; }
  #logoPanel .product__name-actions { flex: 0 0 auto; margin-left: auto; }
  .product__upload-btn { width: 50px; height: 50px; border-radius: 14px; }
  .product__upload-hint,
  .product__upload-file { font-size: 15px; line-height: 20px; letter-spacing: -0.3px; }
  #logoPanel .product__field-btn { font-size: 16px; }
  .product__disclaimer {
    color: var(--color-text);
    font-size: 15px;
    line-height: 20px;
    letter-spacing: -0.3px;
    width: 437px;
    margin-top: 16px;
  }
}
@media (min-width: 1024px) and (max-width: 1759.98px) {
  .product-recommended { padding: 0; }
  .product-faq { padding-top: 0; }
}
@media (min-width: 1280px) {
  .product__layout { gap: clamp(60px, calc(3.5417vw + 14.67px), 77px); }
  .product__title { font-size: 40px; line-height: 42px; letter-spacing: -0.8px; }
  .product__bloc--buy { flex-direction: row; align-items: center; gap: 12px; }
  .product__qty { width: 120px; height: 48px; }
  .product__cta { flex: 1; gap: 10px; }
  .product__btn { flex: 1; height: 52px; }
  .product-inside__card { width: 340px; }
  .product__wish,
  .product__wish img.fav-icon { width: 26px; height: 26px; }
  .product__wish::before {
    width: 28px; height: 28px;
    transform: translate(-50%, -50%) scale(0.9286);
    clip-path: path('M14.0019 6.35945C7.96251 -1.05083 1.58586 4.21449 1.50195 9.89041C1.50195 18.3403 11.6121 25.2758 14.0019 25.2758C16.3918 25.2758 26.502 18.3403 26.502 9.89041C26.418 4.21449 20.0414 -1.05083 14.0019 6.35945Z');
  }
  .product__item .product__item-name {
    flex: none;
    width: max-content;
    position: relative;
  }
  .product__item .product__item-name::after {
    content: ''; position: absolute; left: 0; right: 0;
    top: calc(var(--underline-top) - 3px); height: 0.55em;
    background: url('/wp-content/themes/thebox/assets/dist/ico/line_blog_brand_wave.svg') left center / 0.385em 0.55em round no-repeat;

    clip-path: inset(0 100% 0 0); transition: clip-path .4s ease; pointer-events: none;
  }
  .product__item:hover .product__item-name::after { clip-path: inset(0 0 0 0); }
  .product__item .product__item-avail {
    opacity: 0;
    transition: opacity .3s ease;
    pointer-events: none;
  }
  .product__item:hover .product__item-avail { opacity: 1; }
}
@media (min-width: 1440px) {
  .product__gallery { gap: 24px; align-items: flex-start; }
  .product__thumbs {
    position: static;
    transform: none;
    bottom: auto;
    left: auto;
    flex-direction: column;
    gap: 10px;
    padding-top: clamp(68px, calc(5.8036vw + 8.57px), 120px);
    align-self: flex-start;
  }
  .product-inside__card { width: 360px; gap: 18px; padding: 18px; }
  .product-inside__card-img { width: 94px; height: 120px; }
}
@media (min-width: 1280px) and (max-width: 1919.98px) {
  .product-inside__slider-wrap {
    width: 100%;
    max-width: var(--container-narrow);
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
  }
  .product-specs__name { font-size: 15px; }
  .product-specs__qty { font-size: 16px; }
}
@media (min-width: 1600px) and (max-width: 1919.98px) {
  .product-specs__name,
  .product-specs__qty { font-size: 16px; }
}
@media (min-width: 1840px) and (max-width: 1919.98px) {
  .product-specs__name,
  .product-specs__qty { font-size: 17px; }
  .product__qty-val { font-size: 17px; }
}
@media (min-width: 1760px) {
  .page-product main { overflow-x: clip; }
  .product__layout {
    grid-template-columns: 948px 593px;
    gap: 77px;
    justify-content: start;
    padding: 0;
    max-width: none;
    margin: 0;
  }
  .product__sep { margin: 24px 0; }
  .product__title-row { flex-wrap: nowrap; }
  .product__title-group { gap: 16px; flex-wrap: nowrap; }
  .product__price-group { gap: 40px; }
  .product__price { font-size: 24px; line-height: 32px; letter-spacing: -0.48px; }
  .product__stars { margin-top: 16px; }
  .product__gallery {
    gap: 24px;
    align-items: flex-start;
  }
  .product__img-wrap {
    flex: none;
    width: 844px;
  }
  .product__main-img {
    width: 844px;
    height: 1080px;
    border-radius: 0;
    object-fit: cover;
  }
  .product__img-wrap .product__main-img { border-radius: 0; }
  .product__thumb { width: 80px; height: 110px; border-radius: 10px; }
  .product__badge-top img { width: 33px; height: 32px; }
  .product__contents-label { margin-bottom: 19px; letter-spacing: -0.34px; }
  .product__item { padding: 0; }
  .product__item-line { max-width: 370px; margin: 16px 0; }
  .product__items-list { margin-bottom: 16px; }
  .product__item-info { max-width: none; }
  .product__link-italic { padding-bottom: 0; line-height: 20px; }
  .product__color-opt { gap: 10px; }
  .product__bloc--color { gap: 14px 10px; }
  .product__size-info { letter-spacing: -0.34px; }
  .product__check-row { gap: 16px; }
  .product__extras-head { margin-bottom: 16px; }
  .product__extras-price { font-size: 15px; line-height: 20px; letter-spacing: -0.3px; }
  #namePanel { margin-top: 24px; padding: 0; border: none; background: none; }
  #namePanel .product__name-field {
    flex-wrap: nowrap;
    width: 592px;
    height: 64px;
    padding: 0 24px;
    gap: 24px;
    margin-bottom: 16px;
    border: 1px solid rgba(var(--color-text-rgb), 0.08);
    border-radius: 15px;
  }
  #namePanel .product__name-input {
    flex: 1 1 auto;
    height: 100%;
    padding: 0;
    border: none;
    background: none;
    font-size: 15px;
  }
  #namePanel .product__field-meta {
    flex: 0 0 auto;
    gap: 24px;
  }
  #namePanel .product__disclaimer,
  #logoPanel .product__disclaimer { margin-top: 0; margin-bottom: 0; }
  #logoPanel { margin-top: 24px; padding: 0; border: none; background: none; }
  #logoPanel .product__logo-field {
    flex-wrap: nowrap;
    width: 592px;
    gap: 16px;
    margin-bottom: 16px;
  }
  #logoPanel .product__upload-text { flex: 1 1 auto; }
  #logoPanel .product__name-actions { flex: 0 0 auto; margin-left: auto; }
  .product__bloc--buy { gap: 20px; }
  .product__qty {
    width: 174px; height: 70px;
    border-radius: 43px;
    border-color: rgba(var(--color-text-rgb), 0.08);
    background: var(--color-bg);
  }
  .product__qty-btn { width: 50px; height: 50px; }
  .product__qty-val { font-size: 17px; }
  .product__cta { gap: 20px; }
  .product__btn { height: 70px; line-height: 20px; border-radius: 41px; }
  .product__btn--cart { flex: 0 0 188px; }
  .product__btn--fast { flex: none; width: 188px; }
  .product-desc__cols {
    flex-direction: row;
    max-width: 1275px;
    margin: 0;
  }
  .product-desc__cols p {
    flex: 0 0 606px;
    font-size: 17px;
    line-height: 24px;
    letter-spacing: -0.34px;
  }
  #tab-specs { padding-top: 50px; }
  .product-specs__table {
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-top: none;
  }
  .product-specs__cell {
    height: 70px;
    padding: 0 34px;
    border-bottom: 1px solid rgba(var(--color-text-rgb), 0.08);
    border-top: none;
  }
  .product-specs__name {
    font-size: 17px;
    line-height: 24px;
    letter-spacing: -0.34px;
  }
  .product-specs__qty {
    font-size: 17px;
    line-height: 24px;
    letter-spacing: -0.34px;
    color: var(--color-brand);
  }
  .product-specs__cell--l {
    border-left: 1px solid rgba(var(--color-text-rgb), 0.08);
    border-right: 1px solid rgba(var(--color-text-rgb), 0.08);
  }
  .product-specs__cell--r {
    border-right: 1px solid rgba(var(--color-text-rgb), 0.08);
  }
  .product-specs__cell--first {
    border-top: 1px solid rgba(var(--color-text-rgb), 0.08);
  }
  .product-specs__cell--l.product-specs__cell--first { border-top-left-radius: 14px; }
  .product-specs__cell--r.product-specs__cell--first { border-top-right-radius: 14px; }
  .product-specs__cell--l.product-specs__cell--last { border-bottom-left-radius: 14px; }
  .product-specs__cell--r.product-specs__cell--last { border-bottom-right-radius: 14px; }
  .product-specs__cell:nth-child(3),
  .product-specs__cell:nth-child(4),
  .product-specs__cell:nth-child(7),
  .product-specs__cell:nth-child(8) { background: var(--color-bg-warm); }
  .product-specs__cell--small .product-specs__name {
    font-size: 15px;
    line-height: 20px;
    letter-spacing: -0.3px;
  }
  .product-inside__desc {
    font-family: var(--font-italic);
    font-weight: 600;
    font-size: 22px;
    line-height: 28px;
    letter-spacing: -0.44px;
    max-width: 597px;
    margin-bottom: 30px;
  }
  .product-inside__title {
    margin: 30px 0;
  }
  .product-inside__avatars { margin-bottom: 50px; }
  .product-inside__avatar {
    width: 70px; height: 70px;
    border-radius: 89px;
    border: 1px solid rgba(var(--color-text-rgb), 0.08);
  }
  .product-inside__avatar + .product-inside__avatar { margin-left: -5px; }
  .product-inside__slider {
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    justify-content: flex-start;
    gap: 24px;
  }
  .product-inside__card {
    display: block;
    position: relative;
    width: 422px; height: 320px;
    border-radius: 15px;
    padding: 0;
    border: 1px solid rgba(var(--color-text-rgb), 0.08);
  }
  .product-inside__card-name {
    position: absolute;
    left: 40px; top: 40px;
    width: 203px;
    font-size: 22px; line-height: 28px; letter-spacing: -0.44px;
  }
  .product-inside__card-img {
    position: absolute;
    left: 288px; top: 40px;
    width: 94px; height: 130px;
    border-radius: 6px;
  }
  .product-inside__card-price {
    position: absolute;
    left: 40px; top: 256px;
    font-size: 20px; line-height: 24px; letter-spacing: -0.4px;
  }
  .product-inside__card-add {
    position: absolute;
    right: 40px; left: auto; top: 258px;
  }
  .product-inside__slider-wrap { max-width: var(--container-narrow); margin: 4px auto 0; }
  .product-recommended { padding: 0; }
  .product-recommended__title { font-size: var(--fs-section-h2); line-height: var(--lh-section-h2); }
  .product-faq { padding-top: 0; }
  .product-faq__title {
    font-size: var(--fs-section-h2);
    line-height: var(--lh-section-h2);
    letter-spacing: -0.8px;
  }
}
@media (min-width: 1920px) {
  .product__layout { margin-left: max(0px, calc(50% - 960px)); }
}
@media (max-width: 567.98px) {
  .product-inside__card { width: 100%; max-width: none; }
}
@media (min-width: 568px) and (max-width: 1023.98px) {
  .product-inside__slider { gap: 8px; }
  .product-inside__card { width: calc((100% - 8px) / 2); max-width: none; }
}
@media (min-width: 1024px) and (max-width: 1279.98px) {
  .product-inside__slider { gap: 8px; }
  .product-inside__card { width: calc((100% - 2 * 8px) / 3); max-width: none; }
}
@media (min-width: 1280px) and (max-width: 1759.98px) {
  .product-inside__slider { gap: 24px; }
  .product-inside__card { width: calc((100% - 2 * 24px) / 3); max-width: none; }
}
@media (min-width: 1280px) and (max-width: 1759.98px) {
  .product-specs__table { display: grid; grid-template-columns: 1fr 1fr; border-top: none; }
  .product-specs__cell {
    height: 60px;
    padding: 0 24px;
    border-bottom: 1px solid rgba(var(--color-text-rgb), 0.08);
  }
  .product-specs__cell--l {
    border-left: 1px solid rgba(var(--color-text-rgb), 0.08);
    border-right: 1px solid rgba(var(--color-text-rgb), 0.08);
  }
  .product-specs__cell--r { border-right: 1px solid rgba(var(--color-text-rgb), 0.08); }
  .product-specs__cell--first { border-top: 1px solid rgba(var(--color-text-rgb), 0.08); }
  .product-specs__cell--l.product-specs__cell--first { border-top-left-radius: 14px; }
  .product-specs__cell--r.product-specs__cell--first { border-top-right-radius: 14px; }
  .product-specs__cell--l.product-specs__cell--last { border-bottom-left-radius: 14px; }
  .product-specs__cell--r.product-specs__cell--last { border-bottom-right-radius: 14px; }
  .product-specs__cell:nth-child(3),
  .product-specs__cell:nth-child(4),
  .product-specs__cell:nth-child(7),
  .product-specs__cell:nth-child(8) { background: var(--color-bg-warm); }
}
@media (min-width: 1280px) and (max-width: 1759.98px) {
  #namePanel { margin-top: 24px; }
  #namePanel .product__name-field {
    flex-wrap: nowrap;
    width: 100%;
    height: 64px;
    padding: 0 24px;
    gap: 24px;
    margin-bottom: 16px;
    border: 1px solid rgba(var(--color-text-rgb), 0.08);
    border-radius: 15px;
  }
  #namePanel .product__name-input { flex: 1 1 auto; height: 100%; font-size: 15px; }
  #namePanel .product__field-meta { flex: 0 0 auto; gap: 24px; }
  #namePanel .product__char-count {
    font-size: 15px;
    line-height: 20px;
    letter-spacing: -0.3px;
    text-align: center;
    color: var(--color-brand);
  }
  #namePanel .product__char-max { color: var(--color-text); }
  #logoPanel { margin-top: 24px; }
  #logoPanel .product__logo-field { flex-wrap: nowrap; width: 100%; gap: 16px; margin-bottom: 16px; }
  #logoPanel .product__upload-text { flex: 1 1 auto; min-width: 0; }
  #logoPanel .product__name-actions { flex: 0 0 auto; margin-left: auto; }
  .product__upload-btn { width: 64px; height: 64px; border-radius: 15px; }
  .product__upload-hint { font-size: 17px; line-height: 24px; letter-spacing: -0.34px; }
  #namePanel .product__disclaimer,
  #logoPanel .product__disclaimer { margin-top: 0; }
  .product__bloc--buy { gap: 20px; }
  .product__qty {
    width: 174px; height: 70px;
    border-radius: 43px;
    border-color: rgba(var(--color-text-rgb), 0.08);
    background: var(--color-bg);
  }
  .product__qty-btn { width: 50px; height: 50px; }
  .product__qty-val { font-size: 17px; }
  .product__cta { gap: 20px; }
  .product__btn { height: 70px; line-height: 20px; border-radius: 41px; }
  .product-desc__cols { max-width: 1275px; margin: 0; }
  .product-desc__cols p { font-size: 17px; line-height: 24px; letter-spacing: -0.34px; }
  .product-inside__desc {
    font-family: var(--font-italic);
    font-weight: 600;
    font-size: 22px;
    line-height: 28px;
    letter-spacing: -0.44px;
    max-width: 597px;
    margin: 0 auto 30px;
  }
  .product-inside__title {
    margin: 30px 0;
  }
  .product-inside__avatars { margin-bottom: 50px; }
  .product-inside__avatar {
    width: 70px; height: 70px;
    border-radius: 89px;
    border: 1px solid rgba(var(--color-text-rgb), 0.08);
  }
  .product-inside__avatar + .product-inside__avatar { margin-left: -5px; }
  .product-inside__slider { overflow-x: auto; scroll-snap-type: x mandatory; justify-content: flex-start; gap: 24px; }
  .product-inside__card {
    display: block;
    position: relative;
    width: calc((100% - 2 * 24px) / 3);
    max-width: none;
    height: 300px;
    border-radius: 15px;
    padding: 0;
    border: 1px solid rgba(var(--color-text-rgb), 0.08);
  }
  .product-inside__card-name {
    position: absolute;
    left: 40px; top: 40px;
    width: min(203px, calc(100% - 190px));
    font-family: var(--font-italic);
    font-style: normal;
    font-weight: 600;
    font-size: 22px; line-height: 28px; letter-spacing: -0.44px;
  }
  .product-inside__card-img {
    position: absolute;
    right: 40px; left: auto; top: 40px;
    width: 94px; height: 130px;
    border-radius: 6px;
  }
  .product-inside__card-price {
    position: absolute;
    left: 40px; top: 236px;
    font-size: 20px; line-height: 24px; letter-spacing: -0.4px;
  }
  .product-inside__card-add {
    position: absolute;
    right: 40px; left: auto; top: 238px;
  }
  .product__badge-top img { width: 33px; height: 32px; }
  .product__title-group { gap: 16px; }
  .page-product main { overflow-x: clip; }
}
@media (min-width: 1514px) and (max-width: 1759.98px) {
  .product-inside__card { height: 310px; }
  .product-inside__card-price { top: 246px; }
  .product-inside__card-add { top: 248px; }
}
@media (min-width: 1280px) and (max-width: 1759.98px) {
  .product__qty { width: 150px; }
  .product__cta { gap: 14px; }
  .product__btn { padding: 0 16px; }
}
@media (min-width: 900px) and (max-width: 1023.98px) {
  .product__info { padding-top: 68px; }
  .product { padding-bottom: 26px; }
  .product__layout { grid-template-columns: clamp(440px, calc(64.516vw - 140.6px), 520px) 1fr; }
  .product__main-img { height: clamp(575px, calc(84.677vw - 187.1px), 680px); object-fit: cover; }
  .product__title-group { gap: 16px; }
  .product__price-group { gap: 16px; }
  .product__price { font-size: 18px; line-height: 28px; letter-spacing: -0.36px; text-align: right; }
  .product__wish,
  .product__wish img.fav-icon { width: 24px; height: 24px; }
  .product__wish::before { transform: translate(-50%, -50%) scale(1.3333); }
  .product__title-group .product__avail-pill { display: none; }
  .product__stars { flex-wrap: wrap; }
  .product__stars .product__avail-pill--stars {
    display: inline-flex;
    margin-left: 9px;
    width: 127px;
    height: 28px;
    padding: 6px 8px 6px 6px;
    justify-content: flex-end;
    gap: 5px;
    font-size: 13px;
    line-height: 18px;
    letter-spacing: -0.26px;
  }
  .product__avail-pill--stars .product__avail-check { width: 16px; height: 16px; }
  .product__contents-label { font-size: 15px; line-height: 16px; letter-spacing: -0.3px; margin-bottom: 16px; }
  .product__item-info { flex-direction: column; align-items: flex-start; gap: 4px; }
  .product__item { padding: 0; }
  .product__item-line { margin: 14px 0; }
  .product__items-list { margin-bottom: 14px; }
  .product__item-avail { font-size: 13px; line-height: 18px; letter-spacing: -0.26px; }
  .product__item-avail .product__avail-check { width: 16px; height: 16px; }
  .product__bloc--color { gap: 10px 20px; align-items: flex-start; }
  .product__extras-price { font-size: 15px; line-height: 20px; letter-spacing: -0.3px; text-align: right; }
  .product__bloc--extras .product__checkbox-box { width: 20px; height: 20px; }
  .product__bloc--buy { flex-direction: column; gap: 12px; }
  .product__qty { width: 100%; height: 50px; }
  .product__cta { flex: none; width: 100%; gap: 16px; }
  .product__btn { flex: 1; height: 50px; font-weight: 600; line-height: 20px; }
  .product-desc__cols p { font-size: 15px; line-height: 20px; letter-spacing: -0.3px; }
  .product-specs__table { display: grid; grid-template-columns: 1fr 1fr; border-top: none; }
  .product-specs__cell {
    height: 72px;
    padding: 0 24px;
    border-bottom: 1px solid rgba(var(--color-text-rgb), 0.08);
    border-top: none;
  }
  .product-specs__name { font-size: 15px; line-height: 20px; letter-spacing: -0.3px; color: var(--color-text); }
  .product-specs__qty { font-size: 15px; line-height: 20px; letter-spacing: -0.3px; color: var(--color-brand); }
  .product-specs__cell--l {
    border-left: 1px solid rgba(var(--color-text-rgb), 0.08);
    border-right: 1px solid rgba(var(--color-text-rgb), 0.08);
  }
  .product-specs__cell--r { border-right: 1px solid rgba(var(--color-text-rgb), 0.08); }
  .product-specs__cell--first { border-top: 1px solid rgba(var(--color-text-rgb), 0.08); }
  .product-specs__cell--l.product-specs__cell--first { border-top-left-radius: 14px; }
  .product-specs__cell--r.product-specs__cell--first { border-top-right-radius: 14px; }
  .product-specs__cell--l.product-specs__cell--last { border-bottom-left-radius: 14px; }
  .product-specs__cell--r.product-specs__cell--last { border-bottom-right-radius: 14px; }
  .product-specs__cell:nth-child(3), .product-specs__cell:nth-child(4),
  .product-specs__cell:nth-child(7), .product-specs__cell:nth-child(8) { background: var(--color-bg-warm); }
  .product-review { height: 222px; padding: 30px; border-radius: 15px; }
  .product-review__avatar { top: 30px; right: 30px; }
  .product-review__name { font-size: 18px; line-height: 22px; letter-spacing: -0.36px; }
  .product-review__stars > svg { width: 20px; height: 20px; }
  .product-review__text {
    width: 246px;
    font-size: 15px;
    line-height: 20px;
    letter-spacing: -0.3px;
    color: var(--color-black);
  }
  .product-reviews__write { width: 198px; height: 50px; margin-top: 24px; }
  .product-inside__desc {
    font-family: var(--font-italic);
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    letter-spacing: -0.32px;
    max-width: 402px;
    margin: 0 auto;
  }
  .product-inside__title {
    margin: 24px 0;
  }
  .product-inside__avatars { margin-bottom: 24px; }
  .product-inside__avatar {
    border: none;
    border-radius: 89px;
    position: relative;
  }
  .product-inside__avatar::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    border: 1px solid rgba(var(--color-text-rgb), 0.08);
    pointer-events: none;
  }
  .product-inside__avatar + .product-inside__avatar { margin-left: -5px; }
  .product-inside__card {
    display: block;
    position: relative;
    height: 204px;
    border-radius: 15px;
    border: 1px solid rgba(var(--color-text-rgb), 0.08);
    background: var(--color-bg);
    padding: 0;
  }
  .product-inside__card-name {
    position: absolute;
    left: 24px; top: 24px;
    width: min(154px, calc(100% - 130px));
    font-family: var(--font-italic);
    font-style: normal;
    font-weight: 600;
    font-size: 18px; line-height: 22px; letter-spacing: -0.36px;
  }
  .product-inside__card-img {
    position: absolute;
    right: 24px; left: auto; top: 24px;
    width: 90px; height: 120px;
    border-radius: 6px;
  }
  .product-inside__card-price {
    position: absolute;
    left: 24px; top: 161px;
    font-size: 15px; line-height: 20px; letter-spacing: -0.3px;
  }
  .product-inside__card-add {
    position: absolute;
    right: 24px; left: auto; top: 160px;
  }
  #namePanel .product__name-field {
    flex-wrap: nowrap;
    width: 100%;
    height: 50px;
    padding: 0 16px;
    gap: 16px;
    margin-bottom: 0;
    border-radius: 14px;
  }
  #namePanel .product__name-input { flex: 1 1 auto; min-width: 0; height: 100%; padding: 0; border: none; background: none; font-size: 15px; }
  #namePanel .product__field-meta { flex: 0 0 auto; gap: 16px; }
  #namePanel .product__char-count { font-size: 15px; line-height: 20px; letter-spacing: -0.3px; text-align: center; }
  #namePanel .product__char-max { color: var(--color-text); }
  #logoPanel .product__logo-field { flex-wrap: nowrap; width: 100%; gap: 16px; margin-bottom: 0; }
  #logoPanel .product__upload-text { flex: 1 1 auto; min-width: 0; }
  #logoPanel .product__name-actions { flex: 0 0 auto; margin-left: auto; }
  .product__upload-btn { width: 50px; height: 50px; border-radius: 14px; }
  .product__upload-hint,
  .product__upload-file { font-size: 15px; line-height: 20px; letter-spacing: -0.3px; }
  #logoPanel .product__field-btn { font-size: 16px; }
  .product__disclaimer {
    color: var(--color-text);
    font-size: 15px;
    line-height: 20px;
    letter-spacing: -0.3px;
    margin-top: 16px;
  }
  .product-recommended { padding: 0; }
  .product-faq { padding-top: 0; }
}
.product-lightbox {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: none;
  background: rgba(var(--color-text-rgb), 0.9);
  overflow-y: auto;
  scrollbar-gutter: stable both-edges;
  overscroll-behavior: contain;
}
.product-lightbox.is-open { display: block; }
.product-lightbox__stage {
  box-sizing: border-box;
  min-height: 100%;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 30px;
}
.product-lightbox__frame { position: relative; display: block; width: 100%; }
.product-lightbox__img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  user-select: none;
  -webkit-user-drag: none;
}
.product-lightbox__close {
  position: static;
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 1px solid rgba(var(--color-text-rgb), 0.08);
  border-radius: 50%;
  background: var(--color-bg);
  color: var(--color-text);
  cursor: pointer;
  outline: none;
  -webkit-tap-highlight-color: transparent;
  transition: color var(--transition), border-color var(--transition), transform var(--transition);
}
.product-lightbox__arrow.slider-arrow {
  display: inline-flex;
  position: fixed;
  bottom: 16px;
  top: auto;
  transform: none;
  z-index: 3;
  width: 50px; height: 50px;
}
.product-lightbox__arrow--prev { left: 16px; right: auto; margin: 0; }
.product-lightbox__arrow--next { right: 16px; left: auto; margin: 0; }
.product-lightbox__dots { display: none; }
@media (max-width: 767.98px) {
  .product-lightbox__img {
    touch-action: none;
    transform-origin: center center;
  }
  .product-lightbox__stage { gap: 15px; }
  .product-lightbox__arrow.slider-arrow { display: none; }
  .product-lightbox__dots {
    display: flex;
    position: static;
    z-index: 3;
    justify-content: center;
    gap: 8px;
  }
}
.product-inside__card-name,
.product-review__name {
  font-size: var(--fs-case-accent);
  line-height: 24px;
}
@media (min-width: 1024px) {
  .product-inside__card-name,
  .product-review__name { line-height: var(--lh-case-accent); }
}
@media (min-width: 1280px) and (max-width: 1365.98px) {
  .product__title { font-size: 25px; line-height: 27px; }
  .product__price { font-size: 19px; line-height: 28px; }
  .product-inside__desc { font-size: 17px; line-height: 22px; }
}
@media (min-width: 1366px) and (max-width: 1439.98px) {
  .product__title { font-size: 28px; line-height: 30px; }
  .product__price { font-size: 20px; line-height: 29px; }
  .product-inside__desc { font-size: 18px; line-height: 23px; }
}
@media (min-width: 1440px) and (max-width: 1513.98px) {
  .product__title { font-size: 31px; line-height: 33px; }
  .product__price { font-size: 21px; line-height: 30px; }
  .product-inside__desc { font-size: 19px; line-height: 25px; }
}
@media (min-width: 1514px) and (max-width: 1599.98px) {
  .product__title { font-size: 34px; line-height: 36px; }
  .product__price { font-size: 22px; line-height: 30px; }
  .product-inside__desc { font-size: 20px; line-height: 26px; }
}
@media (min-width: 1600px) and (max-width: 1759.98px) {
  .product__title { font-size: 37px; line-height: 39px; }
  .product__price { font-size: 23px; line-height: 31px; }
  .product-inside__desc { font-size: 21px; line-height: 27px; }
}
@media (min-width: 1280px) and (max-width: 1599.98px) {
  .product__upload-hint {
    font-size: 16px;
    line-height: 22px;
  }
}
@media (min-width: 1314px) {
  .product-review__text { font-size: 17px; line-height: 24px; letter-spacing: -0.34px; }
}
@media (min-width: 1280px) and (max-width: 1513.98px) {
  .product__item-avail { font-size: 14px; line-height: 19px; }
}
@media (min-width: 1280px) and (max-width: 1599.98px) {
  #namePanel .product__char-count { font-size: 16px; line-height: 22px; }
}
@media (min-width: 1600px) {
  #namePanel .product__char-count { font-size: 17px; line-height: 24px; }
}
@media (min-width: 1280px) {
  #logoPanel .product__field-btn { font-size: 16px; }
}
@media (min-width: 1024px) {
  .product__info { padding-top: clamp(68px, calc(5.8036vw + 8.57px), 120px); }
}
@media (min-width: 1024px) and (max-width: 1759.98px) {
  .product-specs__cell {
    height: clamp(60px, calc(1.3587vw + 46.09px), 70px);
    padding: 0 clamp(24px, calc(1.3587vw + 10.09px), 34px);
  }
}
.product-desc__cols p,
.product-specs__name,
.product-specs__qty,
.product-review__text,
.product__item-name,
.product__contents-label,
.product__label,
.product__color-name,
.product__size-info,
.product__check-text,
.product-inside__title,
.product__disclaimer {
  font-size: 15px;
  line-height: 20px;
  letter-spacing: -0.02em;
}
@media (min-width: 1314px) {
  .product-desc__cols p,
  .product-specs__name,
  .product-specs__qty,
  .product-review__text,
  .product__item-name,
  .product__contents-label,
  .product__label,
  .product__color-name,
  .product__size-info,
  .product__check-text,
  .product-inside__title,
  .product__disclaimer {
    font-size: 17px;
    line-height: 24px;
    letter-spacing: -0.34px;
  }
}
.product-inside__card-price { font-size: var(--fs-price-lg); line-height: 1.2; }
.product__qty-val { font-size: 14px; line-height: 16px; }
@media (min-width: 1024px) {
  .product__qty-val { font-size: 16px; line-height: 24px; }
}

.product-review__photos {
  display: flex; gap: 8px; margin-top: 10px;
}
.product-review__photo {
  width: 64px; height: 64px; flex-shrink: 0;
  padding: 0; border: 1px solid var(--color-border);
  border-radius: 8px; overflow: hidden; cursor: pointer;
  background: none;
  transition: border-color var(--transition);
}
.product-review__photo:hover { border-color: var(--color-brand); }
.product-review__photo img {
  width: 100%; height: 100%; object-fit: cover; display: block;
}

/* css/components/lightbox.9f9494cb76.css */

[data-lightbox] { cursor: zoom-in; }

.lightbox {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: none;
  background: rgba(var(--color-text-rgb), 0.9);
  overflow-y: auto;
  scrollbar-gutter: stable both-edges;
  overscroll-behavior: contain;
}
.lightbox.is-open { display: block; }

.lightbox__stage {
  box-sizing: border-box;
  min-height: 100%;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 30px;
}

.lightbox__frame { position: relative; display: block; width: 100%; margin: 0; }
.lightbox__img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  user-select: none;
  -webkit-user-drag: none;
}

.lightbox__close {
  position: static;
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 1px solid rgba(var(--color-text-rgb), 0.08);
  border-radius: 50%;
  background: var(--color-bg);
  color: var(--color-text);
  cursor: pointer;
  outline: none;
  -webkit-tap-highlight-color: transparent;
}

.lightbox__arrow.slider-arrow {
  display: inline-flex;
  position: fixed;
  bottom: 16px;
  top: auto;
  transform: none;
  z-index: 3;
  width: 50px; height: 50px;
}
.lightbox__arrow--prev { left: 16px; right: auto; margin: 0; }
.lightbox__arrow--next { right: 16px; left: auto; margin: 0; }
.lightbox__dots { display: none; }

.lightbox--single .lightbox__arrow.slider-arrow { display: none; }

@media (max-width: 767.98px) {
  .lightbox__img {
    touch-action: none;
    transform-origin: center center;
  }
  .lightbox__stage { gap: 15px; }
  .lightbox__arrow.slider-arrow { display: none; }
  .lightbox__dots {
    display: flex;
    position: static;
    z-index: 3;
    justify-content: center;
    gap: 8px;
  }
  .lightbox--single .lightbox__dots { display: none; }
}

/* css/product.eaa2417136.css */

.product__bloc--postcard {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.product__postcard-info { display: flex; align-items: center; gap: 10px; }
.product__postcard-circle {
  flex-shrink: 0;
  width: 32px; height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 1px solid rgba(var(--color-text-rgb), 0.2);
  background: var(--color-bg);
  overflow: hidden;
}
.product__postcard-actions { display: flex; align-items: center; gap: 16px; }
.product__postcard-mini {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
}
.product__postcard-mini[hidden] { display: none; }
.product__postcard-sign { margin-top: 24px; margin-bottom: 24px; }
.product__postcard-sign:not([hidden]) + .product__sep { margin-top: 0; }
.product__postcard-sign-label {
  display: block;
  font-family: var(--font-main);
  font-size: 15px;
  font-weight: 400;
  line-height: 20px;
  letter-spacing: -0.3px;
  color: rgba(var(--color-text-rgb), 0.4);
}
.product__postcard-sign-text {
  margin: 16px 0 0;
  font-family: var(--font-main);
  font-size: 15px;
  font-weight: 400;
  line-height: 20px;
  letter-spacing: -0.3px;
  color: var(--color-text);
  white-space: pre-wrap;
  word-break: break-word;
}
.product-inside { padding: 0 0 24px; }
.product-inside { padding-top: 0; }
@media (max-width: 767.98px) {
  .product-inside { padding: 0; }
}
@media (min-width: 768px) and (max-width: 899.98px) {
  .product__bloc--color + .product__sep,
  .product__bloc--postcard + .product__sep { margin: 16px 0; }
  .product__bloc--extras + .product__sep { margin: 16px 0; }
  .product-inside { padding-top: 0; padding-bottom: 0; }
}
@media (min-width: 1024px) and (max-width: 1279.98px) {
  .product__bloc--title + .product__sep { margin: 11px 0 16px; }
  .product__bloc--contents + .product__sep { margin: 24px 0 16px; }
  .product__bloc--color + .product__sep,
  .product__bloc--postcard + .product__sep,
  .product__bloc--extras + .product__sep { margin: 16px 0; }
}
@media (min-width: 1024px) and (max-width: 1759.98px) {
  .product-inside { padding-bottom: 0; }
}
@media (min-width: 1760px) {
  .product-inside { padding: 0; }
}
@media (min-width: 1280px) and (max-width: 1759.98px) {
  .product-inside { padding: 0; }
}
@media (min-width: 900px) and (max-width: 1023.98px) {
  .product__bloc--title + .product__sep { margin: 11px 0 16px; }
  .product__bloc--contents + .product__sep { margin: 24px 0 16px; }
  .product__bloc--color + .product__sep,
  .product__bloc--postcard + .product__sep,
  .product__bloc--extras + .product__sep { margin: 16px 0; }
  .product-inside { padding: 0; }
}
.postcard-modal {
  position: fixed;
  inset: 0;
  z-index: 1100;
  display: none;
  align-items: flex-start;
  justify-content: center;
  padding: 40px 16px;
  background: rgba(var(--color-text-rgb), 0.75);
  overflow-y: auto;
  overscroll-behavior: contain;
}
.postcard-modal.is-open { display: flex; }
.postcard-modal__dialog {
  position: relative;
  width: 1060px;
  max-width: 100%;
  box-sizing: border-box;
  padding: 50px 24px 40px;
  background: var(--color-bg);
  border-radius: 14px;
}
.postcard-modal__close {
  position: absolute;
  top: 32px;
  right: 32px;
  width: 60px;
  height: 60px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 1px solid rgba(var(--color-text-rgb), 0.08);
  background: var(--color-bg);
  color: var(--color-text);
  cursor: pointer;
  transition: color var(--transition), border-color var(--transition);
}
.postcard-modal__title {
  margin: 0 0 32px;
  font-family: var(--font-italic);
  font-style: normal;
  font-weight: 600;
  font-size: 32px;
  line-height: 42px;
  letter-spacing: -0.64px;
  text-align: center;
  color: var(--color-text);
}
.postcard-modal__title em { font-style: italic; color: var(--color-brand); }
.postcard-modal__grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 178px));
  justify-content: center;
  gap: 8px;
}
.postcard-card {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  height: 278px;
  padding: 0 0 32px;
  display: flex;
  flex-direction: column;
  align-items: center;
  border: 1px solid rgba(var(--color-text-rgb), 0.08);
  border-radius: 14px;
  transition: border-color var(--transition);
}
.postcard-card:hover { border-color: var(--color-brand); }
.postcard-card.is-selected::before {
  content: '';
  position: absolute;
  inset: 8px;
  border-radius: 14px;
  background: var(--color-bg-warm);
  z-index: 0;
}
.postcard-card > * { position: relative; z-index: 1; }
.postcard-card__thumb {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
  box-sizing: border-box;
  padding-top: 24px;
}
.postcard-card__thumb img {
  width: 98px;
  height: 130px;
  border-radius: 10px;
  object-fit: contain;
}
.postcard-card--landscape .postcard-card__thumb { padding-top: 42px; }
.postcard-card--landscape .postcard-card__thumb img { width: 130px; height: 88px; }
.postcard-card__name {
  width: 130px;
  margin: 0 0 16px;
  font-family: var(--font-italic);
  font-style: normal;
  font-weight: 600;
  font-size: 16px;
  line-height: 16px;
  letter-spacing: -0.32px;
  text-align: center;
  color: var(--color-text);
}
.postcard-card__pick { flex-shrink: 0; }
.postcard-modal__sign {
  max-width: 784px;
  margin: 40px auto 0;
}
.postcard-modal__sign-title {
  margin: 0 0 24px;
  font-family: var(--font-italic);
  font-style: normal;
  font-weight: 600;
  font-size: 22px;
  line-height: 28px;
  letter-spacing: -0.44px;
  text-align: center;
  color: var(--color-text);
}
.postcard-modal__sign-title em { font-style: italic; color: var(--color-brand); }
.postcard-modal__sign-box {
  display: flex;
  flex-direction: column;
  height: 150px;
  box-sizing: border-box;
  padding: 24px 24px 24px;
  border: 1px solid var(--color-bg-warm);
  border-radius: 14px;
}
@media (min-width: 1280px) {
  .postcard-modal__sign-box { padding: 34px 34px 24px; }
}
.postcard-modal__sign-input {
  flex: 1 1 auto;
  width: 100%;
  border: none;
  background: none;
  resize: none;
  font-family: var(--font-main);
  font-size: 15px;
  line-height: 20px;
  letter-spacing: -0.3px;
  color: var(--color-text);
}
.postcard-modal__sign-input::placeholder { color: rgba(var(--color-text-rgb), 0.35); }
.postcard-modal__sign-input:focus { outline: none; }
@media (max-width: 963.98px) {
  .postcard-modal__grid { grid-template-columns: repeat(4, minmax(0, 178px)); }
}
@media (max-width: 767.98px) {
  .postcard-modal { padding: 0; }
  .postcard-modal__dialog {
    width: 100%;
    max-width: 100%;
    min-height: 100vh;
    min-height: 100dvh;
    border-radius: 0;
    padding: 0 16px 40px;
  }
  .postcard-modal__close { position: fixed; top: 16px; right: 16px; width: 40px; height: 40px; z-index: 4; }
  .postcard-modal__title {
    position: sticky;
    top: 0;
    z-index: 2;
    margin: 0;
    padding: 40px 0 24px;
    background: var(--color-bg);
    font-size: 24px;
    line-height: 24px;
    letter-spacing: -0.48px;
  }
  .postcard-modal__grid { grid-template-columns: repeat(3, minmax(0, 178px)); gap: 5px; }
  .postcard-modal__sign { max-width: none; margin-top: 40px; padding: 0; }
  .postcard-modal__sign-title {
    margin: 0 0 24px;
    font-size: 18px;
    line-height: 22px;
    letter-spacing: -0.36px;
  }
  .postcard-modal__sign-box { height: 100px; }
}
@media (max-width: 479.98px) {
  .postcard-modal__grid { grid-template-columns: repeat(2, minmax(0, 178px)); }
}

/* css/components/form-modal.a94cdb618e.css */

.form-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
  overflow-y: auto;
  background: rgba(var(--color-text-rgb), 0.6);
}
.form-modal.is-open { display: flex; }

.form-modal__dialog {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  margin: auto;
}
.form-modal__dialog > * { position: relative; z-index: 1; }

.form-modal--festoon { --span: clamp(0px, calc(100vw - 375px), 393px); }
.form-modal--festoon .form-modal__dialog {
  max-width: calc(343px + var(--span) * (297 / 393));
  min-height: calc(380px + var(--span) * (20 / 393));
  padding: calc(56px + var(--span) * (28 / 393)) calc(44px + var(--span) * (26 / 393));
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: url('/wp-content/themes/thebox/assets/dist/image/modal/festoon-panel.svg') center / 100% 100% no-repeat;
  filter: drop-shadow(0 10px 34px rgba(var(--color-text-rgb), 0.12));
}
@media (min-width: 568px) {
  .form-modal--festoon .form-modal__dialog { background-image: url('/wp-content/themes/thebox/assets/dist/image/modal/festoon-wide.svg'); }
}
.form-modal--festoon .form-modal__title {
  font-size: calc(24px + var(--span) * (8 / 393));
  line-height: calc(28px + var(--span) * (14 / 393));
  letter-spacing: calc(-0.48px - var(--span) * (0.16 / 393));
}
.form-modal--festoon .form-modal__close {
  top: calc(30px + var(--span) * (10 / 393));
  right: calc(20px + var(--span) * (14 / 393));
}
.form-modal--festoon .form-modal__cherry {
  top: calc(-13px - var(--span) * (3 / 393));
  left: calc(-10px - var(--span) * (27 / 393));
  width: calc(60px + var(--span) * (14 / 393));
  height: calc(80px + var(--span) * (20 / 393));
}
.form-modal--festoon .form-modal__field {
  height: calc(50px + var(--span) * (10 / 393));
  padding-left: calc(16px + var(--span) * (8 / 393));
  padding-right: calc(16px + var(--span) * (8 / 393));
  font-size: calc(15px + var(--span) * (2 / 393));
  line-height: calc(20px + var(--span) * (4 / 393));
}
.form-modal--festoon .form-modal__submit.product__btn {
  min-width: calc(188px + var(--span) * (32 / 393));
  height: calc(50px + var(--span) * (10 / 393));
}
.form-modal--festoon .form-modal__success-cherry {
  width: calc(60px + var(--span) * (14 / 393));
  height: calc(80px + var(--span) * (20 / 393));
}

.form-modal--card { --span: clamp(0px, calc(100vw - 375px), 393px); }
.form-modal--card .form-modal__dialog {
  max-width: calc(343px + var(--span) * (253 / 393));
  min-height: calc(602px - var(--span) * (34 / 393));
  padding: calc(40px + var(--span) * (10 / 393)) calc(24px + var(--span) * (24 / 393));
  border-radius: 14px;
  background: var(--color-bg);
  box-shadow: 0 12px 40px rgba(var(--color-text-rgb), 0.12);
}
.form-modal--card .form-modal__close {
  top: calc(20px + var(--span) * (4 / 393));
  right: calc(20px + var(--span) * (4 / 393));
}

.form-modal--example .form-modal__dialog {
  width: 100%;
  max-width: 800px;
  padding: 0;
  background: transparent;
  box-shadow: none;
}
.form-modal__example-img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 14px;
  box-shadow: 0 12px 40px rgba(var(--color-text-rgb), 0.18);
}
.form-modal--example .form-modal__close {
  top: 16px; right: 16px;
  background: transparent;
  border-color: rgba(var(--color-text-rgb), 0.15);
}
@media (min-width: 768px) {
  .form-modal--example .form-modal__dialog { max-width: 1040px; }
  .form-modal--example .form-modal__close { top: 24px; right: 24px; width: 48px; height: 48px; }
}

.form-modal__close {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 2;
  width: 40px;
  height: 40px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(var(--color-text-rgb), 0.08);
  border-radius: 50%;
  background: var(--color-bg);
  color: var(--color-text);
  cursor: pointer;
  transition: border-color var(--transition);
}

.form-modal__cherry {
  position: absolute;
  top: -40px;
  left: -14px;
  z-index: 2;
  width: 60px;
  height: 80px;
}
.form-modal__cherry img { display: block; width: 100%; height: 100%; }

.form-modal__title {
  margin: 0;
  font-family: var(--font-italic);
  font-weight: 600;
  font-size: 24px;
  line-height: 28px;
  letter-spacing: -0.48px;
  text-align: center;
  color: var(--color-text);
}
.form-modal__title em { font-style: italic; color: var(--color-brand); }
.form-modal--card .form-modal__title {
  font-size: calc(24px + var(--span) * (8 / 393));
  line-height: calc(24px + var(--span) * (14 / 393));
  letter-spacing: calc(-0.48px - var(--span) * (0.16 / 393));
}

.form-modal__form {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.form-modal--festoon .form-modal__form {
  align-items: center;
  gap: calc(16px + var(--span) * (8 / 393));
  margin-top: calc(28px + var(--span) * (4 / 393));
}
.form-modal--card .form-modal__form {
  gap: 0;
  margin-top: 24px;
}
.form-modal--card .form-modal__row { gap: 8px; }
.form-modal--card .form-modal__textarea { margin-top: 8px; }
.form-modal--card .form-modal__upload { margin-top: calc(16px + var(--span) * (8 / 393)); gap: 16px; }
.form-modal--card .form-modal__submit { margin-top: calc(24px + var(--span) * (8 / 393)); }

.form-modal--card .form-modal__field {
  height: calc(50px + var(--span) * (10 / 393));
  padding-left: calc(16px + var(--span) * (8 / 393));
  padding-right: calc(16px + var(--span) * (8 / 393));
  font-size: calc(15px + var(--span) * (2 / 393));
  line-height: calc(20px + var(--span) * (4 / 393));
}
.form-modal--card .form-modal__textarea {
  height: auto;
  padding: calc(14px + var(--span) * (5 / 393)) calc(16px + var(--span) * (8 / 393));
}
.form-modal--card .form-modal__submit.product__btn {
  min-width: calc(188px + var(--span) * (32 / 393));
  height: calc(50px + var(--span) * (10 / 393));
}

.form-modal__field {
  box-sizing: border-box;
  width: 100%;
  height: 50px;
  padding: 0 16px;
  border: 1px solid rgba(var(--color-text-rgb), 0.15);
  border-radius: 15px;
  background: var(--color-bg);
  font-family: var(--font-main);
  font-size: 15px;
  line-height: 20px;
  letter-spacing: -0.3px;
  color: var(--color-text);
  transition: border-color var(--transition);
}
.form-modal__field:focus { outline: none; border-color: var(--color-brand); }
.form-modal__field::placeholder { color: rgba(var(--color-text-rgb), 0.4); }

.form-modal__textarea {
  height: auto;
  min-height: 120px;
  padding: 14px 16px;
  resize: vertical;
}

.form-modal__row { display: flex; flex-direction: column; gap: 16px; }

.form-modal__rate {
  display: flex;
  align-items: center;
  gap: 12px;
  justify-content: space-between;
}
.form-modal__rate-label { color: rgba(var(--color-text-rgb), 0.4); }
.form-modal__stars { display: flex; gap: clamp(6px, calc(6px + (100vw - 320px) / 55 * 8), 14px); }
.form-modal__star {
  padding: 4px 0;
  border: 0;
  background: none;
  cursor: pointer;
  line-height: 0;
}
.form-modal__star svg { display: block; width: 20px; height: 20px; }
.form-modal__star svg path {
  fill: none;
  stroke: var(--color-star);
  stroke-width: 1.5px;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.form-modal__star.is-active svg path { fill: var(--color-star); }

.form-modal__upload { display: flex; flex-direction: column; gap: 12px; }
.form-modal__upload-title {
  margin: 0;
  font-family: var(--font-main);
  font-size: 17px;
  line-height: 24px;
  letter-spacing: -0.34px;
  color: var(--color-text);
}
.form-modal__upload-hint {
  margin: 0;
  font-family: var(--font-main);
  font-size: 15px;
  line-height: 20px;
  letter-spacing: -0.3px;
  color: rgba(var(--color-text-rgb), 0.4);
}
.form-modal__upload-grid { display: flex; gap: 12px; }
.form-modal__upload-cell {
  position: relative;
  overflow: hidden;
  width: 64px;
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(var(--color-text-rgb), 0.08);
  border-radius: 15px;
  cursor: pointer;
  color: var(--color-text);
  transition: border-color var(--transition);
}
.form-modal__upload-cell:hover { border-color: var(--color-brand); }
.form-modal__upload-plus { display: block; }
.form-modal__upload-preview {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 15px;
}
.form-modal__upload-cell.is-filled .form-modal__upload-plus { display: none; }

.form-modal__submit {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 50px;
  border-radius: var(--radius-btn);
  border: 1px solid var(--color-brand);
  background: transparent;
  color: var(--color-text);
  font-family: var(--font-italic);
  font-style: italic;
  font-size: var(--fs-action-link);
  font-weight: var(--fw-action);
  letter-spacing: -0.02em;
  padding: 0 24px;
  cursor: pointer;
  transition: background var(--transition), color var(--transition), border-color var(--transition);
}
.form-modal__submit:hover { background: var(--color-brand); color: var(--color-bg); }

.form-modal__submit.product__btn {
  width: auto;
  min-width: 188px;
  flex: 0 0 auto;
  height: 50px;
  align-self: center;
}

.form-modal__success-cherry {
  display: block;
  width: 60px;
  height: 80px;
  margin: 0 auto;
}
.form-modal--success .form-modal__title { margin-top: 14px; }
.form-modal__success-text {
  margin: 14px auto 0;
  max-width: 260px;
  font-family: var(--font-main);
  font-size: calc(15px + var(--span) * (2 / 393));
  line-height: calc(20px + var(--span) * (4 / 393));
  letter-spacing: calc(-0.3px - var(--span) * (0.04 / 393));
  text-align: center;
  color: var(--color-text);
}

@media (min-width: 768px) {
  .form-modal__row { flex-direction: row; }
  .form-modal__row > .form-modal__field { flex: 1 1 0; min-width: 0; }
  .form-modal__upload { flex-direction: row; align-items: center; justify-content: space-between; }
  .form-modal__stars { gap: 3px; }
}


/* css/components/card-slider.d1a9f52431.css */


.product-recommended__slider-wrap,
.product-similar__slider-wrap { position: relative; }

.product-recommended__slider,
.product-similar__slider {
  display: flex;
  gap: 5px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.product-recommended__slider::-webkit-scrollbar,
.product-similar__slider::-webkit-scrollbar { display: none; }

.product-recommended__slider .product-card,
.product-similar__slider .market-card {
  flex-shrink: 0;
  scroll-snap-align: start;
  width: calc((100% - 5px) / 2);
}

@media (min-width: 768px) and (max-width: 1023.98px) {
  .product-recommended__slider,
  .product-similar__slider { gap: 10px; }
  .product-recommended__slider .product-card,
  .product-similar__slider .market-card { width: calc((100% - 2 * 10px) / 3); }
}
@media (min-width: 1024px) and (max-width: 1759.98px) {
  .product-recommended__slider,
  .product-similar__slider { gap: 24px; }
  .product-recommended__slider .product-card,
  .product-similar__slider .market-card { width: calc((100% - 2 * 24px) / 3); }
}
@media (min-width: 1280px) and (max-width: 1919.98px) {
  .product-recommended__slider-wrap,
  .product-similar__slider-wrap {
    width: 100%;
    max-width: var(--container-narrow);
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
  }
}
@media (min-width: 1760px) {
  .product-recommended__slider-wrap,
  .product-similar__slider-wrap { max-width: var(--container-narrow); margin: 0 auto; }
  .product-recommended__slider,
  .product-similar__slider { overflow-x: auto; gap: 24px; scroll-snap-type: x mandatory; }
  .product-recommended__slider .product-card,
  .product-similar__slider .market-card { width: 422px; }
  .product-recommended .product-card__promo { font-size: 17px; line-height: 22px; }
}

.product-reviews__slider-wrap { position: relative; }
.product-reviews__slider {
  display: flex;
  gap: 5px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.product-reviews__slider::-webkit-scrollbar { display: none; }
.product-review {
  flex-shrink: 0;
  scroll-snap-align: start;
  width: 100%;
}
@media (min-width: 568px) and (max-width: 1023.98px) {
  .product-reviews__slider { gap: 8px; }
  .product-review { width: calc((100% - 8px) / 2); }
}
@media (min-width: 1024px) and (max-width: 1279.98px) {
  .product-reviews__slider { gap: 8px; }
  .product-review { width: calc((100% - 2 * 8px) / 3); }
}
@media (min-width: 1280px) and (max-width: 1759.98px) {
  .product-reviews__slider { gap: 24px; }
  .product-review { width: calc((100% - 2 * 24px) / 3); }
}
@media (min-width: 1760px) {
  .product-reviews__slider { gap: 24px; }
  .product-review { width: 422px; }
}

.product-rec__arrow,
.product-rev__arrow,
.product-sim__arrow,
.product-slider__arrow,
.case-recommended__arrow,
.article-related__arrow,
.about-corp__arrow,
.home-insta__arrow { z-index: 10; }
.article-related__slider { position: relative; }
.about-corp__slider-wrap { position: relative; }
.home-insta__slider { position: relative; }

@media (max-width: 1024.98px) {
  .product-rec__arrow,
  .product-rev__arrow,
  .product-sim__arrow,
  .product-slider__arrow,
  .case-recommended__arrow,
  .article-related__arrow,
  .about-corp__arrow,
  .home-insta__arrow { display: none; }
}
@media (min-width: 1025px) {
  .product-recommended .product-slider__dots,
  .product-reviews .product-slider__dots,
  .product-similar .product-slider__dots,
  .product-inside .product-slider__dots,
  .case-recommended__dots,
  .article-related__dots,
  .about-corp__dots,
  .home-insta__dots { display: none; }
}
@media (min-width: 1025px) and (max-width: 1513.98px) {
  .product-recommended__slider-wrap,
  .product-similar__slider-wrap,
  .product-reviews__slider-wrap,
  .product-inside__slider-wrap,
  .case-recommended__slider,
  .article-related__slider,
  .about-corp__slider-wrap,
  .home-insta__slider {
    display: flex;
    align-items: center;
    gap: 16px;
  }
  .product-rec__arrow--prev,
  .product-rev__arrow--prev,
  .product-sim__arrow--prev,
  .product-slider__arrow--prev,
  .case-recommended__arrow--prev,
  .article-related__arrow--prev,
  .about-corp__arrow--prev,
  .home-insta__arrow--prev { margin-left: calc(8px - var(--gutter)); }
  .product-rec__arrow--next,
  .product-rev__arrow--next,
  .product-sim__arrow--next,
  .product-slider__arrow--next,
  .case-recommended__arrow--next,
  .article-related__arrow--next,
  .about-corp__arrow--next,
  .home-insta__arrow--next { margin-right: calc(8px - var(--gutter)); }
  .product-recommended__slider,
  .product-similar__slider,
  .product-reviews__slider,
  .product-inside__slider,
  .case-recommended__track-wrap,
  .article-related__track-wrap,
  .about-corp__photos,
  .home-insta__row {
    flex: 1;
    min-width: 0;
  }
  .product-rec__arrow,
  .product-rev__arrow,
  .product-sim__arrow,
  .product-slider__arrow,
  .case-recommended__arrow,
  .article-related__arrow,
  .about-corp__arrow,
  .home-insta__arrow {
    display: flex;
    position: static;
    top: auto;
    transform: none;
    flex-shrink: 0;
  }
  .product-rec__arrow--prev,
  .product-rev__arrow--prev,
  .product-sim__arrow--prev,
  .product-slider__arrow--prev { order: -1; }
}
@media (min-width: 1514px) {
  .product-rec__arrow,
  .product-rev__arrow,
  .product-sim__arrow,
  .product-slider__arrow,
  .case-recommended__arrow,
  .article-related__arrow,
  .about-corp__arrow,
  .home-insta__arrow { display: flex; }
  .article-related__arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
}
@media (min-width: 1514px) and (max-width: 1759.98px) {
  .product-rec__arrow--prev,
  .product-rev__arrow--prev,
  .product-sim__arrow--prev,
  .product-slider__arrow--prev,
  .case-recommended__arrow--prev,
  .about-corp__arrow--prev,
  .home-insta__arrow--prev { left: -100px; }
  .product-rec__arrow--next,
  .product-rev__arrow--next,
  .product-sim__arrow--next,
  .product-slider__arrow--next,
  .case-recommended__arrow--next,
  .about-corp__arrow--next,
  .home-insta__arrow--next { right: -100px; }
  .article-related__arrow--prev { left: calc(50% - 757px); }
  .article-related__arrow--next { right: calc(50% - 757px); }
}
@media (min-width: 1760px) {
  .product-rec__arrow--prev,
  .product-rev__arrow--prev,
  .product-sim__arrow--prev,
  .product-slider__arrow--prev,
  .case-recommended__arrow--prev,
  .about-corp__arrow--prev,
  .home-insta__arrow--prev { left: -120px; }
  .product-rec__arrow--next,
  .product-rev__arrow--next,
  .product-sim__arrow--next,
  .product-slider__arrow--next,
  .case-recommended__arrow--next,
  .about-corp__arrow--next,
  .home-insta__arrow--next { right: -120px; }
  .article-related__arrow--prev { left: calc(50% - 777px); }
  .article-related__arrow--next { right: calc(50% - 777px); }
}

.case-recommended__track {
  gap: 5px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.case-recommended__track::-webkit-scrollbar { display: none; }
.case-recommended__track .case-card {
  flex: 0 0 auto;
  scroll-snap-align: start;
  width: 100%;
}
@media (min-width: 768px) {
  .case-recommended__track { gap: 8px; }
  .case-recommended__track .case-card { width: calc((100% - 8px) / 2); }
}
@media (min-width: 1024px) {
  .case-recommended__track { gap: 16px; }
  .case-recommended__track .case-card { width: calc((100% - 16px) / 2); }
}
@media (min-width: 1314px) {
  .case-recommended__track { gap: 24px; }
  .case-recommended__track .case-card { width: calc((100% - 24px) / 2); }
}

.article-related__track {
  gap: 14px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.article-related__track::-webkit-scrollbar { display: none; }
.article-related__track .blog-card {
  flex: 0 0 auto;
  scroll-snap-align: start;
  width: 100%;
}
@media (min-width: 375px) {
  .article-related__track { gap: 12px; }
}
@media (min-width: 414px) {
  .article-related__track .blog-card { width: calc((100% - 12px) / 2); }
}
@media (min-width: 768px) {
  .article-related__track { gap: 16px; }
  .article-related__track .blog-card { width: calc((100% - 16px) / 2); }
}
@media (min-width: 1024px) {
  .article-related__track { gap: 20px; }
  .article-related__track .blog-card { width: calc((100% - 2 * 20px) / 3); }
}

.about-corp__photos {
  display: flex;
  gap: 24px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.about-corp__photos::-webkit-scrollbar { display: none; }
.about-corp__photo {
  flex: 0 0 auto;
  width: 100%;
  scroll-snap-align: start;
  border-radius: 14px;
  overflow: hidden;
  line-height: 0;
}
.about-corp__photo img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  border-radius: 14px;
  aspect-ratio: 645 / 520;
}
@media (min-width: 768px) {
  .about-corp__photo { width: calc((100% - 24px) / 2); }
}


/* css/components/logo-marquee.ecd68ad28f.css */
.case-marquee,
.product-logo-row,
.about-marquee {
  display: block;
  overflow: hidden;
  width: 100%;
  margin: 40px 0;
}
@media (min-width: 1024px) {
  .case-marquee,
  .product-logo-row,
  .about-marquee { margin: clamp(40px, calc(4.4643vw - 5.714496px), 80px) 0; }
}
.case-marquee__track,
.product-logo-row__track,
.about-marquee__track {
  display: flex;
  align-items: center;
  width: max-content;
  animation: logoMarquee 40s linear infinite;
}
.case-marquee__item,
.product-logo-row__item,
.about-marquee__item {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  margin-right: 32px;
}
.case-marquee__item img,
.product-logo-row__item img,
.about-marquee__item img {
  width: 126.88px;
  height: 32px;
  aspect-ratio: 126.88 / 32;
}
@media (max-width: 1313.98px) {
  .case-marquee__item,
  .product-logo-row__item,
  .about-marquee__item { margin-right: 24px; }
  .case-marquee__item img,
  .product-logo-row__item img,
  .about-marquee__item img {
    width: 95.16px;
    height: 24px;
    aspect-ratio: 95.16 / 24;
  }
}
.case-marquee__item:nth-child(even) { opacity: 0.3; }
.about-marquee__item:nth-child(even) { opacity: 0.3; }
.product-logo-row__item:nth-child(even) { opacity: 0.18; }
@keyframes logoMarquee {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}

