@font-face{font-family:Montserrat;src:url('/fonts/Montserrat-Regular.woff2') format('woff2');font-weight:400 600;font-display:swap}@font-face{font-family:Montserrat;src:url('/fonts/Montserrat-Medium.woff2') format('woff2');font-weight:500;font-display:swap}@font-face{font-family:Montserrat;src:url('/fonts/Montserrat-Bold.woff2') format('woff2');font-weight:700;font-display:swap}
:root{font-family:Montserrat,Arial,sans-serif;color:#19191a;background:#fff;font-size:14px;font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit}button{cursor:pointer;background:transparent;border:0}button:disabled{cursor:not-allowed;opacity:.4}button:focus-visible,a:focus-visible{outline:2px solid #997378;outline-offset:4px}input,select{border:1px solid #d8d8d8;padding:12px;background:#fff;min-width:0}h1,h2,h3,p{font-weight:400}h1{font-size:28px}h2{font-size:24px;line-height:1.35}h3{font-size:16px}img{max-width:100%;display:block}picture{display:block}svg{width:24px;height:24px}small,.muted{font-size:12px;color:#858585}header{height:80px;padding:0 36px;display:flex;align-items:center;justify-content:space-between;background:#fff;position:relative;z-index:5}header.over-hero{position:absolute;left:0;right:0;top:48px;background:transparent}header>button{display:flex;align-items:center;gap:8px;padding:8px 0}header .logo{position:absolute;left:50%;transform:translateX(-50%);width:180px}.logo img{width:180px;height:auto}header nav{display:flex;align-items:center;gap:25px}header nav>a{position:relative}header small{position:absolute;right:-8px;top:-6px;font-size:10px;color:inherit;background:transparent}.hero{position:relative;overflow:hidden;background:#eee7df}.hero img{width:100%;height:auto;aspect-ratio:2/1;object-fit:cover}.hero-prev,.hero-next{position:absolute;top:50%;border-radius:50%;background:#ffffffc9;width:40px;height:40px;font-size:30px;color:#666}.hero-next{right:24px}.hero-prev{left:24px}.dots{position:absolute;bottom:18px;left:0;right:0;text-align:center}.dots button{width:6px;height:6px;border-radius:100%;padding:0;background:#bbb;margin:0 4px}.dots button.active{background:#555}.shelf h2,.categories h2,.community h2,.news h2{text-align:center;font-size:24px;margin:22px 0 30px}.shelf{margin-bottom:44px}.shelf-track{display:flex;gap:4px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.shelf-track>.card{flex:0 0 calc((100% - 20px)/5);scroll-snap-align:start}.card{position:relative;padding-bottom:22px;min-width:0;display:flex;flex-direction:column}.card-photo{display:block;position:relative}.card-photo img,.card-photo .image-placeholder{width:100%;aspect-ratio:3/4;object-fit:cover}.image-placeholder{display:block;background:#f4f1ef;aspect-ratio:3/4}.favorite{position:absolute;right:9px;top:10px;color:white;filter:drop-shadow(0 1px 2px #666);padding:0}.favorite svg{width:22px;height:22px;fill:#ffffffaa}.favorite.selected svg{fill:#a2294b;stroke:#a2294b}.badge{position:absolute;bottom:0;left:0;background:#181818;color:#fff;font-size:10px;padding:2px 5px}.badge:empty{display:none}.badge.hit{background:#f43f72}.card-name{font-size:14px;padding:9px 10px 2px;line-height:1.35;min-height:45px}.price{padding:0 10px 10px;font-size:14px}.price s{color:#999;font-size:12px;margin-left:8px}.quick{align-self:flex-start;background:#f4f4f4;margin:24px 10px 0;padding:10px 14px;font-size:12px}.categories{margin:30px 0 46px}.categories>div{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.categories img{width:100%;aspect-ratio:3/4;object-fit:cover}.categories span{display:block;text-align:center;padding:16px 4px;font-size:12px}.gift-box{padding:0 16px}.gift-box h2{font-size:22px}.gift-box>div{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:28px}.gift-box img{width:100%;aspect-ratio:1;object-fit:contain}.gift-box p{max-width:550px;padding:16px;font-size:14px;line-height:1.45}.benefits{display:flex;overflow:auto;scrollbar-width:none;background:#0a0a0a;color:white;margin-top:20px;padding:50px 0}.benefits>div{padding:0 40px;flex:0 0 20%;border-right:1px solid #333}.benefits strong{font-size:30px;font-weight:400;white-space:nowrap}.benefits p{font-size:12px}.benefits small{display:block;font-size:10px;color:#ccc;margin-top:8px}.community{margin-top:20px}.community>p{text-align:center;font-size:12px;margin:35px 15px 50px}.community>p a{color:#7c94b8;text-decoration:underline}.community>div{display:flex;overflow:auto;gap:4px;scrollbar-width:none}.community picture{flex:0 0 25%}.community img{width:100%;aspect-ratio:3/4;object-fit:cover}.news{margin:30px 16px 60px}.news>div{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.news img{width:100%;aspect-ratio:1.4;object-fit:cover}.news h3{font-size:14px;line-height:1.3}.news small{font-size:10px}.care{margin:20px 32px 26px;padding:60px 70px;border:1px solid #eee;border-radius:28px;display:grid;grid-template-columns:1.6fr 1fr;align-items:center;gap:60px;background:radial-gradient(ellipse at 75% -20%,#f5e7e5 0 21%,transparent 21.5%),radial-gradient(ellipse at 105% 110%,#f6eae9 0 17%,transparent 17.5%),#fff;box-shadow:0 8px 30px #00000008}.care h2{font-size:42px;letter-spacing:-1.5px;margin:18px 0}.care p{color:#888;line-height:1.6}.care small{font-size:10px}.care>div>small:first-child{letter-spacing:2px;color:#a88988}.care a{display:block;margin:16px 0;padding:20px 26px;border:1px solid #eee;border-radius:20px;box-shadow:0 8px 16px #0000000a}.care a small{display:block;margin-top:4px}.black{display:inline-block;background:#171717;color:#fff;text-align:center;padding:16px 28px;border:0}.black small{color:#ccc}footer{background:#f5f5f5;padding:45px 16px 20px;font-size:12px}footer p{line-height:1.5}.footer-main{display:flex;justify-content:space-between;padding:0 0 50px}.footer-main>div:last-child{width:28%}.footer-main h3{font-size:14px;margin:0}.wordmark{letter-spacing:1px}.footer-links{border-top:1px solid #ddd;padding-top:24px;display:flex;gap:18px;flex-wrap:wrap;color:#777;font-size:10px}.listing,.cart{padding:18px 30px 70px;min-height:60vh}.crumb{color:#999;font-size:12px;margin:14px 0 24px}.chips{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:24px}.chips a{background:#f6f6f6;border-radius:20px;padding:9px 18px}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px 8px}#filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center}#filters input{flex:1}#filters select{max-width:190px}#filters button,.more{background:#eee;padding:12px 22px}.more{display:block;margin:40px auto}.product-page{display:grid;grid-template-columns:2fr 1fr;gap:36px;padding:20px 28px 60px}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-content:start}.gallery>button{padding:0}.gallery img{width:100%;height:100%;object-fit:cover;aspect-ratio:3/4}.product-info{padding:0 10px}.product-info h1{font-size:26px;line-height:1.35}.product-price{background:#f5f5f5;font-size:28px;padding:18px 10px;margin:24px 0}.size-heading{display:flex;align-items:center;gap:4px}.size-heading>button{margin-left:auto;color:#777;font-size:12px}.sizes{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.sizes button{border:1px solid #ddd;min-width:44px;height:44px}.sizes .active{border-color:#111}.sold-out{color:#aaa;text-decoration:line-through}.buy-row{display:flex;gap:12px;margin:24px 0}.buy-row .black{flex:1}details{border-top:1px solid #eee;padding:20px 0;font-size:13px;line-height:1.65}summary{font-size:16px;cursor:pointer}details p{color:#555}#reviews{border-top:1px solid #ddd;margin-top:15px;padding-top:15px}#reviews button{border:1px solid #ddd;padding:12px}.cart-layout{display:grid;grid-template-columns:2fr 1fr;gap:40px}.cart-line{display:grid;grid-template-columns:100px 1fr auto;gap:20px;padding:22px 0;border-bottom:1px solid #eee}.cart-line img{width:100px;aspect-ratio:3/4;object-fit:cover}.cart-line button{padding:8px}.cart-line b{font-weight:400}.remove{font-size:12px;color:#999}.cart aside{background:#f7f7f7;padding:25px;align-self:start}.cart aside b{float:right}.cart aside .black{display:block;margin:25px 0}.cart aside small{display:block}.empty{text-align:center;padding:60px 20px}.empty .black{margin-top:24px}.text-page{max-width:850px;margin:50px auto 80px;padding:0 22px;line-height:1.7;min-height:50vh}.text-page h1{font-size:30px}.text-page p{line-height:1.75}.text-page a{text-decoration:underline}.text-page form>label{display:block;margin:16px 0}.text-page label>input:not([type=radio]){display:block;width:100%;margin-top:8px}.notice{background:#f5eee7;padding:16px}.initial{padding:45vh 0;text-align:center;letter-spacing:6px}dialog{border:0;padding:50px 30px 30px;max-width:95vw;width:520px;box-shadow:0 20px 60px #0004}dialog::backdrop{background:#0005}.close{position:absolute;right:12px;top:12px}.drawer{position:fixed;margin:0;left:0;top:0;height:100dvh;width:390px;max-height:100dvh;padding:60px 32px}.menu{display:flex;flex-direction:column;gap:22px}.menu button{text-align:left;padding:0}.lightbox{width:auto;height:95dvh;max-height:95dvh;padding:36px 10px 10px}.lightbox img{max-height:85dvh;width:auto;object-fit:contain}.lightbox picture{height:100%}#search{display:flex;gap:10px}#search input{flex:1}#toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%,20px);background:#181818;color:#fff;padding:16px 24px;z-index:30;opacity:0;pointer-events:none;transition:.2s;max-width:90vw}#toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:700px){:root{font-size:13px}header{height:62px;padding:0 14px}header.over-hero{top:0;position:relative;background:white}header>button span,.desktop{display:none!important}header .logo,header .logo img{width:152px}header nav{gap:12px}header svg{width:21px;height:21px}.hero img{aspect-ratio:2/1;object-fit:cover}.hero-prev,.hero-next{display:none}.dots{bottom:8px}.shelf h2,.categories h2,.community h2,.news h2{font-size:22px;margin:25px 0 28px}.shelf-track>.card{flex-basis:43%}.shelf-track{gap:5px}.card-name{font-size:13px;min-height:44px;padding:7px 5px 0}.price{font-size:13px;padding:3px 5px}.quick{margin:34px 5px 0;width:calc(100% - 10px);font-size:12px}.shelf{margin-bottom:12px}.categories>div{grid-template-columns:repeat(2,1fr);gap:5px}.gift-box{padding:0 12px}.gift-box h2{font-size:20px;line-height:1.5}.gift-box>div{display:flex;flex-direction:column;gap:0}.gift-box p{font-size:12px;padding:10px}.benefits{padding:32px 0}.benefits>div{flex-basis:65%;padding:0 25px}.community>div{gap:5px}.community picture{flex-basis:76%}.community>p{font-size:11px;line-height:1.8;margin:20px 22px 30px}.news{margin:20px 12px 35px}.news>div{display:flex;overflow:auto;gap:12px}.news>div>a{flex:0 0 72%}.care{margin:22px 12px;padding:28px 22px;display:block;border-radius:20px}.care h2{font-size:29px;letter-spacing:-1px}.care p{font-size:12px}.care a{padding:15px;margin:12px 0}.care>div:last-child{margin-top:26px}.footer-main{display:block}.footer-main>div:last-child{width:auto;margin-top:30px}footer{padding:30px 18px 20px}.footer-links{gap:18px 20px;line-height:1.5}.listing,.cart{padding:12px 12px 45px}.listing h1{font-size:25px}.product-grid{grid-template-columns:repeat(2,1fr);gap:22px 6px}#filters{gap:6px}#filters input{width:100%;flex:auto}#filters select{width:calc(50% - 3px);max-width:none}.product-page{display:block;padding:0 10px 30px}.gallery{display:flex;overflow:auto;scroll-snap-type:x mandatory;margin:0 -10px;gap:6px}.gallery>button{flex:0 0 94%;scroll-snap-align:start}.gallery img{aspect-ratio:3/4;object-fit:cover}.product-info{padding:0}.product-info h1{font-size:25px}.buy-row{position:sticky;bottom:0;background:white;padding:10px 0;z-index:4}.cart-layout{display:block}.cart-line{grid-template-columns:75px 1fr;gap:12px}.cart-line img{width:75px}.cart-line>b{grid-column:2}.cart aside{margin-top:30px}.text-page{margin:25px auto 45px}.text-page h1{font-size:26px}.chips{gap:5px}.chips a{padding:8px 12px}dialog{padding:48px 22px 25px}.drawer{width:90vw}.lightbox{padding:40px 5px 5px}#toast{width:max-content;max-width:90vw;font-size:12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
img{height:auto}.logo img{filter:brightness(0)}
.gift-preview{max-width:620px;margin:auto}.gift-preview img{width:100%;object-fit:contain}.gift-covers{display:flex;gap:14px}.gift-covers label{width:110px;cursor:pointer}.gift-covers img{width:100%;aspect-ratio:1.6;object-fit:cover}.text-page textarea{width:100%;border:1px solid #ddd;padding:12px;font:inherit}.text-page select{display:block;margin-top:8px;width:100%}
.color-options{display:flex;gap:8px}.color-options a{display:block;width:48px;padding:3px;border:1px solid transparent}.color-options a.active{border-color:#111}.color-options img{width:100%;aspect-ratio:3/4;object-fit:cover}
.size-page{padding:50px 25px 80px;min-height:65vh}.ml-category-option input{margin-right:8px}
.ml-size {
  --ml-black: #101010;
  --ml-text: #171717;
  --ml-muted: #737373;
  --ml-line: #dedede;
  --ml-soft: #f5f5f5;
  --ml-white: #ffffff;
  --ml-accent: #5d23ff;
  --ml-disabled: #eeeeee;
  --ml-disabled-text: #999999;

  width: 100%;
  color: var(--ml-text);
}

.ml-size,
.ml-size * {
  box-sizing: border-box;
}

.ml-size__shell {
  width: min(980px, 100%);
  margin: 0 auto;
}


/* HEADER */

.ml-size__eyebrow {
  margin-bottom: 14px;

  color: var(--ml-muted);

  font-size: 12px;
  line-height: 1.2;
  letter-spacing: 0.24em;
  text-transform: uppercase;
}

.ml-size__title {
  max-width: 760px;

  margin: 0;
  padding: 0;

  color: var(--ml-text);

  font-size: clamp(34px, 5vw, 58px);
  line-height: 0.98;
  font-weight: 500;
  letter-spacing: -0.04em;
}

.ml-size__lead {
  max-width: 620px;

  margin: 22px 0 0;

  color: var(--ml-muted);

  font-size: 17px;
  line-height: 1.5;
}

.ml-size__form {
  margin-top: 48px;
}


/* MEASUREMENTS */

.ml-size__measurements {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.ml-field {
  display: block;

  padding: 18px 18px 16px;

  border: 1px solid var(--ml-line);

  background: var(--ml-white);

  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.ml-field:focus-within {
  border-color: var(--ml-black);
  box-shadow: inset 0 0 0 1px var(--ml-black);
}

.ml-field__label {
  display: block;

  margin-bottom: 12px;

  color: var(--ml-muted);

  font-size: 13px;
  line-height: 1.3;
}

.ml-field__control {
  display: flex;
  align-items: baseline;
  gap: 8px;
}

.ml-field__control input {
  width: 100%;
  min-width: 0;

  margin: 0;
  padding: 0;

  border: 0;
  outline: 0;

  background: transparent;

  color: var(--ml-black);

  font: inherit;
  font-size: 25px;
  line-height: 1.1;

  appearance: textfield;
  -moz-appearance: textfield;
}

.ml-field__control input::-webkit-inner-spin-button,
.ml-field__control input::-webkit-outer-spin-button {
  margin: 0;
  appearance: none;
}

.ml-field__control input::placeholder {
  color: #c2c2c2;
  font-size: 17px;
}

.ml-field__control > span {
  flex: 0 0 auto;
  color: var(--ml-muted);
  font-size: 13px;
}


/* CATEGORIES */

.ml-size__categories {
  margin-top: 30px;
}

.ml-size__section-title {
  color: var(--ml-text);
  font-size: 18px;
  line-height: 1.25;
  font-weight: 600;
}

.ml-category-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;

  margin-top: 14px;
}

.ml-category-option {
  display: inline-flex;
  align-items: center;

  min-height: 40px;

  padding: 0 13px;

  border: 1px solid var(--ml-line);

  background: var(--ml-white);
  color: var(--ml-text);

  cursor: pointer;
  user-select: none;

  --ys-color-token-text-primary: #171717;
  --ys-color-token-text-secondary: #171717;

  transition:
    border-color 0.18s ease,
    background-color 0.18s ease,
    color 0.18s ease;
}

.ml-category-option ya-kit-form-control-label {
  display: flex;

  width: 100%;
  min-height: 38px;

  align-items: center;

  padding: 0;

  cursor: pointer;
}

.ml-category-option ya-kit-radio {
  flex: 0 0 auto;
}

.ml-category-option::before,
.ml-category-option::after,
.ml-category-option--active::before,
.ml-category-option--active::after {
  content: none !important;
  display: none !important;
}

.ml-category-option:not(.ml-category-option--active):hover {
  border-color: var(--ml-black);
}

.ml-category-option--active {
  border-color: var(--ml-black);

  background: var(--ml-black);
  color: var(--ml-white);

  --ys-color-token-text-primary: #ffffff;
  --ys-color-token-text-secondary: #ffffff;
}

.ml-category-option--active,
.ml-category-option--active *,
.ml-category-option--active ya-kit-form-control-label {
  color: #ffffff !important;
}


/* HINT */

.ml-size__hint {
  display: flex;
  align-items: flex-start;
  gap: 8px;

  margin: 20px 0 12px;

  color: var(--ml-muted);

  font-size: 12px;
  line-height: 1.4;
}

.ml-size__hint-mark {
  display: inline-flex;
  flex: 0 0 18px;

  width: 18px;
  height: 18px;

  align-items: center;
  justify-content: center;

  border: 1px solid var(--ml-line);
  border-radius: 50%;

  color: var(--ml-black);

  font-size: 10px;
}


/* RESULT */

.ml-size__action {
  display: flex;
  flex-wrap: wrap;

  align-items: center;

  gap: 10px 14px;

  min-height: 40px;
}

.ml-fit {
  margin: 0;

  color: var(--ml-text);

  font-size: 13px;
  line-height: 1.35;
}

.ml-fit strong {
  font-weight: 600;
}

.ml-fit--muted {
  color: var(--ml-muted);
}


/* MINI BUTTON */

.ml-show-button {
  display: inline-flex;
  flex: 0 0 auto;

  width: auto;
  min-width: 96px;
  min-height: 38px;

  align-items: center;
  justify-content: center;

  padding: 0 18px;

  border: 1px solid var(--ml-black);

  background: var(--ml-black);
  color: var(--ml-white);

  font-size: 13px;
  font-weight: 600;
  line-height: 1;

  text-align: center;
  text-decoration: none;

  cursor: pointer;

  transition:
    opacity 0.18s ease,
    transform 0.1s ease;
}

.ml-show-button:hover {
  opacity: 0.84;
}

.ml-show-button:active {
  transform: translateY(1px);
}

.ml-show-button:focus-visible {
  outline: 2px solid var(--ml-accent);
  outline-offset: 2px;
}

.ml-show-button--disabled {
  min-width: 96px;

  border-color: var(--ml-disabled);

  background: var(--ml-disabled);
  color: var(--ml-disabled-text);

  cursor: default;
  pointer-events: none;
}

.ml-show-button--disabled:hover {
  opacity: 1;
}


/* MOBILE */

@media (max-width: 720px) {

  .ml-size__title {
    font-size: 36px;
    line-height: 1;
  }

  .ml-size__lead {
    margin-top: 17px;
    font-size: 15px;
  }

  .ml-size__form {
    margin-top: 30px;
  }

  .ml-size__measurements {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .ml-size__categories {
    margin-top: 24px;
  }

  .ml-category-grid {
    gap: 6px;
  }

  .ml-category-option {
    min-height: 38px;
    padding: 0 11px;
  }

  .ml-category-option ya-kit-form-control-label {
    min-height: 36px;
  }

  .ml-size__hint {
    margin-top: 18px;
  }

  .ml-size__action {
    gap: 9px 12px;
  }

  .ml-fit {
    flex: 0 1 auto;
  }

  .ml-show-button {
    min-width: 88px;
    min-height: 36px;

    padding: 0 15px;

    font-size: 12px;
  }
}


.ml-benefits {
  width: 100%;
  background: #111111;
  color: #ffffff;
  overflow: hidden;
}

.ml-benefits__inner {
  width: 100%;
  max-width: 1400px;
  height: 48px;
  margin: 0 auto;
  padding: 0 24px;

  display: flex;
  align-items: center;
  justify-content: center;

  box-sizing: border-box;
  overflow: hidden;
}

.ml-benefits__messages {
  position: relative;
  width: 100%;
  height: 24px;
  overflow: hidden;
}


/* =========================
   СООБЩЕНИЕ
   ========================= */

.ml-benefits__message {
  position: absolute;

  left: 50%;
  top: 50%;

  width: max-content;
  max-width: 100%;

  white-space: nowrap;
  text-align: center;

  font-family: inherit;
  font-size: 14px;
  line-height: 20px;
  font-weight: 600;
  letter-spacing: 0.01em;

  opacity: 0;

  transform:
    translateX(calc(-50% - 38px))
    translateY(-50%);

  animation: mlOfferMove 9.6s linear infinite;

  will-change: transform, opacity;
}


/* =========================
   МЯГКОЕ РАСКРЫТИЕ ТЕКСТА
   ========================= */

.ml-benefits__message::after {
  content: "";

  position: absolute;

  top: -3px;
  bottom: -3px;
  left: -4px;

  width: calc(100% + 32px);

  pointer-events: none;

  /*
    Мягкая граница между скрытой
    и уже появившейся частью текста
  */
  background: linear-gradient(
    90deg,
    rgba(17, 17, 17, 0) 0px,
    rgba(17, 17, 17, 0.2) 5px,
    rgba(17, 17, 17, 0.55) 12px,
    rgba(17, 17, 17, 0.85) 20px,
    #111111 28px,
    #111111 100%
  );

  transform: translateX(0);

  animation: mlOfferReveal 9.6s linear infinite;

  animation-delay: inherit;

  will-change: transform;
}


/* =========================
   ЗАДЕРЖКИ
   ========================= */

.ml-benefits__message:nth-child(1) {
  animation-delay: 0s;
}

.ml-benefits__message:nth-child(2) {
  animation-delay: 3.2s;
}

.ml-benefits__message:nth-child(3) {
  animation-delay: 6.4s;
}


/* =========================
   ДВИЖЕНИЕ САМОГО ТЕКСТА
   ========================= */

@keyframes mlOfferMove {

  0% {
    opacity: 0;

    transform:
      translateX(calc(-50% - 38px))
      translateY(-50%);
  }

  1.5% {
    opacity: 1;

    transform:
      translateX(calc(-50% - 36px))
      translateY(-50%);
  }

  6% {
    opacity: 1;

    transform:
      translateX(calc(-50% - 26px))
      translateY(-50%);
  }

  12% {
    opacity: 1;

    transform:
      translateX(calc(-50% - 12px))
      translateY(-50%);
  }

  17% {
    opacity: 1;

    transform:
      translateX(-50%)
      translateY(-50%);
  }

  23% {
    opacity: 1;

    transform:
      translateX(calc(-50% + 10px))
      translateY(-50%);
  }

  27% {
    opacity: 1;

    transform:
      translateX(calc(-50% + 17px))
      translateY(-50%);
  }

  30% {
    opacity: 0.7;

    transform:
      translateX(calc(-50% + 25px))
      translateY(-50%);
  }

  33.333% {
    opacity: 0;

    transform:
      translateX(calc(-50% + 35px))
      translateY(-50%);
  }

  100% {
    opacity: 0;

    transform:
      translateX(calc(-50% + 35px))
      translateY(-50%);
  }
}


/* =========================
   ПЛАВНОЕ ПОЯВЛЕНИЕ
   СЛЕВА НАПРАВО
   ========================= */

@keyframes mlOfferReveal {

  0% {
    transform: translateX(0);
  }

  2% {
    transform: translateX(2%);
  }

  5% {
    transform: translateX(14%);
  }

  8% {
    transform: translateX(34%);
  }

  11% {
    transform: translateX(58%);
  }

  14% {
    transform: translateX(82%);
  }

  17% {
    transform: translateX(108%);
  }

  33.333% {
    transform: translateX(108%);
  }

  100% {
    transform: translateX(108%);
  }
}


/* =========================
   ПЛАНШЕТ
   ========================= */

@media (max-width: 1024px) {

  .ml-benefits__inner {
    height: 46px;
    padding: 0 20px;
  }

  .ml-benefits__message {
    font-size: 13px;
    line-height: 20px;
  }
}


/* =========================
   МОБИЛЬНЫЙ
   ========================= */

@media (max-width: 640px) {

  .ml-benefits__inner {
    height: 42px;
    padding: 0 14px;
  }

  .ml-benefits__messages {
    height: 20px;
  }

  .ml-benefits__message {
    font-size: 12px;
    line-height: 18px;
    letter-spacing: 0;
  }
}


/* =========================
   МАЛЕНЬКИЕ ТЕЛЕФОНЫ
   ========================= */

@media (max-width: 360px) {

  .ml-benefits__message {
    font-size: 11px;
  }
}


/* =========================
   REDUCED MOTION
   ========================= */

@media (prefers-reduced-motion: reduce) {

  .ml-benefits__message {
    animation: none;
    opacity: 0;

    transform:
      translateX(-50%)
      translateY(-50%);
  }

  .ml-benefits__message::after {
    display: none;
  }

  .ml-benefits__message:first-child {
    opacity: 1;
  }
}
@media(min-width:701px) and (max-width:1024px){header.over-hero{top:46px}}
/* Catalog navigation: original MARTISLOVE menu proportions. */
dialog.drawer{inset:48px auto auto 0;margin:0;width:213px;max-width:100vw;height:calc(100dvh - 48px);max-height:calc(100dvh - 48px);padding:0;background:#f4f4f4;color:#000;box-shadow:8px 0 25px #00000012;overflow-y:auto}
.drawer::backdrop{background:#0003}
.menu-heading{height:84px;padding:16px;border-bottom:1px solid #d7d7d7;display:flex;align-items:center;position:sticky;top:0;background:#f4f4f4;z-index:1}
.menu-toggle{display:flex;align-items:center;justify-content:center;gap:8px;width:136px;height:48px;background:#000;color:#fff;font-size:16px;font-weight:500;padding:0}
.menu-toggle svg{width:16px;height:16px}
.drawer .menu{display:flex;flex-direction:column;gap:0;padding:12px 16px 20px;font-size:14px;line-height:20px}
.menu a{display:flex;align-items:center;min-height:42px}
.menu .menu-section{font-weight:700}
.menu .menu-category{font-weight:400;min-height:30px}
.menu .menu-category+.menu-section{margin-top:12px}
.menu .menu-section:has(+.menu-category){min-height:36px;align-items:flex-end;padding-bottom:6px}
.menu-account{display:none}
.menu a:hover{text-decoration:none}
@media(min-width:701px) and (max-width:1024px){dialog.drawer{top:46px;height:calc(100dvh - 46px);max-height:calc(100dvh - 46px)}}
@media(max-width:700px){dialog.drawer{top:46px;height:calc(100dvh - 46px);max-height:calc(100dvh - 46px)}.menu-account{display:flex;flex-direction:column;margin-top:12px;border-top:1px solid #d7d7d7;padding-top:12px}.menu-account button{min-height:42px}}
@media(max-width:640px){dialog.drawer{top:42px;height:calc(100dvh - 42px);max-height:calc(100dvh - 42px)}}
/* Catalog controls and slide-out filters. */
.listing{padding:18px 4px 70px}.listing h1{font-size:20px;margin:24px 0}.listing .crumb{margin:14px 0 24px}.listing .chips{gap:8px;margin-bottom:14px}.listing .chips a{border-radius:0;padding:8px 13px;background:#f5f5f5}.listing .product-grid{gap:26px 4px}.filter-toolbar{display:flex;justify-content:space-between;align-items:center;min-height:44px;margin-bottom:0}.filter-toolbar>button{display:flex;align-items:center;gap:10px;padding:10px 0}.filter-toolbar svg{width:14px;height:14px}.filter-toolbar select{border:0;background:#fff;padding:10px 6px;font-size:14px;max-width:220px}
dialog.filter-drawer{inset:0 auto 0 0;width:413px;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:40px 48px 40px 45px;overflow-y:auto;box-shadow:none;border:0;background:#fff}.filter-drawer::backdrop{background:#0008}.filter-drawer>.close{top:16px;right:48px;padding:0}.filter-drawer>.close svg{width:22px;height:22px}.filter-drawer h2{font-size:24px;font-weight:700;margin:0 0 14px}.filter-drawer #filters{display:block}.filter-drawer fieldset{border:0;padding:0;margin:24px 0 0;min-width:0}.filter-drawer legend{padding:0;margin-bottom:12px}.filter-categories p{margin:0 0 12px}.filter-categories a{min-height:40px;display:flex;align-items:center;padding:8px 33px}.filter-categories .filter-parent{padding-left:10px}.filter-categories .current{background:#f5f5f5}.price-inputs{display:flex;gap:8px}.filter-drawer #filters .price-inputs input{width:calc(50% - 4px);font-size:14px;padding:10px 16px;height:40px;appearance:textfield}.price-inputs input::-webkit-inner-spin-button{appearance:none}.price-inputs input::placeholder{color:#a4a7ab}.filter-choice{display:flex;align-items:center;gap:8px;min-height:32px;cursor:pointer;font-size:14px}.filter-drawer #filters .filter-choice input{appearance:none;flex:none;width:20px;height:20px;padding:0;margin:0;border:1px solid #dedede;background:#f6f6f6;display:grid;place-content:center}.filter-drawer #filters .filter-choice input:checked{border-color:#111;background:#111}.filter-choice input:checked::after{content:'✓';color:white;font-size:14px}.filter-drawer #filters .filter-sizes input{border-radius:50%;width:24px;height:24px}.filter-sizes input:checked::after{content:'';width:10px;height:10px;border-radius:50%;background:#fff}.color-swatch{display:block;flex:none;width:22px;height:22px;border-radius:50%;object-fit:cover;border:1px solid #0002}.unknown-swatch{background:linear-gradient(135deg,#eee 50%,#999 50%)}.discount-switch{display:flex;align-items:center;position:relative;cursor:pointer;gap:12px;margin-top:16px}.filter-drawer #filters .discount-switch input{position:absolute;right:0;width:40px;height:24px;opacity:0;cursor:pointer}.switch-track{margin-left:auto;width:40px;height:24px;border-radius:20px;border:1px solid #ddd;background:#f6f6f6;flex:none}.switch-track:before{content:'';display:block;width:20px;height:20px;margin:1px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #0002;transition:transform .15s}.discount-switch input:checked+.switch-track{background:#111}.discount-switch input:checked+.switch-track:before{transform:translateX(16px)}.discount-switch input:focus-visible+.switch-track{outline:2px solid #888;outline-offset:3px}.filter-drawer #filters .colors-more{padding:12px 0 4px;background:none;color:#777}.filter-drawer #filters .filter-actions{display:grid;gap:8px;margin-top:10px}.filter-drawer #filters .filter-actions button{height:48px;font-size:16px;padding:10px;background:#f5f5f5}.filter-drawer #filters .filter-actions .black{background:#000;color:#fff}.filter-drawer [hidden]{display:none!important}
@media(max-width:640px){dialog.filter-drawer{width:100%;padding:36px 24px}.filter-drawer>.close{right:22px}.listing h1{font-size:20px}.filter-toolbar select{max-width:190px}}
/* Original KIT content container: 1400px including 16px side padding. */
.listing{width:100%;max-width:1400px;margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px}
/* Keep the catalog anchored to the viewport; only its links may scroll. */
html{scrollbar-gutter:stable}
html:has(dialog.drawer[open]),body:has(dialog.drawer[open]){overflow:hidden;overscroll-behavior:none}
dialog.drawer{position:fixed;inset:0 auto 0 0;top:0;left:0;margin:0;height:100%;max-height:100%;overflow:hidden;transform:none}
dialog.drawer[open]{display:flex;flex-direction:column}
.drawer .menu-heading{position:relative;top:auto;flex:0 0 84px}
.drawer .menu{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.hero-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x pan-y}.hero-track::-webkit-scrollbar,.pdp-track::-webkit-scrollbar{display:none}.hero-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always}.hero-slide img{pointer-events:none;-webkit-user-drag:none}.hero .dots{pointer-events:none}.hero .dots button{pointer-events:auto}
@media(max-width:700px){header{height:56px;padding:0 12px}header.over-hero{position:absolute;top:46px;left:0;right:0;background:transparent}header .logo,header .logo img{width:120px}header nav{gap:14px}header nav svg,header>button svg{width:24px;height:24px}.hero img{aspect-ratio:4/3;object-fit:cover}}
@media(max-width:640px){header.over-hero{top:42px}}

/* Shared header: overlays the first banner, remains visible while scrolling. */
#app > header{position:sticky;top:0;z-index:30;transition:background-color .2s,box-shadow .2s}
#app > header.over-hero{position:fixed;top:var(--header-top,48px);background:transparent}
#app > header.is-scrolled{background:#fff;box-shadow:0 1px 0 #0000000d}
@media(min-width:701px) and (max-width:1024px){#app > header.over-hero{top:var(--header-top,46px)}}
@media(max-width:700px){#app > header.over-hero{top:var(--header-top,42px)}}
@media(prefers-reduced-motion:reduce){#app > header{transition:none}}

/* Product shelves match KIT: edge arrows on desktop, free touch scrolling. */
.shelf-carousel{position:relative}
.shelf-track{scroll-snap-type:none;gap:4px;touch-action:pan-x pan-y;overscroll-behavior-x:contain;cursor:grab}
.shelf-track.is-dragging{cursor:grabbing;user-select:none}
.shelf-track>.card{flex:0 0 calc((100% - 16px)/5)}
.shelf-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;display:grid;place-items:center;width:46px;height:46px;padding:0;border-radius:50%;background:#ffffff80;box-shadow:0 8px 20px #19191a1f;color:#19191a}
.shelf-arrow:hover{background:#fff}
.shelf-arrow[hidden]{display:none}
.shelf-arrow svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.shelf-prev{left:48px}.shelf-next{right:48px}
@media(max-width:767px){.shelf-arrow{display:none}.shelf-track>.card{flex-basis:calc(50% - 18px)}}

@keyframes menu-enter{from{transform:translateX(-100%)}to{transform:translateX(0)}}
@keyframes menu-leave{from{transform:translateX(0)}to{transform:translateX(-100%)}}
@keyframes menu-backdrop-enter{from{background-color:transparent}to{background-color:#0005}}
@keyframes menu-backdrop-leave{from{background-color:#0005}to{background-color:transparent}}
#modal.drawer[open]{animation:menu-enter .28s cubic-bezier(.22,1,.36,1) both}
#modal.drawer[open]::backdrop{animation:menu-backdrop-enter .28s ease both}
#modal.drawer.is-closing{animation:menu-leave .22s ease both;pointer-events:none}
#modal.drawer.is-closing::backdrop{animation:menu-backdrop-leave .22s ease both}
@media(prefers-reduced-motion:reduce){#modal.drawer[open],#modal.drawer[open]::backdrop{animation:none}}

/* Keep the visible promotion strip above the fixed menu and its backdrop. */
#modal.drawer{inset:var(--menu-top,0px) auto 0 0;height:calc(100dvh - var(--menu-top,0px));max-height:calc(100dvh - var(--menu-top,0px))}
#modal.drawer::backdrop{top:var(--menu-top,0px)}

/* Filter panel shares the menu motion, retaining its darker backdrop. */
@keyframes filter-backdrop-enter{from{opacity:0}to{opacity:1}}
@keyframes filter-backdrop-leave{from{opacity:1}to{opacity:0}}
#modal.filter-drawer[open]{animation:menu-enter .28s cubic-bezier(.22,1,.36,1) both}
#modal.filter-drawer[open]::backdrop{animation:filter-backdrop-enter .28s ease both}
#modal.filter-drawer.is-closing{animation:menu-leave .22s ease both;pointer-events:none}
#modal.filter-drawer.is-closing::backdrop{animation:filter-backdrop-leave .22s ease both}
@media(prefers-reduced-motion:reduce){#modal.filter-drawer[open],#modal.filter-drawer[open]::backdrop{animation:none}}
