

/* Start:/local/templates/daf_2020/vendor/swiper-12.2.0/swiper-bundle.min.css?179277024714609*/
/**
 * Swiper 12.2.0
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2026 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: May 27, 2026
 */

:root{--swiper-theme-color:#007aff}:host{display:block;margin-left:auto;margin-right:auto;position:relative;z-index:1}.swiper{display:block;list-style:none;margin-left:auto;margin-right:auto;overflow:hidden;padding:0;position:relative;z-index:1}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{box-sizing:initial;display:flex;height:100%;position:relative;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);width:100%;z-index:1}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{display:block;flex-shrink:0;height:100%;position:relative;transition-property:transform;width:100%}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{backface-visibility:hidden;transform:translateZ(0)}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px;.swiper-cube-shadow,.swiper-slide{transform-style:preserve-3d}}.swiper-css-mode{>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none;&::-webkit-scrollbar{display:none}}>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}&.swiper-horizontal{>.swiper-wrapper{scroll-snap-type:x mandatory}>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-slides-offset-before);scroll-margin-inline-start:var(--swiper-slides-offset-before)}>.swiper-wrapper>.swiper-slide:last-child{margin-inline-end:var(--swiper-slides-offset-after)}}&.swiper-vertical{>.swiper-wrapper{scroll-snap-type:y mandatory}>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-slides-offset-before);scroll-margin-block-start:var(--swiper-slides-offset-before)}>.swiper-wrapper>.swiper-slide:last-child{margin-block-end:var(--swiper-slides-offset-after)}}&.swiper-free-mode{>.swiper-wrapper{scroll-snap-type:none}>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}}&.swiper-centered{>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}}&.swiper-centered.swiper-horizontal{>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}}&.swiper-centered.swiper-vertical{>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}>.swiper-wrapper:before{height:var(--swiper-centered-offset-after);min-width:1px;width:100%}}}.swiper-3d{.swiper-slide-shadow,.swiper-slide-shadow-bottom,.swiper-slide-shadow-left,.swiper-slide-shadow-right,.swiper-slide-shadow-top{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:10}.swiper-slide-shadow{background:#00000026}.swiper-slide-shadow-left{background-image:linear-gradient(270deg,#00000080,#0000)}.swiper-slide-shadow-right{background-image:linear-gradient(90deg,#00000080,#0000)}.swiper-slide-shadow-top{background-image:linear-gradient(0deg,#00000080,#0000)}.swiper-slide-shadow-bottom{background-image:linear-gradient(180deg,#00000080,#0000)}}.swiper-lazy-preloader{border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top:4px solid #0000;box-sizing:border-box;height:42px;left:50%;margin-left:-21px;margin-top:-21px;position:absolute;top:50%;transform-origin:50%;width:42px;z-index:10}.swiper-watch-progress .swiper-slide-visible,.swiper:not(.swiper-watch-progress){.swiper-lazy-preloader{animation:swiper-preloader-spin 1s linear infinite}}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode{.swiper-wrapper:after{content:"";left:0;pointer-events:none;position:absolute;top:0}}.swiper-virtual.swiper-css-mode.swiper-horizontal{.swiper-wrapper:after{height:1px;width:var(--swiper-virtual-size)}}.swiper-virtual.swiper-css-mode.swiper-vertical{.swiper-wrapper:after{height:var(--swiper-virtual-size);width:1px}}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{align-items:center;color:var(--swiper-navigation-color,var(--swiper-theme-color));cursor:pointer;display:flex;height:var(--swiper-navigation-size);justify-content:center;position:absolute;width:var(--swiper-navigation-size);z-index:10;&.swiper-button-disabled{cursor:auto;opacity:.35;pointer-events:none}&.swiper-button-hidden{cursor:auto;opacity:0;pointer-events:none}.swiper-navigation-disabled &{display:none!important}::slotted(svg),svg{height:100%;object-fit:contain;transform-origin:center;width:100%;fill:currentColor;pointer-events:none}}.swiper-button-lock{display:none}.swiper-button-next,.swiper-button-prev{margin-top:calc(0px - var(--swiper-navigation-size)/2);top:var(--swiper-navigation-top-offset,50%)}.swiper-button-prev{left:var(--swiper-navigation-sides-offset,4px);right:auto;.swiper-navigation-icon,::slotted(.swiper-navigation-icon){transform:rotate(180deg)}}.swiper-button-next{left:auto;right:var(--swiper-navigation-sides-offset,4px)}.swiper-horizontal{.swiper-button-next,.swiper-button-prev,~.swiper-button-next,~.swiper-button-prev{margin-left:0;margin-top:calc(0px - var(--swiper-navigation-size)/2);top:var(--swiper-navigation-top-offset,50%)}&.swiper-rtl .swiper-button-next,&.swiper-rtl~.swiper-button-next,&~.swiper-button-prev,.swiper-button-prev{left:var(--swiper-navigation-sides-offset,4px);right:auto}&.swiper-rtl .swiper-button-prev,&.swiper-rtl~.swiper-button-prev,&~.swiper-button-next,.swiper-button-next{left:auto;right:var(--swiper-navigation-sides-offset,4px)}&.swiper-rtl .swiper-button-next,&.swiper-rtl~.swiper-button-next,&~.swiper-button-prev,.swiper-button-prev{.swiper-navigation-icon,::slotted(.swiper-navigation-icon){transform:rotate(180deg)}}&.swiper-rtl .swiper-button-prev,&.swiper-rtl~.swiper-button-prev{.swiper-navigation-icon,::slotted(.swiper-navigation-icon){transform:rotate(0deg)}}}.swiper-vertical{.swiper-button-next,.swiper-button-prev,~.swiper-button-next,~.swiper-button-prev{left:var(--swiper-navigation-top-offset,50%);margin-left:calc(0px - var(--swiper-navigation-size)/2);margin-top:0;right:auto}.swiper-button-prev,~.swiper-button-prev{bottom:auto;top:var(--swiper-navigation-sides-offset,4px);.swiper-navigation-icon,::slotted(.swiper-navigation-icon){transform:rotate(-90deg)}}.swiper-button-next,~.swiper-button-next{bottom:var(--swiper-navigation-sides-offset,4px);top:auto;.swiper-navigation-icon,::slotted(.swiper-navigation-icon){transform:rotate(90deg)}}}.swiper-pagination{position:absolute;text-align:center;transform:translateZ(0);transition:opacity .3s;z-index:10;&.swiper-pagination-hidden{opacity:0}&.swiper-pagination-disabled,.swiper-pagination-disabled>&{display:none!important}}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:var(--swiper-pagination-bottom,8px);left:0;top:var(--swiper-pagination-top,auto);width:100%}.swiper-pagination-bullets-dynamic{font-size:0;overflow:hidden;.swiper-pagination-bullet{position:relative;transform:scale(.33)}.swiper-pagination-bullet-active,.swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullet-active-next-next{transform:scale(.33)}}.swiper-pagination-bullet{background:var(--swiper-pagination-bullet-inactive-color,#000);border-radius:var(--swiper-pagination-bullet-border-radius,50%);display:inline-block;height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));opacity:var(--swiper-pagination-bullet-inactive-opacity,.2);width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));button&{appearance:none;border:none;box-shadow:none;margin:0;padding:0}.swiper-pagination-clickable &{cursor:pointer}&:only-child{display:none!important}}.swiper-pagination-bullet-active{background:var(--swiper-pagination-color,var(--swiper-theme-color));opacity:var(--swiper-pagination-bullet-opacity,1)}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{left:var(--swiper-pagination-left,auto);right:var(--swiper-pagination-right,8px);top:50%;transform:translate3d(0,-50%,0);.swiper-pagination-bullet{display:block;margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0}&.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px;.swiper-pagination-bullet{display:inline-block;transition:transform .2s,top .2s}}}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets{.swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}&.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap;.swiper-pagination-bullet{transition:transform .2s,left .2s}}}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,right .2s}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color,inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color,#00000040);position:absolute;.swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));height:100%;left:0;position:absolute;top:0;transform:scale(0);transform-origin:left top;width:100%}.swiper-rtl & .swiper-pagination-progressbar-fill{transform-origin:right top}&.swiper-pagination-horizontal,&.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-horizontal>&,.swiper-vertical>&.swiper-pagination-progressbar-opposite{height:var(--swiper-pagination-progressbar-size,4px);left:0;top:0;width:100%}&.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,&.swiper-pagination-vertical,.swiper-horizontal>&.swiper-pagination-progressbar-opposite,.swiper-vertical>&{height:100%;left:0;top:0;width:var(--swiper-pagination-progressbar-size,4px)}}.swiper-pagination-lock{display:none}.swiper-scrollbar{background:var(--swiper-scrollbar-bg-color,#0000001a);border-radius:var(--swiper-scrollbar-border-radius,10px);position:relative;touch-action:none;&.swiper-scrollbar-disabled,.swiper-scrollbar-disabled>&{display:none!important}&.swiper-scrollbar-horizontal,.swiper-horizontal>&{bottom:var(--swiper-scrollbar-bottom,4px);height:var(--swiper-scrollbar-size,4px);left:var(--swiper-scrollbar-sides-offset,1%);position:absolute;top:var(--swiper-scrollbar-top,auto);width:calc(100% - var(--swiper-scrollbar-sides-offset, 1%)*2);z-index:50}&.swiper-scrollbar-vertical,.swiper-vertical>&{height:calc(100% - var(--swiper-scrollbar-sides-offset, 1%)*2);left:var(--swiper-scrollbar-left,auto);position:absolute;right:var(--swiper-scrollbar-right,4px);top:var(--swiper-scrollbar-sides-offset,1%);width:var(--swiper-scrollbar-size,4px);z-index:50}}.swiper-scrollbar-drag{background:var(--swiper-scrollbar-drag-bg-color,#00000080);border-radius:var(--swiper-scrollbar-border-radius,10px);height:100%;left:0;position:relative;top:0;width:100%}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{align-items:center;display:flex;height:100%;justify-content:center;text-align:center;width:100%;>canvas,>img,>svg{max-height:100%;max-width:100%;object-fit:contain}}.swiper-slide-zoomed{cursor:move;touch-action:none}.swiper .swiper-notification{left:0;opacity:0;pointer-events:none;position:absolute;top:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{margin:0 auto;transition-timing-function:ease-out}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-direction:column;flex-wrap:wrap}.swiper-fade{&.swiper-free-mode{.swiper-slide{transition-timing-function:ease-out}}.swiper-slide{pointer-events:none;transition-property:opacity;.swiper-slide{pointer-events:none}}.swiper-slide-active{pointer-events:auto;& .swiper-slide-active{pointer-events:auto}}}.swiper.swiper-cube{overflow:visible}.swiper-cube{.swiper-slide{backface-visibility:hidden;height:100%;pointer-events:none;transform-origin:0 0;visibility:hidden;width:100%;z-index:1;.swiper-slide{pointer-events:none}}&.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-slide-active{&,& .swiper-slide-active{pointer-events:auto}}.swiper-slide-active,.swiper-slide-next,.swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube-shadow{bottom:0;height:100%;left:0;opacity:.6;position:absolute;width:100%;z-index:0;&:before{background:#000;bottom:0;content:"";filter:blur(50px);left:0;position:absolute;right:0;top:0}}}.swiper-cube{.swiper-slide-next+.swiper-slide{pointer-events:auto;visibility:visible}}.swiper-cube{.swiper-slide-shadow-cube.swiper-slide-shadow-bottom,.swiper-slide-shadow-cube.swiper-slide-shadow-left,.swiper-slide-shadow-cube.swiper-slide-shadow-right,.swiper-slide-shadow-cube.swiper-slide-shadow-top{backface-visibility:hidden;z-index:0}}.swiper.swiper-flip{overflow:visible}.swiper-flip{.swiper-slide{backface-visibility:hidden;pointer-events:none;z-index:1;.swiper-slide{pointer-events:none}}.swiper-slide-active{&,& .swiper-slide-active{pointer-events:auto}}}.swiper-flip{.swiper-slide-shadow-flip.swiper-slide-shadow-bottom,.swiper-slide-shadow-flip.swiper-slide-shadow-left,.swiper-slide-shadow-flip.swiper-slide-shadow-right,.swiper-slide-shadow-flip.swiper-slide-shadow-top{backface-visibility:hidden;z-index:0}}.swiper-creative{.swiper-slide{backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}}.swiper.swiper-cards{overflow:visible}.swiper-cards{.swiper-slide{backface-visibility:hidden;overflow:hidden;transform-origin:center bottom}}
/* End */


/* Start:/local/templates/daf_2020/fonts/montserrat-var/montserrat-var.css?17927702473108*/
/* Montserrat 100–900 (Google Fonts), локальная копия 23.10.2026 */
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(/local/templates/daf_2020/fonts/montserrat-var/montserrat-italic-cyrillic-ext.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(/local/templates/daf_2020/fonts/montserrat-var/montserrat-italic-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(/local/templates/daf_2020/fonts/montserrat-var/montserrat-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(/local/templates/daf_2020/fonts/montserrat-var/montserrat-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;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/local/templates/daf_2020/fonts/montserrat-var/montserrat-normal-cyrillic-ext.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/local/templates/daf_2020/fonts/montserrat-var/montserrat-normal-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/local/templates/daf_2020/fonts/montserrat-var/montserrat-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/local/templates/daf_2020/fonts/montserrat-var/montserrat-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;
}

/* End */


/* Start:/local/templates/daf_2020/components/bitrix/catalog/.default/bitrix/catalog.element/new_072026/style_new.css?1793463816133467*/
* {
  padding: 0px;
  margin: 0px;
  border: 0px;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

*::before,
*::after {
  display: inline-block;
}

html,
body {
  font-size: 16px !important;
  height: 100%;
}

body {
  line-height: 1;
  scrollbar-gutter: stable;
  -ms-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

input,
button,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
  background-color: transparent;
}

input,
textarea {
  width: 100%;
}

label {
  display: inline-block;
}

button,
select,
option {
  cursor: pointer;
}

a {
  display: inline-block;
  color: inherit;
  text-decoration: none;
}

li {
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: inherit;
  font-size: inherit;
}

address {
  font-style: normal;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  padding: 0;
  background-color: #ffffff;
  font-family: "Montserrat", sans-serif;
}

body.modal-open {
  overflow: hidden;
}

h1,
h2,
h3,
h4,
h5,
h6,
span,
p {
  margin: 0;
  padding: 0;
  font-synthesis: none;
}

a {
  text-decoration: none;
  font-synthesis: none;
}

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

li {
  list-style: none;
}

.wrapper {
  overflow: hidden;
  width: 100%;
}

.container,
.container-lg,
.container-md,
.container-sm,
.container-xl {
  max-width: 1860px;
  padding: 0 20px;
  margin: 0 auto;
}

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

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
}

.input-box {
  position: relative;
  width: 100%;
}

.input-box--error > :first-child:not(.input-error-hint) {
  padding-right: 40px;
}

.input-error-hint {
  display: none;
  position: absolute;
  top: 50%;
  right: 12px;
  z-index: 2;
  transform: translateY(-50%);
}
.input-box--error .input-error-hint {
  display: block;
}
.input-error-hint.is-open {
  z-index: 100;
}

.input-box--error:nth-of-type(1) .input-error-hint.is-open {
  z-index: 110;
}

.input-box--error:nth-of-type(2) .input-error-hint.is-open {
  z-index: 109;
}

.input-box--error:nth-of-type(3) .input-error-hint.is-open {
  z-index: 108;
}

.input-box--error:nth-of-type(4) .input-error-hint.is-open {
  z-index: 107;
}

.input-box--error:nth-of-type(5) .input-error-hint.is-open {
  z-index: 106;
}

.input-box--error:nth-of-type(6) .input-error-hint.is-open {
  z-index: 105;
}

.input-box--error:nth-of-type(7) .input-error-hint.is-open {
  z-index: 104;
}

.input-box--error:nth-of-type(8) .input-error-hint.is-open {
  z-index: 103;
}

.input-box--error:nth-of-type(9) .input-error-hint.is-open {
  z-index: 102;
}

.input-box--error:nth-of-type(10) .input-error-hint.is-open {
  z-index: 101;
}

.input-error-hint__trigger {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  padding: 0;
  border: none;
  background: none;
  font: inherit;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  color: #e24e4d;
  cursor: pointer;
}

.input-error-tooltip {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  left: auto;
  z-index: 2;
  width: -moz-max-content;
  width: max-content;
  max-width: min(320px, 100vw - 40px);
  padding: 10px 12px;
  border: 1px solid rgba(79, 90, 101, 0.12);
  background: #ffffff;
  box-shadow: 0 4px 16px rgba(79, 90, 101, 0.12);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.35;
  color: rgba(79, 90, 101, 0.8);
  text-align: left;
  white-space: normal;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition:
    opacity 0.2s ease,
    visibility 0.2s ease;
}
.input-error-tooltip::before {
  content: "";
  position: absolute;
  top: -5px;
  right: 4px;
  left: auto;
  width: 10px;
  height: 10px;
  background: #ffffff;
  border-top: 1px solid rgba(79, 90, 101, 0.12);
  border-left: 1px solid rgba(79, 90, 101, 0.12);
  transform: rotate(45deg);
}
.input-error-hint.is-open .input-error-tooltip {
  z-index: 2;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.input-error-tooltip__text {
  display: block;
}

[data-checkbox-consent] {
  position: relative;
}

.checkbox-consent--error .faq-consult__checkbox,
.checkbox-consent--error .oneclick-modal__checkbox {
  outline: 1px solid #e24e4d;
  outline-offset: 0;
}
.checkbox-consent--error .faq-consult__agree-text a,
.checkbox-consent--error .oneclick-modal__check-text a {
  color: #e24e4d;
  text-decoration-color: #e24e4d;
}

.faq-consult__checkbox,
.oneclick-modal__checkbox {
  overflow: visible;
}

.checkbox-consent-tooltip {
  position: absolute;
  top: 50%;
  left: calc(100% + 8px);
  z-index: 100;
  width: -moz-max-content;
  width: max-content;
  max-width: min(280px, 100vw - 40px);
  padding: 8px 12px;
  border: 1px solid rgba(79, 90, 101, 0.12);
  background: #ffffff;
  box-shadow: 0 4px 16px rgba(79, 90, 101, 0.12);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.35;
  color: #e24e4d;
  white-space: normal;
  transform: translateY(-50%);
  pointer-events: none;
}
.checkbox-consent-tooltip::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -5px;
  width: 10px;
  height: 10px;
  background: #ffffff;
  border-bottom: 1px solid rgba(79, 90, 101, 0.12);
  border-left: 1px solid rgba(79, 90, 101, 0.12);
  transform: translateY(-50%) rotate(45deg);
}
.oneclick-modal__checkbox .checkbox-consent-tooltip {
  left: calc(100% + 10px);
}
.checkbox-consent-tooltip__text {
  display: block;
}

.gallery-product {
  display: flex;
  gap: 24px;
}
.gallery-product:not([data-has-video="true"]) .gallery-product__play,
.gallery-product:not([data-has-video="true"]) .gallery-product__watch-mobile,
.gallery-product:not([data-has-video="true"]) .main-gallery__slide--video {
  display: none;
}
@media (max-width: 1023px) {
  .gallery-product {
    gap: 0;
  }
}
.gallery-product__left {
  flex: 0 0 150px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}
@media (max-width: 1023px) {
  .gallery-product__left {
    display: none;
  }
}
.gallery-product__thumbs-shell {
  position: relative;
  width: 100%;
}
.gallery-product__thumbs-viewport {
  width: 100%;
  overflow: hidden;
  cursor: grab;
  touch-action: pan-x;
}
.gallery-product__thumbs-viewport.is-dragging {
  cursor: grabbing;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.gallery-product__thumbs-viewport:has(.thumbs-gallery__item:nth-child(5)) {
  max-height: calc(150px * 4 + 4px * (4 - 1));
}
.gallery-product__thumbs {
  display: flex;
  flex-direction: column;
  gap: 4px;
  transition: transform 0.3s ease;
  will-change: transform;
}
.gallery-product__thumbs.is-dragging {
  transition: none;
}
.gallery-product__prev,
.gallery-product__more {
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 4px 0;
  border: none;
  background: transparent;
  cursor: pointer;
  transition: opacity 0.3s ease;
}
.gallery-product__prev img,
.gallery-product__more img {
  width: 16px;
  height: 16px;
}
.gallery-product__prev {
  position: absolute;
  left: 0;
  right: 0;
  bottom: calc(100% + 4px);
  z-index: 2;
  display: flex;
  height: 24px;
  padding: 0;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
}
.gallery-product__prev.is-visible {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}
.gallery-product__prev img {
  transform: rotate(180deg);
}
.gallery-product__more {
  display: none;
}
.gallery-product:has(.thumbs-gallery__item:nth-child(5))
  .gallery-product__more {
  display: flex;
}
.gallery-product__more.is-visible {
  display: flex;
}
.gallery-product__play {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  width: 100%;
  padding: 30px;
  border: none;
  background-color: #f9f9fa;
  font-weight: 500;
  font-size: 16px;
  line-height: 135%;
  color: #232323;
  cursor: pointer;
}
.gallery-product__play img {
  width: 32px;
  height: 32px;
}
.gallery-product__right {
  flex: 1 1 auto;
  position: relative;
  min-width: 0;
}
.gallery-product__watch-mobile {
  display: none;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  margin-top: 4px;
  padding: 8px 16px;
  background: #f9f9fa;
  font-weight: 500;
  font-size: 14px;
  line-height: 1.35;
  color: #232323;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.gallery-product__watch-mobile img {
  width: 24px;
  height: 24px;
}
@media (max-width: 1023px) {
  .gallery-product__watch-mobile {
    display: flex;
  }
}
.gallery-product__flags {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 10;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}
.gallery-product__flags span {
  text-transform: uppercase;
  color: #ffffff;
  padding: 4px 8px;
  font-weight: 500;
  font-size: 14px;
  line-height: 135%;
}
.gallery-product__main {
  width: 100%;
}

.thumbs-gallery__item {
  flex-shrink: 0;
  width: 100%;
  height: 150px;
  padding: 0;
  border: none;
  background-color: transparent;
  cursor: pointer;
  overflow: hidden;
  transition: background-color 0.3s ease;
}
.thumbs-gallery__item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  display: block;
  pointer-events: none;
}
.thumbs-gallery__item.is-active {
  background-color: #f9f9fa;
}

.main-gallery {
  position: relative;
}
.main-gallery__viewport {
  width: 100%;
  overflow: hidden;
  height: 780px;
}
@media (max-width: 1023px) {
  .main-gallery__viewport {
    height: auto;
    aspect-ratio: 1/1;
    touch-action: pan-y pinch-zoom;
    cursor: grab;
  }
}
.main-gallery__viewport {
  touch-action: pan-y;
}
.main-gallery__viewport.is-dragging {
  cursor: grabbing;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
@media (min-width: 991px) {
  .main-gallery__viewport {
    background-color: #fafafa;
  }
}
.main-gallery__track {
  display: flex;
  height: 100%;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  will-change: transform;
}
.main-gallery__track.is-dragging {
  transition: none;
}
.main-gallery__slide {
  display: flex;
  flex: 0 0 100%;
  align-items: center;
  justify-content: center;
  min-width: 0;
  height: 100%;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-user-drag: none;
}
.main-gallery__image {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  display: block;
  transition: transform 0.15s ease-out;
  will-change: transform;
}
.main-gallery__video {
  position: relative;
  width: 100%;
  height: 100%;
  background-color: #232323;
}
.main-gallery__video-el {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  background-color: #232323;
}
.main-gallery__video-play {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: none;
  background: rgba(35, 35, 35, 0.25);
  cursor: pointer;
  transition: opacity 0.3s ease;
}
.main-gallery__video-play img {
  width: 64px;
  height: 64px;
}
.main-gallery__slide--video.is-playing .main-gallery__video-play {
  opacity: 0;
  pointer-events: none;
}
.main-gallery__dots {
  display: none;
  justify-content: center;
  gap: 8px;
  margin-top: 12px;
}
@media (max-width: 1023px) {
  .main-gallery__dots {
    display: flex;
    position: absolute;
    right: 0;
    bottom: 8px;
    left: 0;
    z-index: 2;
    margin-top: 0;
  }
}
.main-gallery__dot {
  width: 6px;
  height: 6px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: rgba(79, 90, 101, 0.2);
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.main-gallery__dot.is-active {
  background: #4f5a65;
}

@media (min-width: 1024px) {
  .product__details:not(:has(.details-product__text-wrap.is-expanded))
    .details-product {
    height: 100%;
    display: flex;
    flex-direction: column;
    min-height: 0;
  }
}
.details-product__title {
  margin-bottom: 16px;
  font-size: 36px;
  letter-spacing: 0.01em;
  text-transform: uppercase;
}
@media screen and (max-width: 768px) {
  .details-product__title {
    font-size: 20px;
    text-transform: none;
    font-weight: 500;
    line-height: 1.45;
  }
}
.details-product__group {
  display: flex;
  gap: 12px;
  justify-content: space-between;
  margin-bottom: 4px;
}
.details-product__availability {
  color: #4caf50;
}
@media (max-width: 768px) {
  .details-product__availability {
    font-size: 14px;
  }
}
.details-product__sku {
  display: flex;
  align-items: center;
  gap: 4px;
  color: rgba(79, 90, 101, 0.6);
}
.details-product__sku strong {
  color: #4f5a65;
  font-weight: 500;
}
@media (max-width: 991px) {
  .details-product__sku {
    position: absolute;
    top: 5px;
    right: 0px;
    font-size: 14px;
  }
}
.details-product__sku-copy {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
}
.details-product__sku-copy img {
  display: block;
  width: 20px;
  height: 20px;
  transition: opacity 0.2s ease;
}
.details-product__sku-copy.is-copied img {
  width: 20px;
  height: 14px;
}
.details-product__pickup {
  margin-bottom: 24px;
  font-weight: 500;
  color: rgba(79, 90, 101, 0.6);
  line-height: 1.65;
}
.details-product__pickup button,
.details-product__pickup .details-product__store-btn {
  position: relative;
  padding: 0;
  border: none;
  background: none;
  font: inherit;
  font-weight: 500;
  color: #4f5a65;
  cursor: pointer;
}
.details-product__pickup button::after,
.details-product__pickup .details-product__store-btn::after {
  content: "";
  width: 100%;
  height: 1px;
  border-bottom: 2px dotted #e24e4d;
  position: absolute;
  bottom: -2px;
  left: 0;
}
.details-product__pickup .details-product__store {
  position: relative;
  display: inline;
}
.details-product__pickup .details-product__store-tooltip {
  top: calc(100% + 10px);
  left: 50%;
  right: auto;
  max-width: min(256px, (100vw - 40px) * 0.8);
  transform: translateX(-50%);
  z-index: 100;
}
.details-product__pickup .details-product__store-tooltip::before {
  top: -5px;
  left: 50%;
  right: auto;
  transform: translateX(-50%) rotate(45deg);
}
.details-product__pickup
  .details-product__store:hover
  .details-product__store-tooltip,
.details-product__pickup
  .details-product__store:focus-within
  .details-product__store-tooltip {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
@media (max-width: 768px) {
  .details-product__pickup {
    font-size: 14px;
  }
}
.details-product__sizes {
  margin-bottom: 24px;
}
.details-product__description {
  margin-bottom: 24px;
  --desc-lines: 4;
  --desc-line-height: 1.45;
}

.details-product__description > h3 {
  margin-bottom: 12px;
  font-size: 24px;
  letter-spacing: 0.01em;
  font-weight: 500;
}
@media (min-width: 1024px) {
  .product__details:not(:has(.details-product__text-wrap.is-expanded))
    .details-product__description {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: 0;
  }
}
.product-preview__title {
  font-size: 24px;
  font-weight: 500;
  margin-bottom: 12px;
  letter-spacing: 0.01em;
}
@media (max-width: 768px) {
  .product-preview__title {
    font-size: 20px;
  }
}
.details-product__description.is-truncated .details-product__show-more {
  display: inline-block;
}
.details-product__text-wrap {
  overflow: hidden;
  transition: max-height 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
.details-product__text-wrap:not(.is-expanded) {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
}
.details-product__text-wrap.is-expanded {
  display: block;
}
.details-product__text {
  color: #4f5a65;
  font-size: 16px;
  line-height: var(--desc-line-height);
}
.details-product__show-more {
  display: none;
  align-self: flex-start;
  width: -moz-fit-content;
  width: fit-content;
  flex-shrink: 0;
  margin-top: 8px;
  padding: 0;
  border: none;
  background: none;
  font-weight: 500;
  font-size: 16px;
  line-height: var(--desc-line-height);
  color: #4f5a65;
  cursor: pointer;
  position: relative;
}
.details-product__show-more::after {
  content: "";
  width: 100%;
  height: 1px;
  border-bottom: 2px dotted #e24e4d;
  position: absolute;
  bottom: -2px;
  left: 0;
}
@media (min-width: 1024px) {
  .product__details:not(:has(.details-product__text-wrap.is-expanded))
    .details-product__actions {
    margin-top: auto;
    flex-shrink: 0;
  }
}
@media (min-width: 991px) {
  .details-product__actions {
    padding: 20px;
    border: 1px solid rgba(79, 90, 101, 0.2);
  }
}

.size-product__top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px 16px;
  margin-bottom: 12px;
}
.size-product__error {
  position: absolute;
  left: 115%;
  top: 50%;
  transform: translateY(-50%);
  justify-self: center;
  margin: 0;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 16px;
  line-height: 1.35;
  color: #e24e4d;
  white-space: nowrap;
  background-color: #ffffff;
  z-index: 1000;
  box-shadow: 0 4px 16px 0 rgba(0, 0, 0, 0.2);
  padding: 12px 16px;
  border: 1px solid rgba(79, 90, 101, 0.2);
  border-left: 0;
}
.size-product__error[hidden] {
  display: none;
}
.size-product__error::before {
  content: "";
  width: 10px;
  height: 20px;
  background: url("/local/templates/daf_2020/components/bitrix/catalog/.default/bitrix/catalog.element/new_072026/../img/triangle.svg");
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -10px;
}
@media (max-width: 768px) {
  .size-product__error {
    font-size: 14px;
  }
}
.size-product__determine-size {
  position: relative;
  justify-self: end;
  padding: 0;
  border: none;
  background: none;
  font: inherit;
  font-weight: 500;
  color: #4f5a65;
  cursor: pointer;
}
.size-product__determine-size::after {
  content: "";
  width: 100%;
  height: 1px;
  border-bottom: 2px dotted #e24e4d;
  position: absolute;
  bottom: -2px;
  left: 0;
}
@media (max-width: 768px) {
  .size-product__determine-size {
    font-size: 14px;
  }
}
.size-product__title {
  font-weight: 500;
  font-size: 24px;
  position: relative;
}
@media (max-width: 768px) {
  .size-product__title {
    font-size: 20px;
  }
}
.size-product__grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 4px;
}
@media (min-width: 768px) {
  .size-product__grid {
    grid-template-columns: repeat(7, 1fr);
  }
}
@media (min-width: 991px) {
  .size-product__grid {
    grid-template-columns: repeat(9, 1fr);
  }
}
@media (min-width: 1280px) {
  .size-product__grid {
    grid-template-columns: repeat(10, 1fr);
  }
}
.size-product__item {
  position: relative;
  height: 46px;
}
/* 31.10.2026: вид плитки (рамка, выбранная, галочка) — общий класс .daf-size-tile в custom.css */
.size-product__item label {
  width: 100%;
  height: 100%;
}
.size-product__item input {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  visibility: hidden;
}
.actions-product {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px 12px;
}
@media (max-width: 768px) {
  .actions-product {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px 12px;
  }
}
.actions-product__top {
  grid-column: 1/-1;
  display: flex;
  justify-content: space-between;
  gap: 10px;
}
.actions-product__middle {
  display: contents;
}
.actions-product__bottom {
  display: contents;
}

.top-actions-product__bonuses {
  padding: 14px 12px;
  background-color: #f9f9fa;
  line-height: 1.35;
  font-size: 14px;
  color: #4f5a65;
}
.top-actions-product__bonuses strong {
  font-weight: inherit;
  color: inherit;
}
.top-actions-product__bonuses span {
  display: block;
  font-weight: 500;
}
@media (max-width: 768px) {
  .top-actions-product__bonuses {
    font-size: 12px;
    padding: 12px 8px;
  }
}

.price-product__price {
  font-size: 36px;
  font-weight: 300;
  line-height: 1.35;
}
@media (max-width: 768px) {
  .price-product__price {
    font-size: 28px;
  }
}
.price-product__discount {
  display: flex;
  gap: 8px;
  align-items: center;
}
@media (max-width: 768px) {
  .price-product__discount {
    font-size: 12px;
  }
}
.price-product__discount-size {
  background: #e24e4d;
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  padding: 2px 4px;
}
@media (max-width: 768px) {
  .price-product__discount-size {
    font-size: 12px;
  }
}
.price-product__old-price {
  color: rgba(79, 90, 101, 0.6);
  text-decoration: line-through;
}

.middle-actions-product__submit {
  grid-column: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  background-color: #e24e4d;
  border: 1px solid #e24e4d;
  color: #fff;
  padding: 15px 22px;
  transition: all 0.2s ease;
}
@media (max-width: 768px) {
  .middle-actions-product__submit {
    grid-column: 1/-1;
  }
}
.middle-actions-product__submit img {
  display: block;
  transition: filter 0.2s ease;
}
.middle-actions-product__submit:hover {
  background-color: #fff;
  color: #e24e4d;
}
.middle-actions-product__submit:hover img {
  filter: brightness(0) saturate(100%) invert(43%) sepia(72%) saturate(2285%)
    hue-rotate(329deg) brightness(95%) contrast(92%);
}
.middle-actions-product__onelick {
  grid-column: 2;
  padding: 17px 22px;
  border: 1px solid #e24e4d;
  color: #e24e4d;
  transition: all 0.2s ease;
}
@media (max-width: 768px) {
  .middle-actions-product__onelick {
    grid-column: 1;
  }
}
.middle-actions-product__onelick:hover {
  background: #e24e4d;
  color: #fff;
}
.middle-actions-product__add-to-favorites {
  grid-column: 3;
  padding: 15px;
  border: 1px solid #e24e4d;
  background: transparent;
  color: #e24e4d;
  transition: all 0.2s ease;
  cursor: pointer;
}
@media (max-width: 768px) {
  .middle-actions-product__add-to-favorites {
    grid-column: 2;
  }
}
.middle-actions-product__add-to-favorites:hover {
  color: #e24e4d;
}
@media (hover: hover) and (pointer: fine) {
  .middle-actions-product__add-to-favorites:hover path,
  .product-mobile-bar__favorite:hover path {
    fill: currentColor;
  }
}
.middle-actions-product__heart {
  display: block;
}
.middle-actions-product__heart path {
  fill: none;
  transition: fill 0.2s ease;
}
.middle-actions-product__add-to-favorites.is-active path {
  fill: currentColor;
}

.bottom-actions-product__details {
  grid-column: 1;
  font-weight: 500;
  color: rgba(79, 90, 101, 0.6);
}
.bottom-actions-product__details strong {
  font-weight: 500;
  color: #4f5a65;
}
@media (max-width: 1800px) {
  .bottom-actions-product__details br {
    display: none;
  }
}
@media (max-width: 768px) {
  .bottom-actions-product__details {
    display: none;
  }
}
.bottom-actions-product__period {
  grid-column: 2/-1;
  min-width: 0;
}
@media (max-width: 768px) {
  .bottom-actions-product__period {
    grid-column: 1/-1;
  }
}

.period-product-actions {
  position: relative;
  width: 100%;
}
.period-product-actions.is-open {
  z-index: 100;
}
.period-product-actions__button {
  display: flex;
  justify-content: space-between;
  gap: 5px;
  align-items: center;
  width: 100%;
  padding: 13px 16px;
  border: none;
  background-color: #ffdd2d;
  font: inherit;
  font-weight: 500;
  cursor: pointer;
}
.period-product-actions__chevron {
  flex-shrink: 0;
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.period-product-actions.is-open .period-product-actions__chevron {
  transform: rotate(180deg);
}
.period-product-actions__list-wrap {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  width: 100%;
  z-index: 100;
  display: grid;
  grid-template-rows: 0fr;
  pointer-events: none;
  transition: grid-template-rows 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.period-product-actions.is-open .period-product-actions__list-wrap {
  grid-template-rows: 1fr;
  pointer-events: auto;
}
.period-product-actions__list {
  overflow: hidden;
  min-height: 0;
  box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.08);
  padding: 8px;
  background-color: #f9f9fa;
  opacity: 0;
  transform: translateY(-8px);
  transition:
    opacity 0.3s ease,
    transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.period-product-actions__list button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 10px;
  border: none;
  background: none;
  font: inherit;
  font-weight: 500;
  text-align: center;
  cursor: pointer;
  transition: color 0.2s ease;
}
.period-product-actions__list button:hover {
  color: #e24e4d;
}
.period-product-actions.is-open .period-product-actions__list {
  opacity: 1;
  transform: translateY(0);
  transition:
    opacity 0.35s ease 0.06s,
    transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) 0.04s;
}

.benefits-product {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  background-color: #f9f9fa;
  padding: 20px;
  margin-bottom: 14px;
}
@media (max-width: 991px) {
  .benefits-product {
    display: none;
  }
}
.benefits-product__item {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  flex: 1 1 auto;
  position: relative;
  border-right: 1px solid rgba(79, 90, 101, 0.2);
}
.benefits-product__item:last-child {
  border: 0;
}

@keyframes tabs-fade-in {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.tabs-product {
  margin-bottom: 130px;
}
@media (max-width: 768px) {
  .tabs-product {
    margin-bottom: 80px;
  }
}
@media (min-width: 1001px) {
  .tabs-product__list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: auto auto;
  }
}
@media (min-width: 1001px) {
  .tabs-product__item {
    display: contents;
  }
}
@media (max-width: 1000px) {
  .tabs-product__item {
    border-bottom: 1px solid rgba(79, 90, 101, 0.2);
  }
}
@media (min-width: 1001px) {
  .tabs-product__item:nth-child(1) .tabs-product__trigger {
    grid-column: 1;
    grid-row: 1;
  }
}
@media (min-width: 1001px) {
  .tabs-product__item:nth-child(2) .tabs-product__trigger {
    grid-column: 2;
    grid-row: 1;
  }
}
@media (min-width: 1001px) {
  .tabs-product__item:nth-child(3) .tabs-product__trigger {
    grid-column: 3;
    grid-row: 1;
  }
}
@media (min-width: 1001px) {
  .tabs-product__item:nth-child(4) .tabs-product__trigger {
    grid-column: 4;
    grid-row: 1;
    border-right: none;
  }
}
.tabs-product__trigger {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  padding: 8px 12px;
  border: none;
  font: inherit;
  font-weight: 500;
  font-size: 24px;
  line-height: 1.35;
  color: #4f5a65;
  text-align: center;
  cursor: pointer;
  position: relative;
  transition:
    color 0.2s ease,
    background-color 0.2s ease;
}
@media (max-width: 1000px) {
  .tabs-product__trigger {
    justify-content: space-between;
    padding: 18px 0;
    text-align: left;
    background: #ffffff;
  }
}
@media (max-width: 991px) {
  .tabs-product__trigger {
    padding-bottom: 0;
  }
}
@media (max-width: 768px) {
  .tabs-product__trigger {
    font-size: 14px;
  }
}
@media (min-width: 1001px) {
  .tabs-product__item.is-active .tabs-product__trigger {
    background: #ffffff;
    color: #e24e4d;
  }
  .tabs-product__item.is-active .tabs-product__trigger::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 100%;
    height: 2px;
    background: #e24e4d;
    z-index: 1;
  }
}
@media (max-width: 1000px) {
  .tabs-product__item.is-active .tabs-product__trigger {
    color: #e24e4d;
  }
}
.tabs-product__chevron {
  display: none;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (max-width: 1000px) {
  .tabs-product__chevron {
    display: block;
  }
}
.tabs-product__item.is-active .tabs-product__chevron {
  transform: rotate(180deg);
}
@media (min-width: 1001px) {
  .tabs-product__panel {
    grid-column: 1/-1;
    grid-row: 2;
    display: none;
  }
  .tabs-product__panel.is-active {
    display: block;
    animation: tabs-fade-in 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  }
}
@media (max-width: 1000px) {
  .tabs-product__panel {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .tabs-product__panel.is-active {
    grid-template-rows: 1fr;
  }
}
.tabs-product__panel-inner {
  overflow: hidden;
  min-height: 0;
}
@media (min-width: 1001px) {
  .tabs-product__panel-inner {
    overflow: visible;
  }
}
@media (max-width: 1000px) {
  .tabs-product__panel-inner:has(.specs-tab__hint.is-open) {
    overflow: visible;
  }
}
@media (max-width: 1000px) {
  .tabs-product__panel-inner {
    padding-bottom: 20px;
  }
}
.tabs-product__content {
  min-width: 0;
  margin-top: 30px;
}
.tabs-product__content--description {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
  align-items: start;
}
@media (max-width: 1000px) {
  .tabs-product__content--description {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
.tabs-product__content--packaging {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 40px;
}
@media (max-width: 1000px) {
  .tabs-product__content--packaging {
    grid-template-columns: 1fr;
  }
}
.desc-tab__text {
  margin-bottom: 24px;
}
.desc-tab__text p {
  overflow: hidden;
  font-size: 16px;
  line-height: 1.35;
  color: #4f5a65;
  transition: max-height 0.35s ease;
}
.desc-tab__text.is-truncated:not(.is-expanded) p {
  overflow: hidden;
}
.desc-tab__read-more {
  margin-top: 3px;
  padding: 0;
  border: none;
  background: none;
  font: inherit;
  font-weight: 500;
  font-size: 16px;
  color: #4f5a65;
  cursor: pointer;
  position: relative;
}
.desc-tab__read-more[hidden] {
  display: none;
}
.desc-tab__read-more::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 1px;
  border-bottom: 2px dotted #e24e4d;
}

.specs-tab__row {
  display: grid;
  grid-template-columns: 280px 1fr;
  align-items: center;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(79, 90, 101, 0.2);
  position: relative;
}
.specs-tab__row:first-child {
  border-top: 1px solid rgba(79, 90, 101, 0.2);
}
@media (max-width: 768px) {
  .specs-tab__row {
    grid-template-columns: 120px 1fr;
    padding-right: 24px;
  }
}
.specs-tab__label {
  line-height: 1.35;
  color: #4f5a65;
  font-weight: 500;
}
.specs-tab__value {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  min-width: 0;
}
.specs-tab__value-text {
  font-size: 16px;
  line-height: 1.35;
  color: #4f5a65;
}
.specs-tab__copy,
.specs-tab__hint {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
  flex-shrink: 0;
  z-index: 5;
  font-size: 16px;
}
.specs-tab__copy {
  display: none;
}
@media (max-width: 768px) {
  .specs-tab__copy {
    display: flex;
    order: -1;
  }
}
@media (min-width: 769px) {
  .specs-tab__row:first-child .specs-tab__copy {
    display: flex;
    order: 1;
  }
}
.specs-tab__hint {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  border-radius: 50%;
}
.specs-tab__copy img {
  display: block;
  width: 20px;
  height: 20px;
  transition: opacity 0.2s ease;
}
@media (max-width: 768px) {
  .specs-tab__copy img {
    width: 16px;
    height: 16px;
  }
}
.specs-tab__copy.is-copied img {
  width: 20px;
  height: 14px;
}
@media (max-width: 768px) {
  .specs-tab__copy.is-copied img {
    width: 16px;
    height: 12px;
  }
}

.stock-tab {
  background: #f9f9fa;
  padding: 20px;
}
.stock-tab__title {
  margin-bottom: 16px;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.35;
  color: #4f5a65;
}
.stock-tab__list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.stock-tab__list--extra {
  margin: 0;
  overflow: hidden;
  min-height: 0;
  padding-top: 12px;
}
.stock-tab__extra {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.stock-tab.is-expanded .stock-tab__extra {
  grid-template-rows: 1fr;
}
.stock-tab__item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 12px;
}
.stock-tab__item:last-child {
  margin-bottom: 0;
}
.stock-tab__badge {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: -moz-fit-content;
  width: fit-content;
  min-width: 16px;
  height: 22px;
  background: #e24e4d;
  color: #ffffff;
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
}
.stock-tab__text {
  font-size: 16px;
  line-height: 1.45;
  color: #4f5a65;
  position: relative;
}
.stock-tab__text::before {
  content: "";
  position: absolute;
  left: -13px;
  width: 2px;
  height: 100%;
  background: #e24e4d;
}
.stock-tab__more {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-top: 16px;
  padding: 14px 16px;
  border: 1px solid #e24e4d;
  background: transparent;
  font: inherit;
  font-weight: 500;
  font-size: 16px;
  color: #e24e4d;
  cursor: pointer;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}
.stock-tab__more:hover {
  background: #e24e4d;
  color: #ffffff;
}
.stock-tab__more.is-hidden {
  display: none;
}

.pack-tab__banner {
  display: flex;
  min-height: 280px;
  background: #232323;
  color: #ffffff;
  grid-column: span 7;
}
@media (max-width: 768px) {
  .pack-tab__banner {
    flex-direction: column;
    min-height: 0;
  }
}
.pack-tab__info {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  justify-content: center;
  padding: 40px;
  min-width: 0;
}
@media (max-width: 768px) {
  .pack-tab__info {
    padding: 24px 20px;
  }
}
.pack-tab__title {
  margin-bottom: 24px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  font-size: 24px;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #fff;
}
.pack-tab__text {
  font-size: 16px;
  line-height: 1.35;
  font-weight: 300;
  color: #fff;
}
.pack-tab__text + .pack-tab__text {
  margin-top: 8px;
}
.pack-tab__image {
  flex: 0 0 42%;
  min-height: 280px;
}
@media (max-width: 768px) {
  .pack-tab__image {
    flex: none;
    min-height: 220px;
  }
}
.pack-tab__image img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.pack-tab__list {
  margin: 0;
  padding: 20px;
  list-style: none;
  background: #f9f9fa;
  grid-column: span 7;
}
.pack-tab__list .pack-tab__text {
  color: #4f5a65;
}
@media (min-width: 991px) {
  .pack-tab__list {
    grid-column: span 5;
  }
}
.pack-tab__item {
  display: flex;
  align-items: center;
  gap: 16px;
  min-height: 56px;
  padding-bottom: 15px;
  margin-bottom: 15px;
  border-bottom: 1px solid rgba(79, 90, 101, 0.2);
}
.pack-tab__item:last-child {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}
.pack-tab__icon {
  display: block;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
}
.pack-tab__text {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
}

.warranty-tab__top {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 30px;
  margin-bottom: 32px;
}
@media (max-width: 1000px) {
  .warranty-tab__top {
    grid-template-columns: 1fr;
    gap: 24px;
    margin-bottom: 24px;
  }
}
@media (max-width: 768px) {
  .warranty-tab__top {
    display: none;
  }
}
.warranty-tab__title {
  margin-bottom: 8px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.35;
  color: #4f5a65;
}
.warranty-tab__text {
  font-size: 16px;
  line-height: 1.45;
  color: #4f5a65;
}
.warranty-tab__text + .warranty-tab__text {
  margin-top: 12px;
}
.warranty-tab__link {
  display: inline-block;
  margin-top: 12px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
  text-underline-offset: 3px;
  color: #4f5a65;
}
.warranty-tab__link span {
  color: #232323;
  position: relative;
  transition: color 0.2s ease;
}
.warranty-tab__link span::after {
  content: "";
  width: 100%;
  height: 1px;
  border-bottom: 2px dotted #e24e4d;
  position: absolute;
  bottom: -2px;
  left: 0;
}
.warranty-tab__link span:hover {
  color: #e24e4d;
}
.warranty-tab__features {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
  background-color: #f9f9fa;
  margin-top: 16px;
  padding: 20px;
}
@media (max-width: 1000px) {
  .warranty-tab__features {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }
}
@media (max-width: 480px) {
  .warranty-tab__features {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 768px) {
  .warranty-tab__features {
    padding: 12px;
  }
}
.warranty-tab__feature .info-item__text {
  font-size: 16px;
  line-height: 1.35;
  font-weight: 500;
}

.delivery-tab__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 40px;
}
@media (max-width: 1000px) {
  .delivery-tab__grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}
.delivery-tab__col {
  background-color: #f9f9fa;
  padding: 20px;
  height: -moz-fit-content;
  height: fit-content;
}
@media (max-width: 768px) {
  .delivery-tab__col {
    padding: 12px;
  }
}
.delivery-tab__title {
  margin-bottom: 20px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(79, 90, 101, 0.2);
  font-size: 18px;
  font-weight: 500;
  line-height: 1.35;
  color: #4f5a65;
}
.delivery-tab__items {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.delivery-tab__item {
  align-items: flex-start !important;
  gap: 12px !important;
}
.delivery-tab__item .info-item__title {
  display: block;
  margin-bottom: 4px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
  color: #232323;
}
.delivery-tab__item .info-item__text {
  font-size: 16px;
  line-height: 1.35;
  color: #4f5a65;
}

.info-item {
  display: flex;
  align-items: center;
  gap: 8px;
}
.info-item__icon {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
}
.info-item__icon img {
  display: block;
  width: 40px;
  height: 40px;
}
@media (max-width: 768px) {
  .info-item__icon {
    width: 20px;
    height: 20px;
  }
  .info-item__icon img {
    width: 20px;
    height: 20px;
  }
}
.info-item__body {
  min-width: 0;
}
.info-item__text {
  font-size: 16px;
  line-height: 1.35;
  color: #4f5a65;
}

@media (max-width: 768px) {
  .desc-tab__text p,
  .desc-tab__read-more,
  .specs-tab__label,
  .specs-tab__value-text,
  .stock-tab__title,
  .stock-tab__text,
  .stock-tab__more,
  .stock-tab__badge,
  .pack-tab__text,
  .pack-tab__item,
  .warranty-tab__title,
  .warranty-tab__text,
  .warranty-tab__link,
  .warranty-tab__feature .info-item__text,
  .delivery-tab__title,
  .delivery-tab__text,
  .delivery-tab__item .info-item__title,
  .delivery-tab__item .info-item__text {
    font-size: 14px;
  }
}
.reviews-product {
  margin-bottom: 48px;
  overflow-x: hidden;
}
.reviews-product__title {
  margin-bottom: 20px;
  font-size: 36px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #4f5a65;
}
@media (max-width: 768px) {
  .reviews-product__title {
    font-size: 28px;
  }
}
.reviews-product__head {
  display: flex;
  justify-content: flex-end;
  max-width: 100%;
  margin-bottom: 16px;
  overflow-x: auto;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.reviews-product__head::-webkit-scrollbar {
  display: none;
}
@media (max-width: 1000px) {
  .reviews-product__head {
    justify-content: flex-start;
    margin-bottom: 20px;
    margin-right: -20px;
    margin-left: -20px;
    padding: 0 20px;
  }
}
.reviews-product__slider {
  margin-bottom: 20px;
}
.reviews-product__viewport {
  overflow: hidden;
  cursor: grab;
  touch-action: pan-y;
}
@media (max-width: 1000px) {
  .reviews-product__viewport {
    touch-action: none;
  }
}
.reviews-product__viewport.is-dragging {
  cursor: grabbing;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.reviews-product__track {
  display: flex;
  gap: 12px;
  transition:
    transform 0.45s cubic-bezier(0.4, 0, 0.2, 1),
    opacity 0.3s ease;
}
.reviews-product__track.is-dragging {
  transition: opacity 0.3s ease;
}
.reviews-product__track.is-filtering {
  opacity: 0;
}
.reviews-product__footer {
  display: flex;
  align-items: center;
  gap: 20px;
}
.reviews-product__progress {
  position: relative;
  flex: 1 1 auto;
  min-width: 0;
  height: 2px;
  background: rgba(79, 90, 101, 0.15);
  overflow: hidden;
}
.reviews-product__progress-thumb {
  position: absolute;
  top: 0;
  left: 0;
  max-width: 100%;
  height: 100%;
  background: #e24e4d;
  transition:
    left 0.45s cubic-bezier(0.4, 0, 0.2, 1),
    width 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
.reviews-product__nav {
  display: flex;
  flex-shrink: 0;
  gap: 8px;
}
@media (max-width: 1000px) {
  .reviews-product__nav {
    display: none;
  }
}
.reviews-product__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 1px solid rgba(79, 90, 101, 0.2);
  background: #ffffff;
  cursor: pointer;
  transition:
    border-color 0.2s ease,
    opacity 0.2s ease;
}
.reviews-product__arrow:hover:not(:disabled) {
  border-color: rgba(79, 90, 101, 0.4);
}
.reviews-product__arrow:disabled {
  opacity: 0.35;
  cursor: default;
}
.reviews-product__arrow img {
  display: block;
  width: 8px;
  height: 13px;
}

.summary-reviews {
  display: flex;
  align-items: center;
  max-width: 100%;
  margin-bottom: 24px;
  background: #f9f9fa;
  overflow-x: auto;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  cursor: grab;
}
.summary-reviews::-webkit-scrollbar {
  display: none;
}
.summary-reviews.is-dragging {
  cursor: grabbing;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
@media (max-width: 1000px) {
  .summary-reviews {
    margin-bottom: 20px;
    padding: 12px 20px;
  }
}
@media (max-width: 768px) {
  .summary-reviews {
    padding: 4px;
  }
}
.summary-reviews__main {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
}
.summary-reviews__main img {
  display: block;
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
}
.summary-reviews__score {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
  color: #4f5a65;
}
.summary-reviews__star {
  display: block;
  width: 16px;
  height: 16px;
}
.summary-reviews__count {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
  color: #4f5a65;
  white-space: nowrap;
}
.summary-reviews__platforms {
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.summary-reviews__platform {
  position: relative;
  font-size: 16px;
  line-height: 1.35;
  color: #4f5a65;
  white-space: nowrap;
  padding: 8px 12px;
}
.summary-reviews__platform strong {
  font-weight: 500;
  color: #4f5a65;
}

.filters-reviews {
  position: relative;
  display: flex;
  gap: 24px;
  min-width: -moz-max-content;
  min-width: max-content;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(79, 90, 101, 0.2);
}
@media (max-width: 1000px) {
  .filters-reviews {
    gap: 20px;
    padding-bottom: 10px;
  }
}
.filters-reviews__indicator {
  position: absolute;
  bottom: -1px;
  left: 0;
  height: 2px;
  background: #e24e4d;
  pointer-events: none;
  transition:
    left 0.35s cubic-bezier(0.4, 0, 0.2, 1),
    width 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}
.filters-reviews__btn {
  padding: 0;
  border: none;
  background: none;
  font: inherit;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
  color: #4f5a65;
  white-space: nowrap;
  cursor: pointer;
  transition: color 0.25s ease;
}
.filters-reviews__btn.is-active {
  color: #e24e4d;
}

.reviews-product__head {
  cursor: grab;
}
.reviews-product__head.is-dragging {
  cursor: grabbing;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.review-card {
  flex: 0 0 calc((100% - 36px) / 4);
  min-width: 0;
  padding: 20px;
  border: 1px solid rgba(79, 90, 101, 0.2);
  background: #ffffff;
  transition:
    opacity 0.3s ease,
    transform 0.3s ease;
}
@media (max-width: 1000px) {
  .review-card {
    flex: 0 0 100%;
    padding: 16px;
  }
}
.review-card.is-hidden {
  display: none;
}
.review-card.is-revealed {
  animation: review-card-in 0.45s cubic-bezier(0.4, 0, 0.2, 1) both;
}
.review-card__header {
  display: flex;
  gap: 12px;
  margin-bottom: 16px;
}
.review-card__avatar {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  width: 46px;
  height: 46px;
  background-color: #f9f9fa;
}
.review-card__avatar img {
  display: block;
  width: 24px;
  height: 24px;
}
.review-card__meta {
  min-width: 0;
}
.review-card__name {
  margin-bottom: 4px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
  color: #4f5a65;
}
.review-card__rating {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.review-card__stars {
  display: flex;
  align-items: center;
  gap: 2px;
}
.review-card__stars img {
  display: block;
  width: 20px;
  height: 20px;
}
.review-card__source {
  display: flex;
  align-items: center;
  font-size: 14px;
  font-weight: 500;
  color: #4f5a65;
  position: relative;
}
.review-card__source::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 1px;
  border-bottom: 2px dotted #e24e4d;
}
.review-card__text {
  margin-bottom: 12px;
  font-size: 14px;
  line-height: 1.45;
  color: #4f5a65;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
}
.review-card.is-expanded .review-card__text {
  display: block;
  -webkit-line-clamp: unset;
}
.review-card__more {
  padding: 0;
  border: none;
  background: none;
  font: inherit;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
  color: #4f5a65;
  cursor: pointer;
  position: relative;
}
.review-card__more::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 1px;
  border-bottom: 2px dotted #e24e4d;
}
.review-card__more[hidden] {
  display: none;
}

@keyframes review-card-in {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.product__offer {
  margin-bottom: 80px;
}
.product__offer .bundle-product {
  margin-bottom: 0;
}

@media (min-width: 991px) {
  .product__offer {
    margin-bottom: 130px;
  }
}

.bundle-product {
  overflow: visible;
  margin-bottom: 48px;
}
.bundle-product__title {
  margin-bottom: 20px;
  font-size: 36px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #4f5a65;
}
.bundle-product__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 444px);
  align-items: start;
  -moz-column-gap: 12px;
  column-gap: 12px;
  overflow: visible;
}
.bundle-product__main {
  grid-column: 1;
  grid-row: 1;
  min-width: 0;
  overflow: visible;
}
.bundle-product__slider {
  position: relative;
  z-index: 2;
  overflow: visible;
}
.bundle-product__viewport {
  width: 100%;
  overflow-x: clip;
  overflow-y: visible;
  cursor: grab;
  touch-action: pan-y;
}
.bundle-product__viewport.is-dragging {
  cursor: grabbing;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.bundle-product__track {
  display: flex;
  gap: 48px;
  transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
.bundle-product__track.is-dragging {
  transition: none;
}
.bundle-product__slide {
  position: relative;
  flex: 0 0 calc((100% - 96px) / 3);
  min-width: 0;
}
.bundle-product__slide:not(:first-child)::before {
  content: "+";
  position: absolute;
  top: 50%;
  left: -24px;
  transform: translate(-50%, -50%);
  z-index: 2;
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  background: #f9f9fa;
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  color: #e24e4d;
}
.bundle-product__sign {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  background: #f9f9fa;
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  color: #e24e4d;
}
.bundle-product__aside {
  grid-column: 2;
  grid-row: 1;
  align-self: center;
  display: flex;
  align-items: center;
  gap: 12px;
}
.bundle-product__footer {
  grid-column: 1;
  grid-row: 2;
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 20px;
  width: 100%;
  margin-top: 20px;
}
.bundle-product__progress {
  position: relative;
  flex: 1 1 auto;
  min-width: 0;
  height: 2px;
  background: rgba(79, 90, 101, 0.15);
}
.bundle-product__progress-thumb {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  background: #e24e4d;
  transition:
    left 0.45s cubic-bezier(0.4, 0, 0.2, 1),
    width 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
.bundle-product__nav {
  display: flex;
  flex-shrink: 0;
  gap: 8px;
}
.bundle-product__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  padding: 0;
  border: none;
  background: #f9f9fa;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
.bundle-product__arrow:disabled {
  opacity: 0.35;
  cursor: default;
}
.bundle-product__arrow img {
  display: block;
  width: 8px;
  height: 13px;
}
.bundle-product__summary {
  flex: 1 1 auto;
  min-width: 0;
}
.bundle-product__summary .offer-summary {
  position: relative;
  overflow: hidden;
  width: 100%;
  min-width: 0;
  min-height: 167px;
  background-color: #f9f9fa;
}

@media (max-width: 1000px) {
  .bundle-product__title {
    margin-bottom: 20px;
    font-size: 24px;
    line-height: 1.2;
    text-align: center;
  }

  .bundle-product__layout {
    display: block;
  }

  .bundle-product__main,
  .bundle-product__slider,
  .bundle-product__viewport {
    width: 100%;
    overflow: visible;
  }

  .bundle-product__viewport {
    cursor: default;
    touch-action: auto;
  }

  .bundle-product__track {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 20px;
    transform: none !important;
    transition: none;
  }

  .bundle-product__slide {
    min-width: 0;
  }

  .bundle-product__slide::before {
    display: none;
  }

  .bundle-product__slide:nth-child(even)::before {
    content: none;
  }

  .bundle-product__sign,
  .bundle-product__footer {
    display: none;
  }

  /* No-JS fallback: show only the first four bundle cards on mobile. */
  .bundle-product__slide:nth-child(n + 5),
  .bundle-product .offer-card.is-mobile-hidden {
    display: none !important;
  }

  .bundle-product__aside {
    display: block;
  }

  .bundle-product__summary .offer-summary {
    width: 100%;
    min-width: 0;
    min-height: 0;
    height: auto;
    padding: 16px;
    gap: 16px;
    border: 0;
    background: #f9f9fa;
    box-shadow: none;
    overflow: visible;
  }

  .bundle-product__summary .offer-summary__top {
    gap: 12px;
  }

  .bundle-product__summary .offer-summary__btn {
    margin-top: 0;
  }

  /* Keep the original bundle checkbox functional in the mobile card footer. */
  .offer-card--showcase .offer-card__price-row {
    position: absolute;
    right: 12px;
    bottom: 12px;
    z-index: 4;
    display: block;
    padding: 0;
    background: transparent;
  }

  .offer-card--showcase .offer-card__price-row > .offer-card__price {
    display: none;
  }

  .offer-card--showcase .offer-card__check {
    position: static;
  }

  .offer-card--showcase .offer-card__footer--mobile {
    padding-right: 48px;
  }
}

@media (max-width: 768px) {
  .bundle-product__summary .offer-summary {
    background: transparent;
  }
}

.offer-card {
  position: relative;
  display: flex;
  flex-direction: column;
  background: #f9f9fa;
}
@media (max-width: 1000px) {
  .offer-card {
    width: 100%;
    min-width: 0;
    height: auto;
    background: #ffffff;
  }
}
.offer-card__badge {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 3;
  padding: 2px 6px;
  background: #4caf50;
  font-size: 10px;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #ffffff;
}
.offer-card__favorite {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 2;
  display: flex;
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
}
.offer-card__favorite img {
  display: block;
  width: 18px;
  height: 16px;
}
.offer-card__media {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
  position: relative;
  padding: 20px 16px 0;
}
@media (max-width: 1000px) {
  .offer-card__media {
    position: relative;
    flex: none;
    aspect-ratio: 1/1;
    width: 100%;
    padding: 16px 10px 20px;
    background: #f9f9fa;
  }
}
.offer-card__gallery {
  position: relative;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
}
@media (max-width: 1000px) {
  .offer-card__gallery {
    flex: none;
    height: 100%;
  }
}
.offer-card__viewport {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  cursor: grab;
  touch-action: pan-y;
}
@media (max-width: 1000px) {
  .offer-card__viewport {
    height: 100%;
    touch-action: pan-y;
  }
}
.offer-card__viewport.is-dragging {
  cursor: grabbing;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.offer-card__track {
  display: flex;
  height: 100%;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}
.offer-card__track.is-dragging {
  transition: none;
}
.offer-card__slide {
  display: flex;
  flex: 0 0 100%;
  align-items: center;
  justify-content: center;
  min-width: 0;
}
.offer-card__image {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.offer-card__dots {
  position: absolute;
  right: 0;
  bottom: -8px;
  left: 0;
  z-index: 2;
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 0;
  pointer-events: auto;
}
.offer-card__dot {
  width: 6px;
  height: 6px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: rgba(79, 90, 101, 0.2);
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.offer-card__dot.is-active {
  background: #4f5a65;
}
.offer-card__price {
  display: block;
  flex-shrink: 0;
  padding: 12px 16px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
  color: #4f5a65;
}
@media (max-width: 1000px) {
  .offer-card__price {
    padding: 0;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.35;
  }
}
@media (max-width: 1000px) {
  .offer-card__footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 8px;
    padding: 10px 12px 12px;
    background: #ffffff;
  }
}
.offer-card__info {
  min-width: 0;
}
@media (max-width: 1000px) {
  .offer-card__title {
    margin: 0 0 4px;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.35;
    color: #4f5a65;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }
}
.offer-card--showcase {
  overflow: visible;
  background: #fafafa;
  border: none;
  transition: all 0.2s ease;
  cursor: pointer;
}
@media (min-width: 1001px) {
  .offer-card--showcase {
    width: 100%;
    min-width: 0;
    height: auto;
    aspect-ratio: 1/1;
  }
}
.offer-card--showcase .offer-card__media {
  position: static;
}
.offer-card--showcase .offer-card__gallery {
  position: static;
}
.offer-card--showcase .offer-card__dots {
  position: absolute;
  bottom: 21px;
  z-index: 1000;
}
.offer-card--showcase .offer-card__price-row {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-shrink: 0;
  padding: 12px 16px;
  background: #f9f9fa;
}
.offer-card--showcase .offer-card__price-row .offer-card__price {
  padding: 0;
}
.offer-card--showcase .offer-card__check {
  position: absolute;
  right: 0;
  bottom: 0;
}
.offer-card--showcase .offer-card__footer--mobile {
  display: none;
}
.offer-card--showcase .offer-card__panel {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 3;
  width: 100%;
  padding: 12px;
  background: #ffffff;
  border: 1px solid rgba(79, 90, 101, 0.2);
  border-top: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}
@media (hover: hover) {
  .offer-card--showcase:hover,
  .offer-card--showcase:focus-within {
    z-index: 5;
    border: none;
  }
  .offer-card--showcase:hover .offer-card__panel,
  .offer-card--showcase:focus-within .offer-card__panel {
    opacity: 1;
    pointer-events: auto;
  }
}
@media (max-width: 1000px) {
  .offer-card--showcase {
    aspect-ratio: auto;
    background: #ffffff;
  }
  .offer-card--showcase .offer-card__media {
    position: relative;
  }
  .offer-card--showcase .offer-card__dots {
    bottom: 8px;
  }
  .offer-card--showcase .offer-card__price-row {
    display: none;
  }
  .offer-card--showcase .offer-card__panel {
    display: none;
  }
  .offer-card--showcase .offer-card__footer--mobile {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 8px;
    padding: 10px 12px 12px;
    background: #ffffff;
  }
  .offer-card--showcase .offer-card__footer--mobile .offer-card__title {
    margin: 0 0 4px;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.35;
    color: #4f5a65;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }
  .offer-card--showcase .offer-card__footer--mobile .offer-card__price {
    padding: 0;
    font-size: 18px;
    font-weight: 500;
  }
}
.offer-card--kit {
  width: 100%;
  min-width: 0;
  height: auto;
}
@media (min-width: 1001px) {
  .offer-card--kit {
    width: auto;
    min-width: 400px;
    height: 400px;
  }
}
@media (min-width: 1001px) {
  .offer-card--kit .offer-card__footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 8px;
    padding: 0 12px 12px;
  }
}
.offer-card__panel-title {
  display: -webkit-box;
  margin-bottom: 16px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.35;
  color: #4f5a65;
  text-decoration: none;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  transition: color 0.2s ease;
}
.offer-card__panel-title:hover {
  color: #e24e4d;
}
.offer-card__panel-actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
@media (min-width: 1600px) {
  .offer-card__panel-actions {
    flex-direction: row;
  }
}
.offer-card__panel-cart {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
  padding: 12px 16px;
  border: none;
  background: #e24e4d;
  font: inherit;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
  color: #ffffff;
  cursor: pointer;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}
.offer-card__panel-cart-icon {
  display: block;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  color: currentColor;
}
.offer-card__panel-cart:hover {
  background: #ffffff;
  color: #e24e4d;
  box-shadow: inset 0 0 0 1px #e24e4d;
}
@media (max-width: 1600px) {
  .offer-card__panel-cart {
    width: 100%;
  }
}
.offer-card__panel-quick {
  flex: 1 1 auto;
  min-width: 0;
  padding: 0;
  border: none;
  background: none;
  font: inherit;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
  color: #4f5a65;
  text-align: center;
  text-decoration: underline;
  text-decoration-style: dotted;
  text-decoration-color: #e24e4d;
  text-underline-offset: 4px;
  cursor: pointer;
  transition: color 0.2s ease;
}
.offer-card__panel-quick:hover {
  color: #e24e4d;
}
@media (max-width: 1600px) {
  .offer-card__panel-quick {
    width: 100%;
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 0;
    padding: 12px 16px;
    border: none;
    background: white;
    font: inherit;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.35;
    color: #e24e4d;
    cursor: pointer;
    transition:
      background-color 0.2s ease,
      color 0.2s ease;
    border: 1px solid #e24e4d;
    text-decoration: none;
  }
  .offer-card__panel-quick:hover {
    background: #ffffff;
    color: #e24e4d;
    box-shadow: inset 0 0 0 1px #e24e4d;
  }
}
.offer-card__check {
  position: relative;
  flex-shrink: 0;
  cursor: pointer;
}
.offer-card__check input {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
  pointer-events: none;
}
.offer-card__check-box {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  background: rgba(79, 90, 101, 0.15);
  transition: background-color 0.2s ease;
}
.offer-card__check-box::after {
  content: "";
  width: 18px;
  height: 16px;
  opacity: 0;
  background: url("/local/templates/daf_2020/components/bitrix/catalog/.default/bitrix/catalog.element/new_072026/../img/check.svg") center/contain no-repeat;
  filter: brightness(0) invert(1);
  transition: opacity 0.2s ease;
}
.offer-card__check input:checked + .offer-card__check-box {
  background: #e24e4d;
}
.offer-card__check input:checked + .offer-card__check-box::after {
  opacity: 1;
}

.offer-summary {
  display: flex;
  flex: 0 0 444px;
  flex-direction: column;
  justify-content: space-between;
  gap: 20px;
  width: 444px;
  min-width: 444px;
  min-height: 167px;
  padding: 20px;
  background: #f9f9fa;
}
@media (max-width: 768px) {
  .offer-summary {
    padding: 0;
    background: transparent;
    gap: 12px !important;
    justify-content: flex-start;
  }
}
.offer-summary__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
@media (max-width: 768px) {
  .offer-summary__top {
    align-items: center;
  }
}
.offer-summary__prices {
  min-width: 0;
}
.offer-summary__badge {
  display: flex;
  flex-shrink: 0;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-width: 108px;
  padding: 8px 12px;
  background: #ffffff;
  text-align: center;
}
@media (max-width: 768px) {
  .offer-summary__badge {
    border: 0;
    background: #f9f9fa;
    align-items: flex-end;
  }
}
.offer-summary__badge-label {
  display: block;
  margin-bottom: 4px;
  font-size: 12px;
  line-height: 1.35;
  color: rgba(79, 90, 101, 0.6);
}
@media (max-width: 768px) {
  .offer-summary__badge-label {
    margin-bottom: 0;
  }
}
.offer-summary__badge-value {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
  color: #e24e4d;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .offer-summary__badge-value {
    font-size: 12px;
  }
}
.offer-summary__price {
  display: block;
  font-size: 28px;
  font-weight: 300;
  line-height: 1.2;
  color: #232323;
  white-space: nowrap;
  letter-spacing: 0.01em;
}
@media (max-width: 768px) {
  .offer-summary__price {
    font-size: 24px;
  }
}
.offer-summary__old-price {
  display: block;
  margin-top: 4px;
  font-size: 14px;
  line-height: 1.35;
  color: rgba(79, 90, 101, 0.5);
  text-decoration: line-through;
  white-space: nowrap;
}
.offer-summary__btn {
  width: 100%;
  padding: 12px 16px;
  border: 1px solid #e24e4d;
  background: transparent;
  font: inherit;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
  color: #e24e4d;
  cursor: pointer;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}
.offer-summary__btn:hover {
  background: #e24e4d;
  color: #ffffff;
}
.offer-summary__btn:disabled {
  opacity: 0.45;
  cursor: default;
  pointer-events: none;
}

.quote-product {
  margin-bottom: 130px;
  padding: 40px 0;
  background: #f9f9fa;
}
@media (max-width: 1000px) {
  .offer-card__check-box {
    width: 16px;
    height: 16px;
  }

  .offer-card__check-box::after {
    width: 12px;
    height: 16px;
  }

  .quote-product {
    margin-right: 0;
    margin-left: 0;
    padding: 32px 0;
    background: #ffffff;
    margin-bottom: 80px;
  }
}
.quote-product__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  max-width: 1200px;
  margin: 0 auto;
}
@media (max-width: 1000px) {
  .quote-product__inner {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr);
    grid-template-areas: "photo quote" "photo info";
    gap: 12px 16px;
    align-items: start;
  }
}
.quote-product__quote {
  position: relative;
  flex: 1 1 auto;
  max-width: 720px;
  margin: 0;
}
@media (max-width: 1000px) {
  .quote-product__quote {
    grid-area: quote;
    max-width: none;
    padding: 0;
  }
}
.quote-product__mark {
  position: absolute;
  display: block;
  width: 30px;
  height: 24px;
}
@media (max-width: 1000px) {
  .quote-product__mark {
    display: none;
  }
}
.quote-product__mark--open {
  top: 0;
  left: 0;
}
.quote-product__mark--close {
  right: 0;
  bottom: 0;
  transform: rotate(180deg);
}
.quote-product__text {
  margin: 0;
}
@media (min-width: 768px) {
  .quote-product__text {
    text-align: right;
    font-style: italic;
    padding-right: 40px;
  }
}
.quote-product__text-desktop {
  display: block;
  font-size: 28px;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #4f5a65;
}
@media (max-width: 1000px) {
  .quote-product__text-desktop {
    display: none;
  }
}
.quote-product__text-mobile {
  display: none;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
  color: #4f5a65;
}
@media (max-width: 1000px) {
  .quote-product__text-mobile {
    display: block;
  }
}
.quote-product__author {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  gap: 16px;
}
@media (max-width: 1000px) {
  .quote-product__author {
    display: contents;
  }
}
.quote-product__photo {
  flex-shrink: 0;
  width: 80px;
  height: 80px;
  overflow: hidden;
  border: 1px solid rgba(79, 90, 101, 0.15);
  border-radius: 4px;
}
@media (max-width: 1000px) {
  .quote-product__photo {
    grid-area: photo;
    width: 120px;
    height: 120px;
    border: none;
    border-radius: 0;
    clip-path: polygon(15% 0, 100% 0, 100% 85%, 85% 100%, 0 100%, 0 15%);
  }
}
.quote-product__photo img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.quote-product__info {
  min-width: 0;
}
@media (max-width: 1000px) {
  .quote-product__info {
    grid-area: info;
  }
}
.quote-product__name {
  display: block;
  margin-bottom: 4px;
  font-size: 18px;
  line-height: 1.35;
  color: #4f5a65;
}
@media (max-width: 1000px) {
  .quote-product__name {
    font-size: 14px;
  }
}
.quote-product__role {
  display: block;
  font-size: 16px;
  line-height: 1.35;
  color: #4f5a65;
}
.quote-product__brand {
  color: #e24e4d;
}

.cta-product {
  position: relative;
  max-width: 1514px;
  margin: 0 auto 130px;
}
@media (max-width: 768px) {
  .cta-product {
    margin-bottom: 80px;
  }
}
@media (max-width: 1000px) {
  .cta-product {
    display: flex;
    flex-direction: column;
    margin-right: 0;
    margin-left: 0;
  }
}
@media (max-width: 768px) {
  .cta-product {
    margin: 0 -20px 80px;
  }
}
.cta-product__media img {
  display: block;
  width: 100%;
  height: 520px;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
@media (max-width: 1000px) {
  .cta-product__media img {
    height: 600px;
  }
}
.cta-product__box {
  position: absolute;
  bottom: 20px;
  left: 20px;
  right: 20px;
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 28px 40px;
  background: #ffffff;
}
@media (max-width: 1000px) {
  .cta-product__box {
    /* position: relative;
    right: auto;
    bottom: auto;
    left: auto;
    display: block;
    margin: -56px 16px 0; */
    padding: 32px 12px 12px;
  }
}
@media (max-width: 768px) {
  .cta-product__box {
    left: 20px;
    right: 20px;
  }
}
.cta-product__emblem {
  display: block;
  flex-shrink: 0;
  width: 147px;
  height: 68px;
}
@media (max-width: 1000px) {
  .cta-product__emblem {
    position: absolute;
    top: 0;
    left: 50%;
    width: 130px;
    height: 60px;
    transform: translate(-50%, -50%);
  }
}
.cta-product__box-inner {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  min-width: 0;
}
@media (max-width: 1000px) {
  .cta-product__box-inner {
    flex-direction: column;
    align-items: stretch;
    gap: 24px;
  }
}
.cta-product__title {
  flex: 1 1 auto;
  max-width: 710px;
  margin: 0;
  font-size: 32px;
  line-height: 1.35;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #4f5a65;
}
@media (max-width: 1000px) {
  .cta-product__title {
    max-width: none;
    font-size: 28px;
    text-align: center;
  }
}
.cta-product__actions {
  display: flex;
  flex: 0 0 320px;
  flex-direction: column;
  gap: 8px;
}
@media (max-width: 1000px) {
  .cta-product__actions {
    flex: none;
    width: 100%;
  }
}
.cta-product__btn-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.cta-product__btn {
  width: 100%;
  padding: 15px 16px;
  border: 1px solid #e24e4d;
  font: inherit;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
  cursor: pointer;
  transition: all 0.2s ease;
}
.cta-product__btn--primary {
  background: #e24e4d;
  color: #ffffff;
}
.cta-product__btn--primary:hover {
  background: #ffffff;
  color: #e24e4d;
}
.cta-product__btn--secondary {
  background: transparent;
  color: #e24e4d;
}
.cta-product__btn--secondary:hover {
  background: #e24e4d;
  color: #ffffff;
}

.auth-product {
  max-width: 1514px;
  margin: 0 auto 130px;
}
@media (max-width: 768px) {
  .auth-product {
    margin-bottom: 80px;
  }
}
.auth-product__title {
  display: flex;
  flex-wrap: wrap;
  gap: 0 0.3em;
  margin: 0 0 8px;
  font-size: 36px;
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #4f5a65;
}
@media (max-width: 1000px) {
  .auth-product__title {
    flex-direction: column;
    gap: 0;
    margin-bottom: 4px;
    font-size: 28px;
  }
}
@media (max-width: 1000px) {
  .auth-product__title-line {
    display: block;
  }
}
.auth-product__item {
  border-bottom: 1px solid rgba(79, 90, 101, 0.2);
}
.auth-product__trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  width: 100%;
  padding: 24px 0;
  border: none;
  background: transparent;
  font: inherit;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
  color: #4f5a65;
  text-align: left;
  cursor: pointer;
  transition: color 0.2s ease;
}
@media (max-width: 1000px) {
  .auth-product__trigger {
    padding: 16px 0;
    font-size: 16px;
  }
}
.auth-product__item.is-active .auth-product__trigger {
  color: #e24e4d;
}
.auth-product__trigger-text {
  min-width: 0;
}
.auth-product__chevron {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}
.auth-product__item.is-active .auth-product__chevron {
  transform: rotate(180deg);
}
.auth-product__panel {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.auth-product__item.is-active .auth-product__panel {
  grid-template-rows: 1fr;
}
@media (max-width: 1000px) {
  .auth-product__item.is-active
    .auth-product__panel:has(.auth-panel__step-hint.is-open) {
    overflow: visible;
  }
}
.auth-product__panel-inner {
  overflow: hidden;
  min-height: 0;
}
.auth-product__item.is-active .auth-product__panel-inner {
  padding-bottom: 32px;
}
@media (max-width: 1000px) {
  .auth-product__item.is-active .auth-product__panel-inner {
    padding-bottom: 20px;
  }
  .auth-product__item.is-active
    .auth-product__panel-inner:has(.auth-panel__step-hint.is-open) {
    overflow: visible;
  }
}

.auth-panel__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  grid-template-rows: auto auto;
  -moz-column-gap: 40px;
  column-gap: 40px;
  row-gap: 0;
  align-items: start;
}
@media (max-width: 1000px) {
  .auth-panel__layout {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    row-gap: 24px;
  }
}
.auth-panel__intro {
  grid-column: 1;
  grid-row: 1;
}
.auth-panel__steps {
  grid-column: 1;
  grid-row: 2;
}
.auth-panel__media {
  grid-column: 2;
  grid-row: 1/-1;
}
@media (max-width: 1000px) {
  .auth-panel__media {
    grid-column: 1;
    grid-row: 2;
  }
}
@media (max-width: 1000px) {
  .auth-panel__intro {
    grid-row: 1;
  }
  .auth-panel__steps {
    grid-row: 3;
  }
}
.auth-panel__heading {
  margin: 0 0 16px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
  color: #e24e4d;
}
.auth-panel__text {
  margin: 0;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: rgba(79, 90, 101, 0.8);
}
.auth-panel__subtitle {
  margin: 8px 0 0;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  color: #4f5a65;
}
.auth-panel__subtitle:first-child {
  margin-top: 0;
}
.auth-panel__steps {
  display: block;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 1000px) {
  .auth-panel__steps:has(.auth-panel__step-hint.is-open) {
    overflow: visible;
  }
}
.auth-panel__step {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 20px 0;
  border-bottom: 1px solid rgba(79, 90, 101, 0.2);
  max-width: 80%;
}
@media (max-width: 1000px) {
  .auth-panel__step {
    max-width: none;
    padding-right: 24px;
  }
  .auth-panel__step:has(.auth-panel__step-hint.is-open) {
    overflow: visible;
    z-index: 2;
  }
}
.auth-panel__step:last-child {
  padding-bottom: 0;
  border-bottom: none;
}
.auth-panel__step-num {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  font-weight: 500;
  color: #4f5a65;
}
.auth-panel__step-copy,
.auth-panel__step-hint {
  display: none;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
  flex-shrink: 0;
}
.auth-panel__step-copy img,
.auth-panel__step-hint img {
  display: block;
  width: 16px;
  height: 16px;
}
@media (max-width: 1000px) {
  .auth-panel__step-copy,
  .auth-panel__step-hint {
    display: flex;
  }
}
.auth-panel__step-hint {
  position: absolute;
  top: 20px;
  right: 0;
  width: 16px;
  height: 16px;
  border-radius: 50%;
}
.auth-panel__step-text {
  flex: 1;
  min-width: 0;
  margin: 0;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.35;
  color: rgba(79, 90, 101, 0.8);
}
.auth-panel__media {
  display: flex;
  justify-content: flex-end;
}
@media (max-width: 1000px) {
  .auth-panel__media {
    justify-content: center;
    width: 100%;
  }
}
.auth-panel__media img {
  display: block;
  width: 100%;
  max-width: 240px;
  height: auto;
  -o-object-fit: contain;
  object-fit: contain;
}
@media (max-width: 1000px) {
  .auth-panel__media img {
    max-width: 200px;
  }
}

.interesting-product {
  margin-bottom: 130px;
  overflow: visible;
}
@media (max-width: 768px) {
  .interesting-product {
    margin-bottom: 80px;
  }
}
.interesting-product__title {
  margin: 0 0 20px;
  font-size: 36px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #4f5a65;
}
@media (max-width: 1000px) {
  .interesting-product__title {
    font-size: 28px;
  }
}
.interesting-product__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  align-items: start;
  overflow: visible;
}
.interesting-product__grid .offer-card--showcase {
  width: 100%;
  min-width: 0;
}
@media (max-width: 1000px) {
  .interesting-product__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
}

.faq-product {
  margin-bottom: 130px;
}
@media (max-width: 768px) {
  .faq-product {
    margin-bottom: 80px;
  }
}
.faq-product__layout {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 48px;
  align-items: start;
}
@media (max-width: 1000px) {
  .faq-product__layout {
    display: flex;
    flex-direction: column;
    gap: 32px;
  }
}
@media (max-width: 1600px) {
  .faq-product__layout > div:nth-child(2) {
    display: none;
  }
}
.faq-product__faq {
  width: 100%;
}
@media (min-width: 1000px) {
  .faq-product__faq {
    grid-column: span 7;
  }
}
.faq-product__consult {
  grid-column: span 4;
}
@media (max-width: 1000px) {
  .faq-product__consult {
    order: -1;
    padding: 12px;
    background: #f9f9fa;
  }
}
@media (min-width: 1000px) {
  .faq-product__consult {
    grid-column: span 4;
  }
}
@media (max-width: 1600px) {
  .faq-product__consult {
    grid-column: span 5;
  }
}
.faq-product__title {
  margin: 0 0 8px;
  font-size: 36px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #4f5a65;
}
@media (max-width: 1000px) {
  .faq-product__title {
    font-size: 28px;
  }
}
.faq-product__list {
  border-top: 1px solid rgba(79, 90, 101, 0.2);
}
.faq-product__item {
  border-bottom: 1px solid rgba(79, 90, 101, 0.2);
}
.faq-product__trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  width: 100%;
  padding: 24px 0;
  border: none;
  background: transparent;
  font: inherit;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.35;
  color: #4f5a65;
  text-align: left;
  cursor: pointer;
}
@media (max-width: 1000px) {
  .faq-product__trigger {
    padding: 20px 0;
    font-size: 14px;
  }
}
.faq-product__question {
  min-width: 0;
}
.faq-product__chevron {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}
.faq-product__item.is-active .faq-product__chevron {
  transform: rotate(180deg);
}
.faq-product__panel {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.faq-product__panel-inner {
  padding-bottom: 24px;
}
@media (max-width: 1000px) {
  .faq-product__panel-inner {
    padding-bottom: 20px;
  }
}
.faq-product__answer {
  margin: 0;
  max-width: 640px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  color: rgba(79, 90, 101, 0.8);
}

.faq-consult {
  padding: 12px;
  /* border: 1px solid rgba($grey, 0.2); */
  background: #f9f9fa;
}
@media (max-width: 1000px) {
  .faq-consult {
    padding: 0;
    border: none;
    background: transparent;
  }
}
.faq-consult__title {
  margin: 0 0 12px;
  font-size: 36px;
  line-height: 1.05;
  letter-spacing: 0.01em;
  text-align: center;
  text-transform: uppercase;
  color: #4f5a65;
}
@media (max-width: 768px) {
  .faq-consult__title {
    font-size: 28px;
  }
}
.faq-consult__text {
  margin: 0 0 16px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.35;
  text-align: center;
  color: rgba(79, 90, 101, 0.7);
}
.faq-consult__contact {
  margin-bottom: 16px;
  padding: 10px;
  text-align: center;
  background: #fff;
}
.faq-consult__phone {
  margin: 0 0 4px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.35;
  color: rgba(79, 90, 101, 0.6);
}
.faq-consult__phone a {
  display: inline-block;
  margin-top: 4px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.35;
  color: #4f5a65;
  text-decoration: underline;
  text-decoration-style: dotted;
  text-underline-offset: 4px;
  transition: color 0.2s ease;
}
.faq-consult__phone a:hover {
  color: #e24e4d;
}
.faq-consult__phone-note {
  margin: 0;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.35;
  color: rgba(79, 90, 101, 0.6);
}
.faq-consult__fields {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 16px;
  overflow: visible;
}
.faq-consult__input {
  width: 100%;
  padding: 14px 16px;
  border: 1px solid rgba(79, 90, 101, 0.2);
  background: #ffffff;
  font: inherit;
  font-size: 14px;
  line-height: 1.35;
  color: #4f5a65;
  transition: border-color 0.2s ease;
}
.faq-consult__input::-moz-placeholder {
  color: rgba(79, 90, 101, 0.45);
}
.faq-consult__input::placeholder {
  color: rgba(79, 90, 101, 0.45);
}
.faq-consult__input:focus {
  outline: none;
  border-color: rgba(79, 90, 101, 0.45);
}
.faq-consult__input.is-error {
  border-color: #e24e4d;
}
.faq-consult__agree {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-bottom: 16px;
  cursor: pointer;
}
.faq-consult__agree-input {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
  pointer-events: none;
}
.faq-consult__agree-input:checked + .faq-consult__checkbox {
  background: #e24e4d;
  border-color: #e24e4d;
}
.faq-consult__agree-input:checked + .faq-consult__checkbox::after {
  opacity: 1;
}
.faq-consult__checkbox {
  position: relative;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  margin-top: 2px;
  background: rgba(79, 90, 101, 0.2);
  transition:
    background-color 0.2s ease,
    border-color 0.2s ease;
}
.faq-consult__checkbox::after {
  content: "";
  position: absolute;
  top: 5px;
  left: 8px;
  width: 4px;
  height: 8px;
  border-right: 1.5px solid #ffffff;
  border-bottom: 1.5px solid #ffffff;
  opacity: 0;
  transform: rotate(45deg);
  transition: opacity 0.2s ease;
}
.faq-consult__agree-text {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.45;
  color: rgba(79, 90, 101, 0.7);
}
.faq-consult__agree-text a {
  display: inline;
  color: inherit;
  text-decoration: underline;
  text-decoration-style: dotted;
  text-underline-offset: 3px;
  transition: color 0.2s ease;
  color: #4f5a65;
  font-weight: 500;
}
.faq-consult__agree-text a:hover {
  color: #e24e4d;
}
.faq-consult__submit {
  width: 100%;
  padding: 15px 16px;
  border: 1px solid #e24e4d;
  background: #e24e4d;
  font: inherit;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
  color: #ffffff;
  cursor: pointer;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}
.faq-consult__submit:hover {
  background: #ffffff;
  color: #e24e4d;
}

.show-more-product {
  margin-bottom: 48px;
}
.show-more-product__title {
  margin: 0 0 20px;
  font-size: 36px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #4f5a65;
}
@media (max-width: 1000px) {
  .show-more-product__title {
    margin-bottom: 16px;
    font-size: 28px;
  }
}
@media (min-width: 1001px) {
  .show-more-product__content {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px 20px;
  }
}
.show-more-product__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px 20px;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (min-width: 1001px) {
  .show-more-product__list {
    display: contents;
  }
}
@media (max-width: 1000px) {
  .show-more-product__list {
    grid-template-columns: 1fr;
    gap: 8px;
  }
}
@media (max-width: 1000px) {
  .show-more-product__list--extra {
    padding-top: 8px;
  }
}
@media (min-width: 1001px) {
  .show-more-product__extra {
    display: contents;
  }
}
@media (max-width: 1000px) {
  .show-more-product__extra {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  }
}
@media (max-width: 1000px) {
  .show-more-product.is-expanded .show-more-product__extra {
    grid-template-rows: 1fr;
  }
}
.show-more-product__extra-inner {
  overflow: hidden;
  min-height: 0;
}
@media (min-width: 1001px) {
  .show-more-product__extra-inner {
    display: contents;
  }
}
.show-more-product__item {
  min-width: 0;
}
.show-more-product__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 52px;
  padding: 16px 20px;
  background: #f9f9fa;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.35;
  color: #4f5a65;
  text-decoration: none;
  transition: background-color 0.2s ease;
}
@media (max-width: 1000px) {
  .show-more-product__link {
    min-height: 48px;
    padding: 14px 16px;
    font-size: 13px;
  }
}
.show-more-product__link:hover {
  background: #f0f0f1;
  color: #e24e4d;
}
.show-more-product__text {
  min-width: 0;
}
.show-more-product__icon {
  display: block;
  flex-shrink: 0;
  width: 8px;
  height: 13px;
}
.show-more-product__toggle {
  display: none;
  width: 100%;
  margin-top: 12px;
  padding: 15px 16px;
  border: 1px solid #e24e4d;
  background: transparent;
  font: inherit;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
  color: #e24e4d;
  cursor: pointer;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}
@media (max-width: 1000px) {
  .show-more-product__toggle {
    display: block;
  }
}
.show-more-product__toggle:hover {
  background: #e24e4d;
  color: #ffffff;
}

.city-modal {
  position: fixed;
  inset: 0;
  z-index: 10001;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
  overflow-y: auto;
}
.city-modal.is-open {
  display: flex;
}
.city-modal[aria-hidden="true"] {
  display: none;
  pointer-events: none;
}
.city-modal.is-open[aria-hidden="false"] {
  display: flex;
  pointer-events: auto;
}
.city-modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(35, 35, 35, 0.2);
}
.city-modal__dialog {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 600px;
  max-height: calc(100vh - 48px);
  margin: auto;
  padding: 40px;
  background: #ffffff;
  overflow-y: auto;
  position: relative;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.city-modal__dialog::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}
@media (max-width: 768px) {
  .city-modal__dialog {
    max-height: calc(100vh - 32px);
    padding: 20px 16px;
  }
}
.city-modal__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}
.city-modal__title {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.35;
  color: #232323;
}
@media (max-width: 768px) {
  .city-modal__title {
    font-size: 20px;
  }
}
.city-modal__close {
  display: flex;
  flex-shrink: 0;
  padding: 0;
  border: none;
  background: transparent;
  cursor: pointer;
}
.city-modal__search {
  position: relative;
  margin-bottom: 12px;
}
.city-modal__input {
  width: 100%;
  padding: 14px 44px 14px 16px;
  border: 1px solid rgba(79, 90, 101, 0.2);
  background: #ffffff;
  font: inherit;
  font-size: 16px;
  line-height: 1.35;
  color: #4f5a65;
}
.city-modal__input::-moz-placeholder {
  color: rgba(79, 90, 101, 0.6);
}
.city-modal__input::placeholder {
  color: rgba(79, 90, 101, 0.6);
}
.city-modal__input:focus {
  outline: none;
  border-color: rgba(79, 90, 101, 0.45);
}
.city-modal__search-icon {
  position: absolute;
  top: 50%;
  right: 16px;
  display: block;
  pointer-events: none;
  transform: translateY(-50%);
}
.city-modal__body {
  flex: 1 1 auto;
  min-height: 497px;
  max-height: 497px;
  overflow-y: auto;
  position: relative;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.city-modal__body::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}
.city-modal__list {
  margin: 0;
  padding: 0;
  list-style: none;
  min-height: 100%;
}
.city-modal__list[hidden] {
  display: none;
}
.city-modal__item {
  display: flex;
  align-items: center;
  min-height: 71px;
  /*  border-bottom: 1px solid rgba($grey, 0.12);

   &:last-child {
     border-bottom: none;
   } */
}
.city-modal__option {
  display: flex;
  flex-direction: column;
  gap: 2px;
  width: 100%;
  padding: 8px;
  border: none;
  background: transparent;
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: color 0.2s ease;
}
.city-modal__option:hover .city-modal__option-name {
  color: #e24e4d;
}
.city-modal__option-name {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.35;
  color: #4f5a65;
  transition: color 0.2s ease;
}
.city-modal__option-region {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.35;
  color: rgba(79, 90, 101, 0.6);
}
.city-modal__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 100%;
  padding: 32px 16px;
  text-align: center;
}
.city-modal__empty[hidden] {
  display: none;
}
.city-modal__empty-icon {
  display: block;
  margin-bottom: 16px;
}
.city-modal__empty-title {
  margin: 0 0 8px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
  color: #4f5a65;
}
.city-modal__empty-text {
  margin: 0;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.5;
  color: rgba(79, 90, 101, 0.6);
}

.oneclick-modal {
  position: fixed;
  inset: 0;
  z-index: 10001;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
  overflow-y: auto;
}
.oneclick-modal.is-open {
  display: flex;
}
.oneclick-modal__overlay {
  position: fixed;
  inset: 0;
  background: rgba(35, 35, 35, 0.2);
}
.oneclick-modal__dialog {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1080px;
  max-height: calc(100vh - 48px);
  margin: auto;
  padding: 32px;
  background: #ffffff;
  overflow-y: auto;
  position: relative;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.oneclick-modal__dialog::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}
@media (max-width: 1000px) {
  .oneclick-modal__dialog {
    max-width: 480px;
    max-height: calc(100vh - 32px);
    padding: 20px 16px 24px;
  }
}
.oneclick-modal__close {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 2;
  display: flex;
  padding: 0;
  border: none;
  background: transparent;
  cursor: pointer;
}
@media (max-width: 1000px) {
  .oneclick-modal__close {
    top: 16px;
    right: 16px;
  }
}
.oneclick-modal__layout {
  display: grid;
  grid-template-columns: 402px minmax(0, 1fr);
  gap: 32px;
  align-items: start;
}
@media (max-width: 1000px) {
  .oneclick-modal__layout {
    display: block;
  }
}
.oneclick-modal__product {
  border: 1px solid rgba(79, 90, 101, 0.2);
}
@media (max-width: 1000px) {
  .oneclick-modal__product {
    display: none;
  }
}
.oneclick-modal__preview {
  display: none;
  gap: 12px;
  margin-bottom: 20px;
}
@media (max-width: 1000px) {
  .oneclick-modal__preview {
    display: flex;
    align-items: flex-start;
  }
}
.oneclick-modal__thumb {
  position: relative;
  flex-shrink: 0;
  width: 72px;
  height: 72px;
  background: #f9f9fa;
}
.oneclick-modal__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
.oneclick-modal__thumb-size {
  position: absolute;
  right: 0;
  bottom: 0;
  min-width: 24px;
  padding: 2px 4px;
  background: rgba(79, 90, 101, 0.15);
  font-size: 11px;
  font-weight: 500;
  line-height: 1.35;
  text-align: center;
  color: #4f5a65;
}
.oneclick-modal__preview-title {
  margin: 0;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.35;
  color: #4f5a65;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
@media (max-width: 768px) {
  .oneclick-modal__preview-title {
    max-width: 65%;
  }
}
.oneclick-modal__media {
  position: relative;
  padding: 13px 8px 0;
  aspect-ratio: 1/1;
}
.oneclick-modal__favorite {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 1;
  display: flex;
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
}
.oneclick-modal__viewport {
  width: 100%;
  height: 100%;
  overflow: hidden;
  cursor: grab;
  touch-action: pan-y;
}
.oneclick-modal__viewport.is-dragging {
  cursor: grabbing;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.oneclick-modal__track {
  display: flex;
  height: 100%;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}
.oneclick-modal__track.is-dragging {
  transition: none;
}
.oneclick-modal__slide {
  display: flex;
  flex: 0 0 100%;
  align-items: center;
  justify-content: center;
  min-width: 0;
}
.oneclick-modal__image {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.oneclick-modal__dots {
  position: absolute;
  right: 0;
  bottom: 12px;
  left: 0;
  display: flex;
  justify-content: center;
  gap: 8px;
}
.oneclick-modal__dots button {
  width: 6px;
  height: 6px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: rgba(79, 90, 101, 0.2);
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.oneclick-modal__dots button.is-active {
  background: #4f5a65;
}
.oneclick-modal__name {
  padding: 0 12px;
  margin-bottom: 4px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.35;
  color: #4f5a65;
}
.oneclick-modal__size {
  margin: 0;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
  color: rgba(79, 90, 101, 0.6);
  padding: 0 12px 12px;
}
.oneclick-modal__size span {
  color: black;
}
.oneclick-modal__form {
  min-width: 0;
}
.oneclick-modal__header {
  margin-bottom: 20px;
  padding-right: 32px;
}
@media (max-width: 1000px) {
  .oneclick-modal__header {
    margin-bottom: 16px;
    padding-right: 28px;
  }
}
.oneclick-modal__title {
  margin: 0 0 16px;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.35;
  color: #232323;
}
@media (max-width: 1000px) {
  .oneclick-modal__title {
    font-size: 20px;
  }
}
.oneclick-modal__subtitle {
  margin-bottom: 12px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: rgba(79, 90, 101, 0.6);
}
.oneclick-modal__section {
  margin-bottom: 16px;
  padding: 20px;
  background-color: #f9f9fa;
}
@media (max-width: 1000px) {
  .oneclick-modal__section--contact,
  .oneclick-modal__section--summary {
    padding: 16px;
    background: #f9f9fa;
  }
}
@media (max-width: 1000px) {
  .oneclick-modal__section--summary {
    margin-bottom: 12px;
  }
}
.oneclick-modal__fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 12px;
  overflow: visible;
}
@media (max-width: 1000px) {
  .oneclick-modal__fields {
    grid-template-columns: 1fr;
  }
}
.oneclick-modal__input {
  width: 100%;
  padding: 14px 16px;
  border: 1px solid rgba(79, 90, 101, 0.2);
  background: #ffffff;
  font: inherit;
  font-size: 14px;
  line-height: 1.35;
  color: #4f5a65;
}
.oneclick-modal__input::-moz-placeholder {
  color: rgba(79, 90, 101, 0.45);
}
.oneclick-modal__input::placeholder {
  color: rgba(79, 90, 101, 0.45);
}
.oneclick-modal__input:focus {
  outline: none;
  border-color: rgba(79, 90, 101, 0.45);
}
.oneclick-modal__input--promo {
  flex: 1 1 auto;
  min-width: 0;
}
.oneclick-modal__input.is-error {
  border-color: #e24e4d;
}
.oneclick-modal__promo-field {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  position: relative;
  overflow: visible;
}
.oneclick-modal__check {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
}
.oneclick-modal__check-input {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
  pointer-events: none;
}
.oneclick-modal__check-input:checked + .oneclick-modal__checkbox {
  background: #e24e4d;
  border-color: #e24e4d;
}
.oneclick-modal__check-input:checked + .oneclick-modal__checkbox::after {
  opacity: 1;
}
.oneclick-modal__checkbox {
  position: relative;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  margin-top: 1px;
  background: rgba(79, 90, 101, 0.2);
  transition:
    background-color 0.2s ease,
    border-color 0.2s ease;
}
.oneclick-modal__checkbox::after {
  content: "";
  position: absolute;
  top: 2px;
  left: 5px;
  width: 4px;
  height: 8px;
  border-right: 1.5px solid #ffffff;
  border-bottom: 1.5px solid #ffffff;
  opacity: 0;
  transform: rotate(45deg);
  transition: opacity 0.2s ease;
}
.oneclick-modal__check-text {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.45;
  color: rgba(79, 90, 101, 0.7);
}
.oneclick-modal__check-text a {
  display: inline;
  color: inherit;
  text-decoration: underline;
  text-decoration-style: dotted;
  text-underline-offset: 3px;
}
.oneclick-modal__check-text a:hover {
  color: #e24e4d;
}
.oneclick-modal__pricing-simple {
  margin-bottom: 12px;
}
.oneclick-modal__pricing-simple[hidden] {
  display: none;
}
.oneclick-modal__total-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.35;
  color: #4f5a65;
}
.oneclick-modal__total-row[hidden] {
  display: none !important;
}
.oneclick-modal__total-row strong {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.2;
  color: #232323;
}
@media (max-width: 1000px) {
  .oneclick-modal__total-row--desktop {
    display: none;
  }
}
.oneclick-modal__total-row--mobile {
  display: none;
  font-size: 14px;
}
.oneclick-modal__total-row--mobile strong {
  font-size: 20px;
}
@media (max-width: 1000px) {
  .oneclick-modal__total-row--mobile {
    display: flex;
  }
}
@media (max-width: 768px) {
  .oneclick-modal__total-row {
    margin-bottom: 16px;
  }
}
.oneclick-modal__bonuses {
  margin: 0 0 16px;
  font-weight: 500;
  font-size: 14px;
  line-height: 1.35;
  color: #4f5a65;
  text-align: right;
}
.oneclick-modal__bonuses strong {
  font-weight: 500;
  color: #e24e4d;
}
.oneclick-modal__bonuses span {
  -webkit-text-decoration: underline dotted #e24e4d;
  text-decoration: underline dotted #e24e4d;
  font-weight: 500;
}
.oneclick-modal.has-promo .oneclick-modal__bonuses {
  margin-top: 4px;
}
@media (max-width: 768px) {
  .oneclick-modal__bonuses {
    display: none;
  }
}
.oneclick-modal__breakdown {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin-bottom: 8px;
}
.oneclick-modal__breakdown[hidden] {
  display: none;
}
.oneclick-modal__breakdown-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  font-size: 14px;
  line-height: 1.35;
  color: #4f5a65;
}
.oneclick-modal__breakdown-row span:first-child {
  color: rgba(79, 90, 101, 0.6);
}
.oneclick-modal__breakdown-row span:last-child {
  font-weight: 500;
}
.oneclick-modal__breakdown-row--discount span:last-child {
  color: #e24e4d;
}
.oneclick-modal__breakdown-row--total {
  margin-top: 4px;
  font-size: 16px;
}
.oneclick-modal__breakdown-row--total strong {
  font-size: 28px;
  font-weight: 500;
  color: #232323;
}
@media (max-width: 1000px) {
  .oneclick-modal__breakdown-row--total strong {
    font-size: 20px;
  }
}
.oneclick-modal__promo {
  display: flex;
  gap: 8px;
  align-items: stretch;
}
.oneclick-modal__promo[hidden] {
  display: none;
}
.oneclick-modal__promo--applied {
  align-items: center;
}
@media (min-width: 768px) {
  .oneclick-modal__promo--applied {
    margin-bottom: 16px;
  }
}
@media (max-width: 768px) {
  .oneclick-modal__promo {
    flex-direction: column;
  }
}
.oneclick-modal__promo-btn {
  flex-shrink: 0;
  padding: 14px 18px;
  border: 1px solid #e24e4d;
  background: transparent;
  font: inherit;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
  color: #e24e4d;
  white-space: nowrap;
  cursor: pointer;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}
.oneclick-modal__promo-btn:hover {
  background: #e24e4d;
  color: #ffffff;
}
.oneclick-modal__promo-link {
	flex-shrink: 0;
	padding: 14px 18px;
	border: 1px solid #e24e4d;
	background: transparent;
	font: inherit;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.35;
	color: #e24e4d;
	white-space: nowrap;
	cursor: pointer;
	transition:
    background-color 0.2s ease,
    color 0.2s ease;
}
div[data-oneclick-promo-applied] .oneclick-modal__promo-link {
	border: 0px;
    -webkit-text-decoration: underline dotted #e24e4d;
    text-decoration: underline dotted #e24e4d;
    font-weight: 500;
    color: #4f5a65;
}
@media (max-width: 768px) {
  .oneclick-modal__promo-link {
    width: 100%;
    margin-bottom: 16px;
  }
}
.oneclick-modal__agree {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 16px;
  cursor: pointer;
}
@media (max-width: 1000px) {
  .oneclick-modal__agree--desktop {
    display: none;
  }
}
.oneclick-modal__agree--mobile {
  display: none;
}
@media (max-width: 1000px) {
  .oneclick-modal__agree--mobile {
    display: flex;
    margin-bottom: 12px;
  }
}
.oneclick-modal__submit {
  width: 100%;
  padding: 15px 16px;
  border: 1px solid #e24e4d;
  background: #e24e4d;
  font: inherit;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
  color: #ffffff;
  cursor: pointer;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}
@media (max-width: 1000px) {
  .oneclick-modal__submit {
    margin-top: 4px;
  }
}
.oneclick-modal__submit:hover {
  background: #ffffff;
  color: #e24e4d;
}

.size-modal {
  position: fixed;
  inset: 0;
  z-index: 10001;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
  overflow-y: auto;
}
.size-modal.is-open {
  display: flex;
}
.size-modal__overlay {
  position: fixed;
  inset: 0;
  background: rgba(35, 35, 35, 0.2);
}
.size-modal__dialog {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 560px;
  max-height: calc(100vh - 48px);
  margin: auto;
  padding: 32px;
  background: #ffffff;
  overflow-y: auto;
  position: relative;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.size-modal__dialog::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}
@media (max-width: 768px) {
  .size-modal__dialog {
    max-height: calc(100vh - 32px);
    padding: 24px 20px;
  }
}
.size-modal__close {
  position: absolute;
  top: 20px;
  right: 20px;
  display: flex;
  padding: 0;
  border: none;
  background: transparent;
  cursor: pointer;
}
.size-modal__title {
  max-width: 420px;
  margin: 0 48px 24px 0;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.35;
  color: #232323;
}
@media (max-width: 768px) {
  .size-modal__title {
    margin-right: 36px;
    font-size: 20px;
  }
}
.size-modal__steps {
  margin: 0 0 20px;
  padding: 0;
  list-style: none;
}
.size-modal__step {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: rgba(79, 90, 101, 0.8);
}
.size-modal__step:not(:last-child) {
  margin-bottom: 12px;
}
.size-modal__step-icon {
  display: block;
  flex-shrink: 0;
  width: 32px;
  height: 32px;
}
.size-modal__input {
  width: 100%;
  margin-bottom: 16px;
  padding: 14px 16px;
  border: 1px solid rgba(79, 90, 101, 0.2);
  background: #f9f9fa;
  font: inherit;
  font-size: 14px;
  line-height: 1.35;
  color: #4f5a65;
}
.size-modal__input::-moz-placeholder {
  color: rgba(79, 90, 101, 0.45);
}
.size-modal__input::placeholder {
  color: rgba(79, 90, 101, 0.45);
}
.size-modal__input:focus {
  outline: none;
  border-color: rgba(79, 90, 101, 0.45);
  background: #ffffff;
}
.size-modal__result {
  margin: 0;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.35;
  color: #4f5a65;
}
.size-modal__result[hidden] {
  display: none;
}
.size-modal__result strong {
  font-weight: 500;
  color: #e24e4d;
}

.quickview-modal {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
  overflow: hidden;
}
.quickview-modal .actions-product__bottom {
  display: none;
}
.quickview-modal .size-product__grid {
  grid-template-columns: repeat(8, 1fr);
}
.quickview-modal.is-open {
  display: flex;
}
.quickview-modal__overlay {
  position: fixed;
  inset: 0;
  background: rgba(35, 35, 35, 0.2);
}
.quickview-modal__dialog {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 1485px;
  max-height: calc(100dvh - 48px);
  margin-inline: auto;
  margin-block: 0;
  padding: 32px 32px 24px;
  background: #ffffff;
  overflow-x: hidden;
  overflow-y: auto;
  position: relative;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.quickview-modal__dialog::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}
@media (max-width: 1280px) {
  .quickview-modal__dialog {
    max-height: calc(100dvh - 24px);
    padding: 20px 24px 16px;
  }
}
@media (max-width: 1000px) {
  .quickview-modal__dialog {
    max-height: calc(100dvh - 24px);
    padding: 20px 16px 16px;
  }
}
.quickview-modal__close {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 3;
  display: flex;
  padding: 0;
  border: none;
  background: transparent;
  cursor: pointer;
}
@media (max-width: 1000px) {
  .quickview-modal__close {
    top: 16px;
    right: 16px;
  }
}
.quickview-modal__top {
  display: grid;
  grid-template-columns: 1.31fr 1fr !important;
  align-items: stretch;
  gap: 30px;
  margin-bottom: 12px;
  flex-shrink: 0;
}
@media (max-width: 1280px) {
  .quickview-modal__top {
    gap: 24px;
    margin-bottom: 12px;
  }
}
@media (max-width: 1023px) {
  .quickview-modal__top {
    grid-template-columns: 1fr !important;
    gap: 20px;
    margin-bottom: 12px;
    overflow-y: auto;
  }
}
@media (max-width: 1000px) {
  .quickview-modal__top {
    gap: 16px;
  }
}
.quickview-modal__top .product__gallery {
  grid-column: span 1 !important;
  height: 100%;
}
@media (max-width: 1023px) {
  .quickview-modal__top .product__gallery {
    grid-column: auto !important;
    height: auto;
  }
}
.quickview-modal__top .product__details {
  grid-column: span 1 !important;
  height: 100%;
}
@media (max-width: 1023px) {
  .quickview-modal__top .product__details {
    grid-column: auto !important;
    height: auto;
    max-height: none !important;
    overflow: visible !important;
  }
}
@media (min-width: 1024px) {
  .quickview-modal__top {
    --qv-thumb-size: 112px;
    display: flex;
    align-items: stretch;
  }
  .quickview-modal__top .product__gallery {
    flex: 1.31 1 0;
    min-width: 0;
    min-height: 0;
    height: auto;
    max-height: none;
    overflow: hidden;
  }
  .quickview-modal__top .product__details {
    flex: 1 1 0;
    min-width: 0;
    height: auto;
    max-height: none;
    overflow: visible;
  }
  .quickview-modal__top .gallery-product {
    height: 100%;
    min-height: 0;
    align-items: stretch;
  }
  .quickview-modal__top .gallery-product__left {
    flex: 0 0 var(--qv-thumb-size);
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
    overflow: hidden;
  }
  .quickview-modal__top .gallery-product__thumbs-shell {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
  }
  .quickview-modal__top .gallery-product__thumbs-viewport {
    flex: 1 1 0;
    min-height: 0;
    max-height: none !important;
    touch-action: none;
  }
  .quickview-modal__top
    .gallery-product__thumbs-viewport:has(.thumbs-gallery__item:nth-child(5)) {
    max-height: none !important;
  }
  .quickview-modal__top .thumbs-gallery__item {
    height: var(--qv-thumb-size);
  }
  .quickview-modal__top .gallery-product__more {
    flex: 0 0 auto;
    position: relative;
    z-index: 2;
    margin-top: auto;
    background: #ffffff;
  }
  .quickview-modal__top .gallery-product__more.is-visible {
    display: flex;
  }
  .quickview-modal__top
    .gallery-product__left:not(:has(.gallery-product__more.is-visible))
    .gallery-product__play {
    margin-top: auto;
  }
  .quickview-modal__top .gallery-product__play {
    flex: 0 0 auto;
    padding: 16px 12px;
    font-size: 14px;
  }
  .quickview-modal__top .gallery-product__play img {
    width: 24px;
    height: 24px;
  }
  .quickview-modal__top .gallery-product__right {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
  }
  .quickview-modal__top .gallery-product__main,
  .quickview-modal__top .main-gallery {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    height: 100%;
    min-height: 0;
  }
  .quickview-modal__top .main-gallery__viewport {
    flex: 1 1 0;
    height: 100% !important;
    max-height: 100% !important;
    min-height: 0;
    aspect-ratio: auto;
  }
  .quickview-modal__top .details-product {
    display: flex;
    flex-direction: column;
    height: auto;
    min-height: 0;
  }
  .quickview-modal__top .details-product__title,
  .quickview-modal__top .details-product__group,
  .quickview-modal__top .details-product__pickup,
  .quickview-modal__top .details-product__sizes,
  .quickview-modal__top .details-product__show-more {
    flex-shrink: 0;
  }
  .quickview-modal__top .details-product__sizes {
    margin-bottom: 12px;
  }
  .quickview-modal__top
    .product__details:not(:has(.details-product__text-wrap.is-expanded))
    .details-product__description {
    --desc-lines: 3;
    flex: 0 0 auto;
    flex-shrink: 0;
    min-height: auto;
    margin-bottom: 12px;
    overflow: visible;
  }
  .quickview-modal__top .details-product__text-wrap:not(.is-expanded) {
    -webkit-line-clamp: var(--desc-lines, 3);
    line-clamp: var(--desc-lines, 3);
  }
  .quickview-modal__top .details-product__actions {
    flex-shrink: 0;
    margin-top: 0;
  }
  .quickview-modal__top
    .product__details:not(:has(.details-product__text-wrap.is-expanded))
    .details-product__actions {
    margin-top: 0;
  }
}
.quickview-modal__top .details-product__title {
  padding-right: 36px;
  font-size: 28px;
}
@media (max-width: 1000px) {
  .quickview-modal__top .details-product__title {
    font-size: 22px;
  }
}
@media (max-width: 1000px) {
  .quickview-modal__top .size-product__grid {
    grid-template-columns: repeat(6, 1fr);
  }
}
.quickview-modal__more {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 15px 16px;
  border: 1px solid #e24e4d;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
  color: #e24e4d;
  text-decoration: none;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}
.quickview-modal__more::after {
  content: "";
  width: 8px;
  height: 13px;
  margin-left: 8px;
  background: url("/local/templates/daf_2020/components/bitrix/catalog/.default/bitrix/catalog.element/new_072026/../img/chevron-right.svg") center/contain no-repeat;
}
.quickview-modal__more:hover {
  background: #e24e4d;
  color: #ffffff;
}
.quickview-modal__more:hover::after {
  filter: brightness(0) invert(1);
}

.product-hint.is-open .product-tooltip {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

.product-hint__trigger {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
}
.product-hint__trigger img {
  display: block;
  width: 16px;
  height: 16px;
}

.product-tooltip {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  z-index: 6;
  width: -moz-max-content;
  width: max-content;
  max-width: min(260px, 100vw - 40px);
  padding: 10px 22px 10px 12px;
  border: 1px solid rgba(79, 90, 101, 0.12);
  background: #ffffff;
  box-shadow: 0 10px 28px rgba(79, 90, 101, 0.12);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.45;
  text-align: left;
  white-space: normal;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-4px);
  transition:
    opacity 0.2s ease,
    visibility 0.2s ease,
    transform 0.2s ease;
}
.product-tooltip::before {
  content: "";
  position: absolute;
  top: -5px;
  right: 1px;
  width: 10px;
  height: 10px;
  background: #ffffff;
  border-top: 1px solid rgba(79, 90, 101, 0.12);
  border-left: 1px solid rgba(79, 90, 101, 0.12);
  transform: rotate(45deg);
}
@media (max-width: 1000px) {
  .product-tooltip {
    top: auto;
    bottom: calc(100% + 10px);
    transform: translateY(4px);
  }
  .product-tooltip::before {
    top: auto;
    bottom: -5px;
    border-top: none;
    border-left: none;
    border-bottom: 1px solid rgba(79, 90, 101, 0.12);
    border-right: 1px solid rgba(79, 90, 101, 0.12);
  }
}
.product-tooltip__close {
  position: absolute;
  top: 8px;
  right: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
  line-height: 0;
}
.product-tooltip__close img {
  display: block;
  width: 12px;
  height: 12px;
}
.product-tooltip__wrap {
  width: 100%;
  overflow: hidden;
  transition: max-height 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}
.product-tooltip__wrap:not(.is-expanded) {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 7;
  line-clamp: 7;
}
.product-tooltip__wrap.is-expanded {
  display: block;
}
.product-tooltip__text {
  display: block;
  color: rgba(79, 90, 101, 0.8);
}
.product-tooltip__toggle {
  display: none;
  align-self: flex-start;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 6px;
  padding: 0;
  border: none;
  background: none;
  font: inherit;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.45;
  color: #4f5a65;
  cursor: pointer;
  position: relative;
}
.product-tooltip__toggle::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 1px;
  border-bottom: 2px dotted #e24e4d;
}
.product-tooltip.is-truncated .product-tooltip__toggle {
  display: inline-block;
}

@media (max-width: 1023px) {
  .wrapper:has(.product-mobile-bar) {
    padding-bottom: 80px;
  }
}

.product-mobile-bar {
  display: none;
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 500;
  width: 100%;
  padding: 20px;
  background: #ffffff;
  box-shadow: 0 -4px 16px rgba(79, 90, 101, 0.08);
}
@media (max-width: 1023px) {
  .product-mobile-bar {
    display: flex;
    gap: 12px;
    align-items: center;
  }
}
.product-mobile-bar__cart {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
  min-height: 40px;
  padding: 10px 16px;
  border: 1px solid #e24e4d;
  background: #e24e4d;
  color: #ffffff;
  font: inherit;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
  cursor: pointer;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}
.product-mobile-bar__cart img {
  display: block;
  flex-shrink: 0;
  transition: filter 0.2s ease;
}
.product-mobile-bar__cart:hover {
  background: #ffffff;
  color: #e24e4d;
}
.product-mobile-bar__cart:hover img {
  filter: brightness(0) saturate(100%) invert(43%) sepia(72%) saturate(2285%)
    hue-rotate(329deg) brightness(95%) contrast(92%);
}
.product-mobile-bar__favorite {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 1px solid #e24e4d;
  background: #ffffff;
  color: #e24e4d;
  cursor: pointer;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}
.product-mobile-bar__favorite.is-active {
  color: #e24e4d;
}
.product-mobile-bar__heart {
  display: block;
}
.product-mobile-bar__heart path {
  fill: none;
  transition: fill 0.2s ease;
}
.product-mobile-bar__favorite.is-active .product-mobile-bar__heart path {
  fill: currentColor;
}

.product_page .about_blok .breadcrumb ul {
  display: flex;
  align-items: center;
  gap: 4px;
}

.product_page .about_blok .breadcrumb ul li {
  font-weight: 500;
  font-size: 14px;
  line-height: 135%;
  letter-spacing: 1%;
  color: rgba(79, 90, 101, 0.6);
  text-wrap: nowrap;
}

.product_page .about_blok .breadcrumb ul li a {
  color: #4f5a65;
}

.product_page .about_blok .breadcrumb.second_breadcrumb {
  display: none;
}

@media (max-width: 1000px) {
  .product_page .about_blok .breadcrumb {
    display: none;
  }
  .product_page .about_blok .breadcrumb.second_breadcrumb {
    display: flex;
    position: relative;
    overflow-x: auto;
    margin-top: 75px;
    z-index: 10;
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE/Edge */
  }
  .product_page .about_blok .breadcrumb.second_breadcrumb::-webkit-scrollbar {
    display: none; /* Chrome, Safari, Opera */
  }
  .product_page .about_blok .breadcrumb.second_breadcrumb .blur {
    background: linear-gradient(
      270deg,
      #ffffff 0%,
      rgba(255, 255, 255, 0) 100%
    );
    width: 40px;
    height: 16px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -20px;
  }
}
.product {
  margin-top: 30px;
}
@media (min-width: 991px) {
  .product {
    margin-bottom: 120px;
  }
}
@media (max-width: 1000px) {
  .product {
    display: flex;
    flex-direction: column;
  }
}
@media (max-width: 1000px) {
  .product__show-more {
    order: 1;
  }
}
@media (max-width: 1000px) {
  .product__faq {
    order: 2;
  }
}
.product__top {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 30px;
  margin-bottom: 32px;
  position: relative;
}
@media (min-width: 1024px) {
  .product__top {
    align-items: start;
  }
}
@media (max-width: 1023px) {
  .product__top {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.product__gallery {
  grid-column: span 7;
}
@media (min-width: 1024px) {
  .product__gallery {
    align-self: start;
  }
}
@media (max-width: 1366px) {
  .product__gallery {
    grid-column: span 6;
  }
}
@media (max-width: 1023px) {
  .product__gallery {
    grid-column: auto;
  }
}
.product__details {
  grid-column: span 5;
}
@media (min-width: 1024px) {
  .product__details {
    display: flex;
    flex-direction: column;
    max-height: 780px;
    overflow: hidden;
  }
  .product__details:has(.details-product__text-wrap.is-expanded) {
    max-height: none;
    overflow: visible;
  }
  .product__details:has(.period-product-actions.is-open) {
    overflow: visible;
    z-index: 100;
  }
}
@media (max-width: 1366px) {
  .product__details {
    grid-column: span 6;
  }
}
@media (max-width: 1023px) {
  .product__details {
    grid-column: auto;
    max-height: none;
    overflow: visible;
  }
}

.custom-scrollbar {
  position: fixed;
  top: 0;
  right: auto;
  width: 2px;
  background: #f9f9fa;
  z-index: 10001;
  pointer-events: auto;
}
.custom-scrollbar.is-hidden {
  display: none;
}
.custom-scrollbar__thumb {
  position: absolute;
  top: 0;
  left: 0;
  width: 2px;
  background: #e24e4d;
  cursor: pointer;
}

@media screen and (max-width: 767px) {
  .modal-complete-add-to-basket .default-modal__content {
    max-width: 93vw !important;
  }
}
/* Final mobile override: the showcase card keeps its original checkbox usable in the 2x2 bundle grid. */
@media (max-width: 1000px) {
  .bundle-product .offer-card--showcase .offer-card__price-row {
    position: absolute;
    right: 12px;
    bottom: 12px;
    z-index: 4;
    display: block;
    padding: 0;
    background: transparent;
  }

  .offer-card__favorite {
    top: 8px;
    right: 8px;
  }

  .bundle-product
    .offer-card--showcase
    .offer-card__price-row
    > .offer-card__price {
    display: none;
  }

  .bundle-product .offer-card--showcase .offer-card__check {
    position: static;
  }

  .bundle-product .offer-card--showcase .offer-card__footer--mobile {
    padding-right: 48px;
    padding-bottom: 0;
  }
}

/* Final checkbox positioning: one checkbox is anchored to the bottom-right of every bundle card on desktop and mobile. */
.bundle-product .offer-card--showcase {
  position: relative;
}

.bundle-product .offer-card--showcase .offer-card__price-row {
  padding-right: 52px;
}

.bundle-product .offer-card--showcase > .offer-card__check {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 10;
  display: block;
}

@media (max-width: 1000px) {
  .bundle-product .offer-card--showcase .offer-card__price-row {
    display: none;
  }

  .bundle-product .offer-card--showcase .offer-card__footer--mobile {
    padding-right: 48px;
  }

  .bundle-product .offer-card--showcase > .offer-card__check {
    right: 0;
    bottom: 0;
  }
}

#element_recomend_bottom .offer-card__favorite.btn-fav:hover path,
#element_recomend_bottom .offer-card__favorite.btn-fav.is-active path {
  fill: #e24e4d;
}

.reviews_element .h2 {
  margin-bottom: 20px;
  font-size: 36px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: rgb(79, 90, 101);
}

/* ========================================================= */

/* Все родительские контейнеры, которые могут скрывать выпадашку */
.details-product__actions,
.actions-product,
.actions-product__bottom,
.details-product,
.product-card__content,
.product-page__main {
  overflow: visible !important;
}

/* Контейнер виджета – позиционирование, ширина и видимость */
.bottom-actions-product__period {
  position: relative;
  z-index: 2;
  width: 100%;
  overflow: visible !important;
}

/* Сам веб-компонент – блочный и на всю ширину */
.bottom-actions-product__period tinkoff-create-button,
.bottom-actions-product__period tinkoff-create-button-view {
  display: block !important;
  width: 100% !important;
}

/* =========================================================== */

/* Принудительное выравнивание размеров карточек */
.offer-card.offer-card--showcase {
  width: 100% !important;
  height: 100% !important; /* растягиваем на всю высоту родителя */
  aspect-ratio: 1 / 1 !important; /* квадрат на десктопе */
}

/* Внутренние контейнеры должны занимать всё доступное пространство */
.offer-card.offer-card--showcase .offer-card__media {
  flex: 1 1 auto !important;
  min-height: 0 !important;
}

.offer-card.offer-card--showcase .offer-card__gallery {
  height: 100% !important;
}

.offer-card.offer-card--showcase .offer-card__viewport {
  height: 100% !important;
}

.offer-card.offer-card--showcase .offer-card__image {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

/* На мобильных устройствах (≤1000px) убираем квадратность */
@media (max-width: 1000px) {
  .offer-card.offer-card--showcase {
    aspect-ratio: auto !important;
    height: auto !important;
  }
}

@media (max-width: 1108px) and (min-width: 1023px) {
  .middle-actions-product__onelick {
    padding: 9px 22px;
  }
}

/* ========================================================= */

@media (min-width: 1024px) {
  /* Правая колонка — флекс-контейнер с вертикальным направлением */
  .product__details {
    display: flex;
    flex-direction: column;
    height: 100%; /* растягиваем на всю высоту грид-ячейки */
    max-height: 780px; /* оставляем ограничение, чтобы не превышать галерею */
    overflow: hidden; /* чтобы не вылезало за пределы */
  }

  /* Внутренний контейнер тоже флекс, чтобы занять всё пространство */
  .product__details .details-product {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto; /* занимает всё доступное место */
    min-height: 0; /* предотвращает переполнение */
  }

  /* Блок действий прижимаем к нижнему краю */
  .product__details .details-product__actions {
    margin-top: auto;
    flex-shrink: 0; /* не даём ему сжиматься */
  }

  /* Если текст развёрнут — убираем ограничение высоты, чтобы не обрезать содержимое */
  .product__details:has(.details-product__text-wrap.is-expanded) {
    max-height: none;
    overflow: visible;
  }
  .product__details:has(.details-product__text-wrap.is-expanded)
    .details-product__actions {
    margin-top: auto; /* прижатие сохраняется */
  }
}

/* ================================================================= */

.details-product__text a {
  text-decoration: underline;
  text-decoration-color: #e24e4d;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px; /* по желанию */
}

/* ================================================================= */

/* Приведение списка городов к стилю желаемого примера */
.city-modal__list .select__option {
  display: flex;
  flex-direction: column;
  gap: 2px;
  width: 100%;
  padding: 8px;
  border: none;
  background: transparent;
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: color 0.2s ease;
  min-height: 71px;
  justify-content: center;
}

.city-modal__list .select__option:hover .select__city {
  color: #e24e4d;
}

.select__city {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.35;
  color: #4f5a65;
  transition: color 0.2s ease;
}

.select__region {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.35;
  color: rgba(79, 90, 101, 0.6);
}

/* Разделители между пунктами (как в примере, можно убрать если не нужно) */
.city-modal__list .select__option:not(:last-child) {
  border-bottom: 1px solid rgba(79, 90, 101, 0.12);
}

/* Убираем лишние отступы у списка, если они есть */
.city-modal__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* ============================================================ */

.container .reviews_element {
  margin-bottom: 130px;
}

/* ============================================================ */

.input-error-tooltip__text {
  color: #e24e4d;
}

/* ============================================================ */

.details-product__sku {
  z-index: 2;
}

/* ============================================================ */

/* 1. Разрешаем тултипу выходить за пределы родительских контейнеров */
.tabs-product__panel-inner:has(.specs-tab__hint.is-open),
.tabs-product__panel:has(.specs-tab__hint.is-open) {
  overflow: visible;
}

/* 2. Сам хинт не должен ограничивать */
.specs-tab__hint.product-hint.is-open {
  z-index: 1000;
  overflow: visible;
}

/* 3. Поднимаем тултип выше всех видимых элементов */
.product-tooltip {
  z-index: 1001;
}

/* 4. Дополнительно, если нужно, фиксируем позиционирование,
   чтобы он не зависел от контекста наложения родителя */
.specs-tab__hint.product-hint.is-open .product-tooltip {
  position: absolute; /* оставляем absolute, но повышаем z-index */
  z-index: 1001;
}

/* =========================================================== */

/* Скрываем кнопки копирования во всех строках, кроме первой (Артикул) */
.specs-tab__row:not(:first-child) .specs-tab__copy {
  display: none !important;
}

/* =========================================================== */

.specs-tab__row:first-child .specs-tab__value-text,
.specs-tab__value-text a {
  text-decoration: underline;
  text-decoration-color: #e24e4d;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

/* =========================================================== */

@media (max-width: 1000px) {
  .oneclick-modal__title {
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: 145%; /* 29px */
    letter-spacing: 0.2px;
    margin-bottom: 5px;
  }

  .oneclick-modal__subtitle {
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 135%; /* 18.9px */
    letter-spacing: 0.14px;
  }

  .oneclick-modal__preview-title {
    color: #4f5a65;
    text-overflow: ellipsis;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 135%;
    letter-spacing: 0.14px;
  }

  .oneclick-modal__check-text {
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 135%; /* 16.2px */
    letter-spacing: 0.12px;
  }

  .oneclick-modal__total-row--mobile span {
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 145%; /* 23.2px */
    letter-spacing: 0.16px;
  }
}

/* ================================================== */

.gallery-product__left {
  justify-content: space-between;
}

/* ================================================== */

.details-product__store {
  margin-right: 5px;
}

/* ================================================== */

/* 27.10.2026: пунктир под «Москве» на том же уровне, что под «магазине» и у остальных ссылок страницы (bottom: -2px) */
.details-product__pickup button:after {
  bottom: -2px;
}
/* 27.10.2026: высота строки у «магазине»/«Москве» как у «Как определить размер?» — пунктир на том же расстоянии от текста */
.details-product__pickup button,
.details-product__pickup .details-product__store-btn {
  line-height: 1;
}
/* 27.10.2026: у остальных пунктирных ссылок страницы — та же высота строки, пунктир на одном расстоянии от текста */
.desc-tab__read-more,
.details-product__show-more,
.size-product__determine-size,
.warranty-tab__link span,
.review-card__source {
  line-height: 1;
}

/* ================================================== */

@media (hover: hover) and (pointer: fine) {
  .js_smartbanner {
    display: none !important;
  }
}

/* ================================================== */

.main-gallery__slide {
  overflow: hidden;
  position: relative;
}

.main-gallery__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  /* Плавный переход при зуме */
  transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  /* transform-origin НЕ трогаем — он уже задан у тебя inline */
}

/* Ховер-зум — переопределяет существующий скейл через CSS-переменную */
@media (hover: hover) and (pointer: fine) {
  .main-gallery__slide.is-active:hover .main-gallery__image {
    transform: scale(var(--hover-scale, 1)) !important;
  }
}

@media (max-width: 1023px) {
  .main-gallery__viewport {
    touch-action: pan-y pinch-zoom;
  }
}

/* ================================================== */

.container .reviews_element {
  margin-bottom: 80px;
}

/* ================================================== */

/* product__offer: compact layout when the bundle contains exactly two products. */
@media (min-width: 1001px) {
  .product__offer
    .bundle-product.bundle-product--two-items
    .bundle-product__layout {
    grid-template-columns:
      minmax(0, var(--bundle-two-main-width))
      minmax(0, var(--bundle-two-aside-width));
    justify-content: start;
    align-items: start;
  }

  .product__offer
    .bundle-product.bundle-product--two-items
    .bundle-product__main,
  .product__offer
    .bundle-product.bundle-product--two-items
    .bundle-product__slider,
  .product__offer
    .bundle-product.bundle-product--two-items
    .bundle-product__viewport {
    width: var(--bundle-two-main-width);
    max-width: 100%;
  }

  .product__offer
    .bundle-product.bundle-product--two-items
    .bundle-product__viewport {
    overflow-x: clip;
    cursor: default;
    touch-action: auto;
  }

  .product__offer
    .bundle-product.bundle-product--two-items
    .bundle-product__track {
    width: var(--bundle-two-main-width);
    transform: none !important;
    transition: none;
  }

  .product__offer
    .bundle-product.bundle-product--two-items
    .bundle-product__slide {
    flex: 0 0 var(--bundle-two-card-width);
    width: var(--bundle-two-card-width);
    max-width: var(--bundle-two-card-width);
  }

  .product__offer
    .bundle-product.bundle-product--two-items
    .bundle-product__aside {
    width: var(--bundle-two-aside-width);
    min-width: 0;
  }

  .product__offer
    .bundle-product.bundle-product--two-items
    .bundle-product__summary {
    width: 100%;
  }

  .product__offer
    .bundle-product.bundle-product--two-items
    .bundle-product__footer {
    display: none;
  }

  .product__offer
    .bundle-product.bundle-product--no-scroll
    .bundle-product__footer {
    display: none;
  }
}
:root {
  --header-offset: 160px;
  --gallery-height: min(780px, calc(100dvh - var(--header-offset)));
}

@media (min-width: 1024px) and (max-width: 1440px) {
  .main-gallery__viewport {
    height: var(--gallery-height);
  }

  .product__details {
    max-height: var(--gallery-height);
  }

  .thumbs-gallery__item {
    height: calc((var(--gallery-height) - 4px * 3) / 4);
  }

  .gallery-product__thumbs-viewport:has(.thumbs-gallery__item:nth-child(5)) {
    max-height: var(--gallery-height);
  }
}
:where(.offer-card__price, [class*="price"]) {
  font-family: "Montserrat", "Helvetica Neue", Arial, sans-serif;
}
/* 28.10.2026: на телефоне и планшете «ХИТ» и артикул стоят строкой над фото, а не на нём (оформление прежнее) */
@media (max-width: 991px) {
  .product__top .product__gallery { margin-top: 36px; }
  .product__top .gallery-product__flags { top: -34px; left: 0; flex-direction: row; }
}

/* End */


/* Start:/local/templates/daf_2020/components/bitrix/catalog/.default/bitrix/catalog.element/new_072026/null.css?1783640936771*/
*{border:0;margin:0;padding:0}*,:after,:before{box-sizing:border-box}:after,:before{display:inline-block}body,html{height:100%}body{font-size:16px;line-height:1!important;scrollbar-gutter:stable;-ms-text-size-adjust:100%;-moz-text-size-adjust:100%;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,textarea{background-color:transparent;color:inherit;font-family:inherit;font-size:inherit;line-height:inherit}input,textarea{width:100%}label{display:inline-block}button,option,select{cursor:pointer}a{color:inherit;display:inline-block;text-decoration:none}li{list-style:none}img{height:auto;max-width:100%;vertical-align:middle}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}address{font-style:normal}
/* End */


/* Start:/local/templates/daf_2020/components/bitrix/catalog/.default/bitrix/catalog.element/new_072026/style.css?17869945423977*/
.product-info .product-info__char p {
	white-space: normal;
  text-overflow: ellipsis;
  overflow: inherit;
}
.product-info .product-info__char .isOpen {
	height: 100% !important;
}
.details-product__availability.colorred {
	color: #e24e4d;
}




/* CITY */
.city{
    width: 100%;
    height: 100vh;
    position: fixed;
    left: 0;
    top: 0;
    display: none;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
	z-index: 1000;
}
.city::before{
    content: "";
    position: absolute;
    width: 100%;
    height: 100vh;
    left: 0;
    top: 0;
    background: rgba(155, 155, 155, 0.4);
    backdrop-filter: blur(2.5px);
}
.city__row{
    width: 1058px;
    height: auto;
    padding: 40px 50px 34px;
    background: #FFFFFF;
    box-sizing: border-box;
    position: relative;
}
.city-close{
    width: 18px;
    height: 18px;
    position: absolute;
    right: 24px;
    top: 24px;
    background-image: url('/local/templates/daf_2020/img/order/close.svg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    cursor: pointer;
}
.city-title{
    width: 100%;
    height: auto;
    float: left;
    font-weight: 300;
    font-size: 32px;
    line-height: 40px;
    color: #232323;
    text-align: center;
}
.city__sections{
    width: 100%;
    height: auto;
    float: left;
}
.city__sections__item{
    width: 100%;
    height: auto;
    float: left;
}
.city__sections__item-search{
    width: 100%;
    height: auto;
    float: left;
    padding: 20px;
    background: #FAFAFA;
    box-sizing: border-box;
    font-weight: 300;
    font-size: 16px;
    line-height: 20px;
    color: #4F5A65;
    border: unset;
    margin: 36px 0 0 0;
}
.city__sections__item__list{
    width: 100%;
    height: auto;
    max-height: 499px;
    float: left;
    margin: 24px 0 0 0;
    overflow-y: scroll;
}
.city__sections__item__list::-webkit-scrollbar {
    width: 4px;
}
.city__sections__item__list::-webkit-scrollbar-track {
    background-color: #FAFAFA;
}
.city__sections__item__list::-webkit-scrollbar-thumb {
    background: #BFCDD8; 
}
.city__sections__item__list__address{
    width: 100%;
    height: auto;
    float: left;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    padding: 15px;
    box-sizing: border-box;
}
.city__sections__item__list__address:nth-child(2n){
    background: #FAFAFA;
}
.city__sections__item__list__address__box{
    width: fit-content;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    align-content: flex-start;
}
.city__sections__item__list__address__box-title{
    width: fit-content;
    height: auto;
    font-weight: 500;
    font-size: 16px;
    line-height: 20px;
    letter-spacing: 0.04em;
    color: #232323;
    float: left;
}
.city__sections__item__list__address__box-address{
    width: fit-content;
    height: auto;
    font-weight: 500;
    font-size: 14px;
    line-height: 17px;
    letter-spacing: 0.04em;
    color: #7C858E;
    float: left;
    margin: 12px 0 0 0;
}
.city__sections__item__list__address__box-button{
    width: fit-content;
    height: auto;
    font-weight: 500;
    font-size: 12px;
    line-height: 20px;
    text-align: center;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #232323;
    padding: 15px 40px;
    float: left;
    box-sizing: border-box;
    border: 1px solid #BFCDD8;
    transition: .4s;
}
.city__sections__item__list__address__box-button:hover{
    transition: .4s;
    color: #FFFFFF;
    background: #232323;
    border-color: #232323;
}
.city__sections__item__list__address__box-button.active{
    transition: .4s;
    color: #FFFFFF;
    background: #232323;
    border-color: #232323;
}
/* CITY */
/* End */
/* /local/templates/daf_2020/vendor/swiper-12.2.0/swiper-bundle.min.css?179277024714609 */
/* /local/templates/daf_2020/fonts/montserrat-var/montserrat-var.css?17927702473108 */
/* /local/templates/daf_2020/components/bitrix/catalog/.default/bitrix/catalog.element/new_072026/style_new.css?1793463816133467 */
/* /local/templates/daf_2020/components/bitrix/catalog/.default/bitrix/catalog.element/new_072026/null.css?1783640936771 */
/* /local/templates/daf_2020/components/bitrix/catalog/.default/bitrix/catalog.element/new_072026/style.css?17869945423977 */
