/*! 
-------------------------------------------
BASE STYLES
-------------------------------------------
NOTE: PLEASE DO NOT edit "base.min.css",
      because your changes 100% will be lost!
      For custom styles use "custom.css" only
-------------------------------------------
*/
/*! RB Reset v4.3 (based on normalize) */

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

body,
html {
  height: 100%;
  width: 100%
}

html {
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: transparent
}

applet,
article,
aside,
audio,
blockquote,
body,
canvas,
caption,
dd,
details,
div,
dl,
dt,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
iframe,
input,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
section,
span,
strike,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
ul,
var,
video {
  margin: 0;
  padding: 0
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: 400
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main menu,
nav,
section,
summary {
  display: block
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline
}

audio:not([controls]) {
  display: none;
  height: 0
}

[hidden],
[list]::-webkit-calendar-picker-indicator,
template {
  display: none
}

a img,
abbr,
acronym,
body,
html,
img {
  border: 0
}

address,
caption,
cite,
code,
dfn,
em,
th,
var {
  font-style: normal;
  font-weight: 400
}

dir,
menu,
ol,
ul {
  list-style: none
}

a {
  background-color: rgba(0, 0, 0, 0)
}

a,
a:active,
a:hover {
  outline: 0;
  border: 0
}

:focus {
  outline: 0
}

caption,
table th {
  text-align: left
}

table {
  border-collapse: collapse;
  border-spacing: 0
}

table td {
  vertical-align: top
}

q:after,
q:before {
  content: ""
}

blockquote,
q {
  quotes: none
}

hr {
  height: 0;
  box-sizing: content-box
}

blockquote:after,
blockquote:before,
q:after,
q:before {
  content: "";
  content: none
}

sub,
sup {
  line-height: 0
}

svg:not(:root) {
  overflow: hidden
}

nav ol,
nav ul {
  list-style: none;
  list-style-image: none;
  margin: 0;
  padding: 0
}

@-moz-viewport {
  width: device-width
}

@-ms-viewport {
  width: device-width
}

@-webkit-viewport {
  width: device-width
}

@-o-viewport {
  width: device-width
}

@viewport {
  width: device-width
}

summary {
  display: list-item;
  cursor: pointer
}

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
  line-height: inherit
}

button {
  overflow: visible
}

button,
select {
  text-transform: none
}

[type=button],
[type=reset],
[type=submit],
button {
  -webkit-appearance: button;
  cursor: pointer
}

button[disabled],
input[disabled] {
  cursor: default
}

button::-moz-focus-inner,
input::-moz-focus-inner,
legend {
  border: 0;
  padding: 0
}

input[type=checkbox],
input[type=radio] {
  padding: 0
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto
}

input[type=search] {
  -webkit-appearance: textfield;
  box-sizing: content-box
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}

textarea {
  overflow: auto
}

img,
svg {
  vertical-align: middle
}

[type=button],
[type=reset],
[type=submit],
button {
  -webkit-appearance: button
}

[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled),
button:not(:disabled) {
  cursor: pointer
}

code,
kbd,
pre,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
  direction: ltr;
  unicode-bidi: bidi-override
}

::-webkit-color-swatch-wrapper,
::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-year-field {
  padding: 0
}

::-webkit-inner-spin-button {
  height: auto
}

::-webkit-search-decoration {
  -webkit-appearance: none
}

::-webkit-file-upload-button {
  font: inherit
}

::file-selector-button {
  font: inherit
}

[type=search] {
  outline-offset: -2px;
  -webkit-appearance: textfield
}

img {
  max-width: 100%
}

body {
  overflow: hidden;
  overflow-y: auto;
  min-width: 320px;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  background-color: #fff
}

select {
  word-wrap: normal
}

progress {
  vertical-align: baseline
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible
}

svg {
  overflow: hidden;
  vertical-align: middle
}

input,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

input[type=search] {
  box-sizing: border-box
}

@media(prefers-reduced-motion:no-preference) {
  :root {
    scroll-behavior: smooth
  }
}

@media(prefers-reduced-motion:reduce) {

  *,
  ::after,
  ::before,
  :focus,
  :hover {
    transition: none !important;
    -webkit-animation-duration: 0s !important;
    animation-duration: 0s !important;
    -webkit-animation-iteration-count: 1 !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0s !important;
    scroll-behavior: auto !important
  }
}

/*! 
------------------------------------------
GRID
------------------------------------------
*/
.container,
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl,
.container-xxxl {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto
}

@media(min-width:576px) {

  .container,
  .container-sm {
    max-width: 540px
  }
}

@media(min-width:768px) {

  .container,
  .container-md,
  .container-sm {
    max-width: 720px
  }
}

@media(min-width:992px) {

  .container,
  .container-lg,
  .container-md,
  .container-sm {
    max-width: 960px
  }
}

@media(min-width:1200px) {

  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl {
    max-width: 1140px
  }
}

@media(min-width:1400px) {

  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: 1370px
  }
}

@media(min-width:1900px) {

  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl,
  .container-xxxl {
    max-width: 1700px
  }
}

/*! 
------------------------------------------
TYPOGRAPHY
------------------------------------------
*/
/*! root variables */
:root {
  --index: calc(1vw + 1vh);
  --body-text: #000;
  --body-background: #fff;
  --font-main: Lato, sans-serif, sans-serif;
  --font-secondary: FF Celeste, sans-serif, sans-serif;
  --font-icons: "icons";
  --color-main: #01371F;
  --color-main-light: #039b57;
  --color-main-dark: black;
  --color-secondary: #E8C38E;
  --color-secondary-light: #f9f0e3;
  --color-secondary-dark: #dfad64;
  --color-link: #01371F;
  --color-black: #000;
  --color-success: #31C919;
  --color-success-light: #70eb5d;
  --color-success-dark: #1b6e0e;
  --color-warning: #f0d435;
  --color-warning-light: #f7e894;
  --color-warning-dark: #b2990d;
  --color-error: #FF0000;
  --color-error-light: #ff6666;
  --color-error-dark: #990000;
  --color-disabled: #f2f2f2;
  --color-disabled-light: white;
  --color-disabled-dark: #e5e5e5;
  --editor-margin: min(max(20px, 2vw), 2rem);
  --layer-bg: rgba(0, 0, 0, 0.2);
  --section-margin: 5rem;
  --section-padding: 5rem;
  --layout-gap: 1.25rem
}

/*! base */
body {
  font-family: var(--font-main);
  font-size: 100%;
  font-weight: 400;
  line-height: normal;
  text-rendering: optimizeSpeed;
  color: var(--body-text);
  min-height: 100%;
  min-width: 300px;
  display: flex;
  flex-direction: column;
  background-color: var(--body-background)
}

.layout-wrapper {
  flex: 1 0 auto
}

/*! headings */
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-main);
  line-height: normal;
  font-size: min(max(var(--min), var(--val)), var(--max));
  color: var(--color-main);
  margin-bottom: var(--editor-margin)
}

.h1,
.h2,
.h3,
.h4,
h1,
h2,
h3,
h4 {
  --min: 22px;
  --val: 2vw;
  --max: 32px;
  font-weight: 400;
  text-transform: uppercase
}

.h2,
.h3,
h2,
h3 {
  --min: 20px;
  --val: 1.75vw;
  --max: 28px
}

.h3,
h3 {
  --val: 1.625vw;
  --max: 26px
}

.h4,
h4 {
  --min: 20px;
  --val: 1.5vw;
  --max: 24px
}

.h5,
h5 {
  --min: 18px;
  --val: 1.25vw;
  --max: 20px
}

.h6,
h6 {
  --min: 16px;
  --val: 1.125vw;
  --max: 18px
}

/*! base tags style */
a {
  color: var(--color-main);
  outline: 0 !important
}

a:hover {
  text-decoration: none
}

a:focus {
  outline: thin dotted;
  outline: .3125rem auto -webkit-focus-ring-color;
  outline-offset: -.125rem
}

a:not([class]) {
  -webkit-text-decoration-skip: ink;
  text-decoration-skip-ink: auto
}

.b,
b,
strong {
  font-weight: 700
}

p:not(:last-child) {
  margin-bottom: var(--editor-margin)
}

u {
  text-decoration: underline
}

dfn,
em {
  font-style: italic
}

del {
  text-decoration: line-through
}

ins {
  background: var(--color-warning);
  color: var(--body-text);
  text-decoration: none
}

big {
  font-size: 1.2em
}

small {
  font-size: .8em
}

abbr[title],
acronym {
  border-bottom: 1px dotted
}

pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em
}

mark {
  background: var(--color-warning);
  color: var(--body-text);
  font-style: italic;
  font-weight: 700
}

q {
  quotes: none
}

q:after,
q:before {
  content: "";
  content: none
}

sub,
sup {
  font-size: .8em;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}

sup {
  top: -.5em
}

sub {
  bottom: -.25em
}

hr {
  display: block;
  block-size: .0625rem;
  border: 0;
  border-top: .0625rem dashed var(--color-disabled);
  margin-bottom: var(--editor-margin);
  padding: 0
}

dl {
  margin: 0 0 var(--editor-margin) 0
}

dl dt {
  font-weight: 700
}

dd {
  margin: 0 0 0 var(--editor-margin)
}

img,
picture {
  max-width: 100%;
  max-height: 100%;
  height: auto;
  display: inline-block
}

/*! editor content */
.editor {
  font-size: 14px;
  font-weight: 300;
  line-height: normal
}

@media(min-width:576px) {
  .editor {
    font-size: 16px
  }
}

@media(min-width:768px) {
  .editor {
    font-size: 18px
  }
}

.editor a {
  text-underline-position: under;
  text-decoration-thickness: 1px
}

.editor .h1,
.editor .h2,
.editor .h3,
.editor .h4,
.editor .h5,
.editor .h6,
.editor h1,
.editor h2,
.editor h3,
.editor h4,
.editor h5,
.editor h6 {
  margin-bottom: var(--editor-margin)
}

.editor ol,
.editor ul {
  margin-left: 15px;
  list-style-type: disc
}

.editor ol:not(:last-child),
.editor ul:not(:last-child) {
  margin-bottom: var(--editor-margin)
}

.editor ol li,
.editor ul li {
  position: relative
}

.editor ol li:not(:last-child),
.editor ul li:not(:last-child) {
  margin-bottom: 15px
}

.editor ol,
.editor ul {
  list-style-type: disc;
  margin-bottom: var(--editor-margin)
}

.editor ol li,
.editor ul li {
  position: relative;
  margin-bottom: 5px;
  margin-left: 15px
}

.editor ol {
  counter-reset: item;
  padding-left: 0;
  margin-left: 0
}

.editor ol>li {
  list-style: none;
  margin-left: 0;
  padding-left: 0
}

.editor ol>li::before {
  font-size: 16px;
  content: counters(item, ".") ". ";
  counter-increment: item;
  font-weight: 400
}

.editor ol>li ol {
  padding-top: 5px
}

.editor ol>li ol li::before {
  font-size: inherit;
  font-weight: 300
}

.editor ol>li ol li ul {
  margin-left: 20px
}

.editor blockquote {
  display: block;
  position: relative;
  border-left: 5px solid var(--color-main);
  padding: 10px 10px 10px 25px;
  margin-bottom: var(--editor-margin)
}

.editor p:last-child {
  margin-bottom: 0
}

.editor iframe {
  max-width: 100%;
  max-height: 100%
}

.editor table {
  border: 0;
  margin-bottom: var(--editor-margin);
  width: 100%
}

.editor table tr td,
.editor table tr th {
  transition: background .3s;
  border: 1px solid #ccc;
  padding: .5rem .75rem;
  vertical-align: middle
}

.editor table tr th {
  background: #eee;
  text-align: center
}

.editor table tr:hover td {
  background: #fbfbfb
}

/*! 
------------------------------------------
FORMS
------------------------------------------
*/
/*! placeholder (defaut) */
::-webkit-input-placeholder {
  color: #909090
}

::-moz-placeholder {
  color: #909090
}

:-ms-input-placeholder {
  color: #909090
}

::-ms-input-placeholder {
  color: #909090
}

::placeholder {
  color: #909090
}

[disabled]::-webkit-input-placeholder {
  color: var(--color-disabled-dark)
}

[disabled]::-moz-placeholder {
  color: var(--color-disabled-dark)
}

[disabled]:-ms-input-placeholder {
  color: var(--color-disabled-dark)
}

[disabled]::-ms-input-placeholder {
  color: var(--color-disabled-dark)
}

[disabled]::placeholder {
  color: var(--color-disabled-dark)
}

/*! default inputs */
.btn,
.co-button,
.co-input-field,
.input,
.m-input-field,
.m-modal-button {
  font-family: var(--font-main);
  margin: 0;
  transition: all .25s;
  font-size: 12px;
  color: var(--body-text);
  padding: 0 20px;
  height: 36px;
  font-weight: 400;
  border: 0;
  box-sizing: border-box;
  vertical-align: middle
}

@media(min-width:768px) {

  .btn,
  .co-button,
  .co-input-field,
  .input,
  .m-input-field,
  .m-modal-button {
    font-size: 1rem;
    height: 50px
  }
}

.btn.is-disabled,
.btn[disabled],
.co-button.is-disabled,
.co-button[disabled],
.co-input-field.is-disabled,
.co-input-field[disabled],
.input.is-disabled,
.input[disabled],
.m-input-field.is-disabled,
.m-input-field[disabled],
.m-modal-button.is-disabled,
.m-modal-button[disabled] {
  text-shadow: none !important;
  box-shadow: none !important;
  background-color: var(--color-disabled) !important;
  color: #383b46 !important;
  box-shadow: none !important;
  border-color: var(--color-disabled) !important;
  cursor: default !important
}

.co-input-field,
.input,
.m-input-field {
  font-size: inherit;
  background: rgba(0, 0, 0, 0);
  border: 1px solid transparent;
  border-bottom-color: #000;
  transition: all .3s ease;
  border-radius: 0;
  -moz-text-align-last: left;
  text-align-last: left;
  -webkit-appearance: none
}

.co-input-field:not(select):not(.input--border):not(.input--radio):not(.input--check),
.input:not(select):not(.input--border):not(.input--radio):not(.input--check),
.m-input-field:not(select):not(.input--border):not(.input--radio):not(.input--check) {
  padding: 0;
  border-left: 0;
  border-right: 0;
  border-top: 0
}

.co-input-field:active,
.co-input-field:focus,
.co-input-field:hover,
.input:active,
.input:focus,
.input:hover,
.m-input-field:active,
.m-input-field:focus,
.m-input-field:hover {
  border-color: var(--color-secondary)
}

textarea.co-input-field,
textarea.input,
textarea.m-input-field {
  box-sizing: border-box;
  border-bottom-color: #000;
  resize: vertical;
  overflow-y: auto;
  transition: all .3s, height 0s;
  height: 50px;
  padding-top: 12px !important;
  padding-bottom: 6px !important;
  min-height: 50px;
  max-height: 300px
}

select.input {
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: relative;
  z-index: 1;
  border-color: #000;
  padding-left: 20px;
  padding-right: 20px;
  color: #c3c3c3;
  font-size: 14px;
  cursor: pointer;
  padding-right: 3.4375rem;
  background-image: linear-gradient(45deg, transparent 50%, gray 50%), linear-gradient(135deg, gray 50%, transparent 50%);
  background-position: calc(100% - 20px) center, calc(100% - 15px) center, calc(100% - 2.5em) center;
  background-size: 5px 5px, 5px 5px, 1px 70%;
  background-repeat: no-repeat
}

select.input.input--selectbox-lined {
  border-top: 0;
  border-left: 0;
  border-right: 0;
  padding-left: 0;
  padding-right: 24px;
  color: #000;
  font-size: 16px;
  font-weight: 400;
  background-position: calc(100% - 5px) center, 100% center
}

.btn,
.co-button,
.m-modal-button {
  align-items: center;
  justify-content: center;
  display: inline-flex;
  vertical-align: middle;
  padding: 0 14px;
  width: auto;
  text-decoration: none;
  color: #fff;
  background: var(--color-main);
  text-align: center;
  cursor: pointer;
  font-weight: 400;
  text-transform: uppercase
}

@media(min-width:1200px) {

  .btn,
  .co-button,
  .m-modal-button {
    padding: 0 20px;
    min-width: 210px
  }
}

.btn:hover,
.co-button:hover,
.m-modal-button:hover {
  text-decoration: none;
  background: var(--color-black)
}

.btn:active,
.co-button:active,
.m-modal-button:active {
  box-shadow: inset 0 .375rem 1.25rem rgba(0, 0, 0, .1)
}

.ns,
.ns:active,
.ns:focus,
.ns:hover {
  text-shadow: none;
  text-transform: none;
  border-radius: 0;
  height: auto;
  block-size: auto;
  background: 0 0;
  line-height: unset;
  padding: 0;
  border: 0;
  box-shadow: none
}

.btn .btn__loading,
.btn .btn__text {
  opacity: 1;
  transition: opacity .3s
}

.btn .btn__loading {
  opacity: 0;
  visibility: hidden;
  position: absolute
}

@media(min-width:1200px) {
  .btn--minwidth {
    min-width: 345px
  }
}

.btn--link {
  background: rgba(0, 0, 0, 0);
  border: 0;
  color: var(--body-text);
  text-decoration: underline
}

.btn--link:hover {
  background: rgba(0, 0, 0, 0);
  text-decoration: none
}

.btn--secondary {
  color: var(--body-text);
  background: var(--color-secondary)
}

.btn--secondary:hover {
  background: var(--color-main)
}

.btn--secondary:hover {
  color: #fff
}

.btn--bordered {
  border: 1px solid var(--color-main);
  color: var(--color-main);
  background: inherit
}

.btn--bordered:hover {
  border: 1px solid var(--color-main);
  color: #fff;
  background: var(--color-main)
}

.btn--ico::after,
.btn--ico::before {
  font-family: var(--font-icons);
  font-size: 144%
}

.btn--ico::after {
  margin-left: 10px
}

.btn--ico::before {
  margin-right: 10px
}

.btn--ico--cart::before {
  content: ""
}

.btn--ico-whatsapp::before {
  content: ""
}

.btn--ico-telegram::before {
  content: ""
}

.btn.is-loading .btn__text {
  opacity: 0;
  visibility: hidden;
  position: absolute
}

.btn.is-loading .btn__loading {
  width: 30px;
  height: 20px;
  position: relative;
  opacity: 1;
  visibility: visible
}

.btn.is-loading .btn__loading span {
  margin: 1.5px;
  width: 2px;
  height: 8px;
  display: inline-block;
  background-color: #383b46;
  -webkit-animation-duration: .7s;
  animation-duration: .7s;
  -webkit-animation-name: loading;
  animation-name: loading;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear
}

.btn.is-loading .btn__loading span:nth-child(2) {
  -webkit-animation-delay: .1875s;
  animation-delay: .1875s
}

.btn.is-loading .btn__loading span:nth-child(3) {
  -webkit-animation-delay: .375s;
  animation-delay: .375s
}

.btn.is-loading .btn__loading span:nth-child(4) {
  -webkit-animation-delay: .475s;
  animation-delay: .475s
}

.btn--error {
  background: var(--color-error)
}

.btn--error:hover {
  background: var(--color-error-dark)
}

.btn--success {
  background: var(--color-success)
}

.btn--success:hover {
  background: var(--color-success-dark)
}

.btn--warning {
  background: var(--color-warning)
}

.btn--warning:hover {
  background: var(--color-warning-dark)
}

.btn--disabled {
  background: var(--color-disabled)
}

.btn--disabled:hover {
  background: var(--color-disabled-dark)
}

.c_input {
  display: flex;
  align-items: center
}

.c_input:focus-within {
  color: var(---color-success)
}

.c_input .c_input__label {
  cursor: pointer;
  padding-left: 10px;
  color: #5d6168;
  font-size: 14px
}

.c_input .c_input__control {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: rgba(0, 0, 0, 0);
  margin: 0;
  font: inherit;
  color: var(--body-text);
  width: 20px;
  height: 20px;
  min-width: 20px;
  transition: all .3s;
  border: 1px solid #ced0d2;
  display: -ms-grid;
  display: grid;
  cursor: pointer;
  place-content: center
}

.c_input .c_input__control::before {
  content: "";
  opacity: 0;
  -webkit-transform: scale(0);
  transform: scale(0)
}

.c_input .c_input__control.is-selected::before,
.c_input .c_input__control:checked::before {
  -webkit-transform: scale(1);
  transform: scale(1);
  opacity: 1
}

.c_input .c_input__control.is-selected::before,
.c_input .c_input__control:checked::before {
  -webkit-transform: scale(1);
  transform: scale(1);
  opacity: 1
}

.c_input:hover .c_input__control {
  border-color: #5d6168
}

.c_input:hover .c_input__label {
  color: #000
}

.c_input:active,
.c_input:focus {
  border-color: var(--color-main)
}

.c_input--checkbox .c_input__control {
  padding-top: 2px
}

.c_input--checkbox .c_input__control::before {
  color: #000;
  font-family: var(--font-icons);
  content: "";
  font-size: 8px;
  opacity: 0;
  transition: all .3s
}

.c_input--checkbox .c_input__control:checked {
  border-color: #000;
  color: #000
}

.c_input--radiobox .c_input__control {
  width: 22px;
  height: 22px;
  border-width: 2px;
  border-color: var(--color-main);
  border-radius: 50%
}

.c_input--radiobox .c_input__control::before {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  box-shadow: inset 1em 1em #fff
}

.c_input--radiobox .c_input__control:checked {
  background: var(--color-main)
}

.c_input--checkbox-color .c_input__control {
  display: none
}

.c_input--checkbox-color .c_input__control:checked~.link--color {
  border: 1px solid var(--color-main)
}

.c_input--checkbox-color .c_input__label {
  padding-top: 3px
}

.c_input--checkbox-color:hover .link--color {
  border-color: #ccc
}

.c_input--box .c_input__control {
  display: none
}

.c_input--box .c_input__control:checked~.c_input__label {
  background: var(--color-main);
  border-color: var(--color-main);
  color: #fff
}

.c_input--box .c_input__label {
  min-width: 40px;
  text-align: center;
  padding: 4px 10px;
  border: 1px solid #ccc;
  transition: all .3s
}

.c_input--box .c_input__label:hover {
  border-color: var(--color-main)
}

.c_input--checkbox-slide .c_input__control {
  width: 34px;
  height: 20px;
  background: #ede8e6;
  border: 0;
  border-radius: 10px;
  padding: 3px;
  transition: all .3s;
  align-items: center;
  position: relative
}

.c_input--checkbox-slide .c_input__control::before {
  opacity: 1;
  width: 14px;
  -webkit-transform: none;
  transform: none;
  height: 14px;
  background: #fff;
  border-radius: 100%;
  transition: all .5s;
  position: absolute;
  content: "";
  left: 3px;
  top: 3px
}

.c_input--checkbox-slide:hover .c_input__control {
  background: #d6d2d1
}

.c_input--checkbox-slide.is-selected .c_input__control {
  background: #5d6168
}

.c_input--checkbox-slide.is-selected .c_input__control::before {
  left: auto;
  right: 3px
}

.selectBox {
  z-index: 9;
  position: relative;
  border: 0;
  display: inline-block;
  transition: all .3s
}

.selectBox .selectBox__name {
  position: relative;
  transition: all .3s;
  overflow: hidden;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  background: #fff
}

.selectBox .selectBox__name::after {
  transition: all .3s;
  font-family: var(--font-icons);
  content: "";
  font-size: 8px;
  position: absolute;
  right: 20px;
  z-index: 2;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}

.selectBox .selectBox__value {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  position: relative;
  z-index: 2;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 300;
  color: gray;
  border: 1px solid #000;
  height: 50px;
  padding: 16px 40px 16px 20px;
  background: #fff
}

@media(min-width:576px) {
  .selectBox .selectBox__value {
    min-width: 320px
  }
}

.selectBox .selectBox__dd {
  background: #fff;
  opacity: 0;
  z-index: 1;
  visibility: hidden;
  transition: all .3s;
  -webkit-transform: translate(0, -10px);
  transform: translate(0, -10px);
  width: 100%;
  position: absolute;
  width: 100%;
  font-size: 14px;
  left: 0;
  min-width: 270px;
  padding: 15px 20px;
  top: 100%;
  margin-top: -1px;
  border: 1px solid #000
}

.selectBox .selectBox__dd .selectBox__dd_inner {
  max-height: 290px;
  overflow: hidden;
  overflow-y: auto
}

.selectBox .selectBox__dd .selectBox__dd_inner::-webkit-scrollbar {
  width: 6px
}

.selectBox .selectBox__dd .selectBox__dd_inner::-webkit-scrollbar-track {
  background: #eee;
  border-radius: 10px
}

.selectBox .selectBox__dd .selectBox__dd_inner::-webkit-scrollbar-thumb {
  background: silver;
  border-radius: 10px
}

.selectBox .selectBox__dd .selectBox__dd_item {
  padding: 10px 0
}

.selectBox .selectBox__dd .selectBox__link {
  text-decoration: none;
  color: inherit
}

.selectBox--default .selectBox__dd .selectBox__dd_item {
  transition: all .3s
}

.selectBox--default .selectBox__dd .selectBox__dd_item span {
  cursor: pointer
}

.selectBox--default .selectBox__dd .selectBox__dd_item span:hover {
  text-decoration: underline
}

.selectBox--default .selectBox__dd .selectBox__dd_item.is-selected,
.selectBox--default .selectBox__dd .selectBox__dd_item:hover {
  color: var(--color-main)
}

.selectBox--default .selectBox__dd .selectBox__dd_item.is-selected {
  font-weight: 600;
  text-decoration: none
}

.selectBox--right .selectBox__dd {
  left: 0
}

.selectBox--left .selectBox__dd {
  right: 0
}

.selectBox.is-open {
  z-index: 10
}

.selectBox.is-open .selectBox__dd {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
  transition: .4s;
  visibility: visible;
  opacity: 1
}

.selectBox.is-open .selectBox__name:after {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}

.selectBox--base {
  max-width: 15.625rem
}

.selectBox--base .selectBox__option {
  transition: all .3s;
  padding: .375rem 1.25rem;
  cursor: pointer
}

.selectBox--base .selectBox__option.is-selected,
.selectBox--base .selectBox__option:hover {
  background: #f6f6f6;
  color: #000
}

.selectBox--base .selectBox__name {
  max-width: 12.5rem;
  padding: .875rem 2.5rem .875rem 1.25rem;
  border: 1px solid #c4c4c4
}

.selectBox--size .selectBox__dd_inner {
  display: flex;
  flex-wrap: wrap;
  gap: 8px
}

.selectBox--size .selectBox__dd .selectBox__dd_item {
  padding: 0
}

.selectBox.is-counter .selectBox__counter {
  opacity: 1;
  margin-right: 5px;
  margin-left: 0
}

/*! default forms */
.form .form__header {
  margin-bottom: 20px
}

.form .form__header .form__header_title {
  font-weight: 300;
  margin-bottom: 15px
}

@media(min-width:992px) {
  .form .form__header .form__header_title {
    font-size: 18px
  }
}

@media(min-width:992px) {
  .form .form__header .form__header_desc {
    font-size: 18px
  }
}

.form .form__group {
  margin-bottom: 15px;
  position: relative
}

@media(min-width:992px) {
  .form .form__group {
    margin-bottom: var(--layout-gap)
  }
}

.form .form__group .form__group_label {
  margin-bottom: 8px;
  display: block;
  color: gray
}

.form .form__group .form__group_control .input {
  width: 100%
}

.form .form__group .form__group_hints {
  text-align: left
}

.form .form__group .hint__item {
  padding: .5rem 0 0 0;
  font-weight: 300;
  font-size: 12px;
  color: #c6c6c6
}

.form .form__group .hint__item--error {
  -webkit-animation: fadeIn .7s;
  animation: fadeIn .7s;
  display: none
}

.form .form__group--nomargin,
.form .form__group:last-child {
  margin-bottom: 0
}

.form .form__group_cols {
  margin-bottom: var(--layout-gap)
}

@media(min-width:576px) {
  .form .form__group_cols {
    margin: 0 -6px;
    margin-bottom: var(--layout-gap);
    display: flex;
    align-items: flex-start;
    justify-content: space-between
  }

  .form .form__group_cols .form__group {
    padding: 0 6px;
    margin-bottom: 0;
    flex: 1
  }
}

.form .form__group_cols--agree {
  text-align: left;
  flex-direction: column;
  align-items: center;
  padding-top: 20px
}

@media(min-width:1200px) {
  .form .form__group_cols--agree {
    padding-top: 30px
  }
}

.form .form__group_cols--agree .form__group--button {
  order: 1;
  margin-bottom: 30px
}

.form .form__group_cols--agree .form__group--check {
  order: 2
}

.form .form__group_cols--agree .form__group--check .c_input .c_input__control {
  width: 26px;
  height: 26px
}

.form .form__group_cols--agree .form__group--check .c_input .c_input__label {
  font-size: 12px;
  font-weight: 400;
  color: gray
}

.form .form__state--error,
.form .form__state--success {
  -webkit-animation: fadeInDown .3s;
  animation: fadeInDown .3s
}

.form .form__state {
  display: none
}

.form .form__state--default {
  display: block
}

.form.is-form-success .form__state {
  display: none
}

.form.is-form-success .form__state--success {
  display: block
}

.form.is-form-error .form__state {
  display: none
}

.form.is-form-error .form__state--error {
  display: block
}

.form--customsize .form__header {
  text-align: center
}

.form--customsize .form__header .form__header_desc {
  font-size: 16px
}

@media(max-width:575.98px) {
  .form--customsize .form__header .form__header_desc {
    font-weight: 300
  }
}

.form--consultation {
  max-width: 90%;
  margin: 0 auto
}

.form--consultation .form__header_desc {
  font-size: 18px;
  font-weight: 300
}

@media(min-width:768px) {
  .form--consultation .form__content_row:not(.form__content_row--buttons) {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
  }

  .form--consultation .form__content_row:not(.form__content_row--buttons) .form__group--input {
    flex: 0 0 48%
  }

  .form--consultation .form__content_row:not(.form__content_row--buttons) .form__group--textarea {
    padding-top: 15px;
    flex: 0 0 100%
  }
}

.form--appointment-wishlist {
  padding: 0 10px
}

@media(min-width:576px) {
  .form--appointment-wishlist {
    padding: 0 65px
  }
}

.form--appointment-wishlist .form__group {
  margin-bottom: 10px
}

.form--appointment-wishlist .form__group .form__group_label {
  margin-bottom: 0
}

.form--appointment-wishlist .form__group .hint__item {
  padding-top: 3px;
  font-weight: 400
}

.form--appointment-wishlist .form__group--time .hint__item--error {
  display: none !important
}

.form--appointment-wishlist .form__group--check .c_input__label {
  flex: 1
}

.form--appointment-wishlist .form__group--check .c_input__label br {
  display: none
}

.form--appointment-wishlist .form__group--choose-shop {
  margin-bottom: 33px
}

@media(min-width:992px) {
  .form--appointment-wishlist .form__group_cols .form__group {
    flex: 0 0 49%;
    max-width: 49%
  }
}

.form--appointment-wishlist .form__group_cols--agree {
  padding-top: 20px;
  align-items: flex-start
}

.form--appointment-wishlist .form__group_cols--agree .form__group--button {
  margin-bottom: 20px
}

.form--appointment-wishlist .form__group_cols--agree .form__group--button .btn {
  width: 100%
}

.form--appointment-wishlist .form__group_cols--agree .form__group {
  width: 100%;
  max-width: none
}

.form--appointment-wishlist .cols {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between
}

@media(min-width:1200px) {
  .form--appointment-wishlist .cols .cols__col {
    flex: 0 0 30%
  }
}

@media(max-width:1199.98px) {

  .form--appointment-wishlist .cols .cols__col--center,
  .form--appointment-wishlist .cols .cols__col--left {
    flex: 0 0 45%
  }

  .form--appointment-wishlist .cols .cols__col--right {
    flex: 0 0 100%
  }
}

@media(max-width:991.98px) {

  .form--appointment-wishlist .cols .cols__col--center,
  .form--appointment-wishlist .cols .cols__col--left {
    flex: 0 0 100%
  }

  .form--appointment-wishlist .cols .cols__col--center {
    margin-bottom: 25px
  }

  .form--appointment-wishlist .cols .cols__col .form__group_cols {
    margin-bottom: 10px;
    display: block
  }

  .form--appointment-wishlist .cols .cols__col .form__group_cols .form__group:not(:last-child) {
    margin-bottom: 20px
  }
}

.form--promocode .is-error .form__group_control--input::after,
.form--promocode .is-success .form__group_control--input::after {
  right: 12px
}

.form--promocode .is-error .form__group_control--btn,
.form--promocode .is-success .form__group_control--btn {
  display: none
}

.form--appointment .form__group {
  margin-bottom: 20px
}

@media(min-width:576px) {
  .form--appointment .form__group {
    margin-bottom: 10px
  }
}

.form--appointment .form__group--check {
  margin-bottom: 0
}

@media(max-width:575.98px) {
  .form--appointment .form__header {
    margin-bottom: 6dvh
  }
}

.form--appointment .form__header .form__header_desc {
  font-weight: 300
}

.form--appointment .form__header .form__header_desc p {
  margin-bottom: 0
}

@media(max-width:767.98px) {
  .form--appointment .form__header .form__header_desc p:first-child {
    font-weight: 400
  }

  .form--appointment .form__header .form__header_desc p+p {
    font-size: 12px
  }
}

@media(min-width:576px) {
  .form--appointment .form__header .form__header_desc p br {
    display: none
  }
}

@media(min-width:576px) {
  .form--appointment .form__content {
    max-width: 310px;
    width: 100%;
    margin: 0 auto
  }
}

@media(max-width:575.98px) {
  .form--appointment .form__content {
    flex: 1
  }

  .form--appointment .form__content form {
    height: 100%
  }

  .form--appointment .form__content .form__content_row--buttons,
  .form--appointment .form__content .form__group_cols,
  .form--appointment .form__content form {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-around
  }

  .form--appointment .form__content .btn {
    height: 50px;
    width: 100%;
    font-size: 14px
  }

  .form--appointment .form__content .form__group_cols--agree .form__group--button {
    width: 100%
  }

  .form--appointment .form__content .form__group--check {
    padding-bottom: 10px
  }
}

.form.is-form-success .form__state--default {
  display: none
}

.form.is-form-success .form__state--success {
  display: block
}

.is-active .input,
.is-active.input {
  border-color: var(--color-main)
}

.is-error .form__group_control--input,
.is-success .form__group_control--input {
  position: relative
}

.is-error .form__group_control--input .input,
.is-success .form__group_control--input .input {
  padding-right: 24px !important
}

.is-error .form__group_control--input select.input,
.is-success .form__group_control--input select.input {
  background: 0 0 !important
}

.is-error .form__group_control--input::after,
.is-success .form__group_control--input::after {
  font-family: var(--font-icons);
  content: "";
  position: absolute;
  top: 50%;
  font-size: 20px;
  font-weight: 400;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  color: red;
  right: 0
}

.is-error .input,
.is-error.input {
  border-color: red !important
}

.is-error .input::-webkit-input-placeholder,
.is-error.input::-webkit-input-placeholder {
  color: red !important
}

.is-error .input::-moz-placeholder,
.is-error.input::-moz-placeholder {
  color: red !important
}

.is-error .input:-ms-input-placeholder,
.is-error.input:-ms-input-placeholder {
  color: red !important
}

.is-error .input::-ms-input-placeholder,
.is-error.input::-ms-input-placeholder {
  color: red !important
}

.is-error .input::placeholder,
.is-error.input::placeholder {
  color: red !important
}

.is-error .c_input--check::before {
  color: red !important
}

.is-error .c_input__control {
  border-color: red !important
}

.is-error .c_input__control::before {
  color: red !important
}

.is-error .c_input--radio::before {
  box-shadow: inset 1em 1em red
}

.is-error .form__group_label {
  color: red !important
}

.is-error .hint__item--default {
  color: red !important
}

.is-error .selectBox.is-not-selected .selectBox__value {
  border-color: red !important;
  color: red !important
}

.is-error .selectBox.is-not-selected .selectBox__name::after {
  color: red !important
}

.is-error .hint__item--default {
  display: none
}

.is-error .hint__item--error {
  color: red !important;
  display: block !important
}

.is-success .input,
.is-success.input {
  border-color: #31c919 !important
}

.is-success .input::-webkit-input-placeholder,
.is-success.input::-webkit-input-placeholder {
  color: #31c919 !important
}

.is-success .input::-moz-placeholder,
.is-success.input::-moz-placeholder {
  color: #31c919 !important
}

.is-success .input:-ms-input-placeholder,
.is-success.input:-ms-input-placeholder {
  color: #31c919 !important
}

.is-success .input::-ms-input-placeholder,
.is-success.input::-ms-input-placeholder {
  color: #31c919 !important
}

.is-success .input::placeholder,
.is-success.input::placeholder {
  color: #31c919 !important
}

.is-success .c_input--check::before {
  color: #31c919 !important
}

.is-success .c_input__control {
  border-color: #31c919 !important
}

.is-success .c_input__control::before {
  color: #31c919 !important
}

.is-success .c_input--radio::before {
  box-shadow: inset 1em 1em #31c919
}

.is-success .form__group_label {
  color: #31c919 !important
}

.is-success .hint__item--default {
  color: #31c919 !important
}

.is-success .selectBox.is-not-selected .selectBox__value {
  border-color: #31c919 !important;
  color: #31c919 !important
}

.is-success .selectBox.is-not-selected .selectBox__name::after {
  color: #31c919 !important
}

.is-success .form__group_control--input::after {
  color: #31c919;
  content: ""
}

.is-success .hint__item--default {
  display: block;
  color: #31c919
}

.is-disabled .input,
.is-disabled.input {
  border-color: #f2f2f2 !important
}

.is-disabled .input::-webkit-input-placeholder,
.is-disabled.input::-webkit-input-placeholder {
  color: #f2f2f2 !important
}

.is-disabled .input::-moz-placeholder,
.is-disabled.input::-moz-placeholder {
  color: #f2f2f2 !important
}

.is-disabled .input:-ms-input-placeholder,
.is-disabled.input:-ms-input-placeholder {
  color: #f2f2f2 !important
}

.is-disabled .input::-ms-input-placeholder,
.is-disabled.input::-ms-input-placeholder {
  color: #f2f2f2 !important
}

.is-disabled .input::placeholder,
.is-disabled.input::placeholder {
  color: #f2f2f2 !important
}

.is-disabled .c_input--check::before {
  color: #f2f2f2 !important
}

.is-disabled .c_input__control {
  border-color: #f2f2f2 !important
}

.is-disabled .c_input__control::before {
  color: #f2f2f2 !important
}

.is-disabled .c_input--radio::before {
  box-shadow: inset 1em 1em #f2f2f2
}

.is-disabled .form__group_label {
  color: #f2f2f2 !important
}

.is-disabled .hint__item--default {
  color: #f2f2f2 !important
}

.is-disabled .selectBox.is-not-selected .selectBox__value {
  border-color: #f2f2f2 !important;
  color: #f2f2f2 !important
}

.is-disabled .selectBox.is-not-selected .selectBox__name::after {
  color: #f2f2f2 !important
}

.is-disabled select.input {
  background: var(--color-disabled) !important
}

.size--sm {
  font-size: 14px;
  height: 36px
}

.size--md {
  height: 36px
}

@media(min-width:768px) {
  .size--md {
    font-size: inherit;
    height: 50px
  }
}

@media(min-width:992px) {
  .size--lg {
    padding: 0 clamp(.8rem, 1.25vw, 1.25rem);
    height: 70px
  }

  .size--xl,
  .size--xxl {
    font-size: 20px;
    padding: 0 clamp(1.5rem, 2.2vw, 2.5rem);
    height: 80px
  }

  .size--xxl {
    height: 90px
  }
}

/*!
------------------------------------------
HELPERS
------------------------------------------
*/
/*! lazysizes */
.lazyload,
.lazyloading {
  opacity: 0
}

.lazyloaded {
  opacity: 1;
  transition: opacity .3s
}

.lazyloading {
  max-width: 60px;
  max-height: 60px;
  display: inline-block;
  opacity: 1;
  transition: opacity .3s
}

img.lazyload:not([src]) {
  visibility: hidden
}

/*! alert */
.alert {
  padding: 1.5625rem 2.1875rem;
  margin-bottom: var(--editor-margin);
  background-color: rgba(0, 0, 0, 0);
  text-transform: none
}

.alert--empty {
  background-color: #fff;
  color: #7f7f7f;
  font-weight: 400
}

.alert--error {
  background-color: red;
  color: #fff
}

.alert--warning {
  background-color: #fbf2c3;
  color: #b2990d
}

.alert--success {
  background-color: #f0fdee;
  color: #31c919
}

.alert--color-main {
  background-color: #01371f;
  color: #fff
}

.alert--color-secondary {
  background-color: #e8c38e
}

.alert--center {
  text-align: center
}

.alert a {
  color: inherit
}

/*! ratio blocks default  */
.ratio {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden
}

.ratio::before {
  display: block;
  content: ""
}

.ratio .ratio__item,
.ratio embed,
.ratio iframe,
.ratio object,
.ratio video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0
}

.ratio .ratio__item--contain img,
.ratio .ratio__item--cover img {
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
  width: 100%;
  height: 100%
}

.ratio .ratio__item--cover img {
  -o-object-fit: cover;
  object-fit: cover
}

.ratio--21by9::before {
  padding-top: 42.857143%
}

.ratio--16by9::before {
  padding-top: 56.25%
}

.ratio--4by3::before {
  padding-top: 75%
}

.ratio--1by1::before {
  padding-top: 100%
}

.ratio--services::before {
  padding-top: 160%
}

@media(min-width:768px) {
  .ratio--services::before {
    padding-top: 136%
  }
}

.ratio--catalog::before {
  padding-top: 125%
}

/*! default links */
.link {
  cursor: pointer;
  display: inline-flex;
  transition: all .3s
}

.link:hover {
  color: var(--color-main)
}

.link--border,
.link--border-dashed {
  color: #5d6168
}

.link--border-dashed.link--ico span,
.link--border-dashed:not(.link--ico),
.link--border.link--ico span,
.link--border:not(.link--ico) {
  border-bottom: 1px solid #5d6168;
  padding-bottom: 2px;
  display: inline-block;
  transition: all .3s
}

.link--border-dashed.link--ico span:hover,
.link--border-dashed:not(.link--ico):hover,
.link--border.link--ico span:hover,
.link--border:not(.link--ico):hover {
  color: var(--body-text);
  border-color: inherit;
  border-bottom-style: solid
}

.link--border-dashed {
  border-bottom-style: dashed !important
}

.link--remove::before {
  content: "";
  font-size: 20px
}

.link--ico {
  display: inline-flex;
  align-items: center;
  text-decoration: none
}

.link--ico::after,
.link--ico::before {
  font-family: var(--font-icons)
}

.link--ico::before {
  margin-right: 12px
}

.link--ico::after {
  margin-left: 12px
}

.link--ico-phone {
  display: inline-flex;
  align-items: center;
  font-weight: 500
}

.link--ico-phone::before {
  font-weight: 400;
  content: "";
  font-size: 20px
}

.link--wishlist {
  font-size: 20px
}

.link--wishlist::before {
  content: ""
}

.link--wishlist.favorites-added::before {
  color: #b3b3b3;
  content: ""
}

.link--shops::before {
  content: ""
}

.link--filter {
  text-transform: uppercase;
  font-size: 14px
}

.link--filter::before {
  content: "";
  font-size: 16px
}

.link--arrow-angle::after {
  content: "";
  font-size: 40%;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  margin-top: 4px
}

.link--arrow-back,
.link--arrow-next {
  font-size: 14px
}

.link--arrow-back::after,
.link--arrow-next::after {
  content: "";
  font-size: 40%;
  padding-top: 4px
}

.link--arrow-back::after {
  content: unset
}

.link--arrow-back::before {
  content: "";
  font-size: 60%;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}

.link--certificate {
  text-decoration: none
}

.link--certificate::before {
  content: "";
  font-size: 32px;
  color: var(--color-main)
}

.link--certificate span {
  text-decoration: underline;
  text-underline-offset: 3px
}

.link--certificate:hover span {
  text-decoration: none
}

.link--metro:not(a) {
  cursor: default
}

.link--metro:not(a):hover {
  color: var(--body-text)
}

.link--metro::before {
  content: "";
  font-size: 38px;
  color: #d9a81f
}

.link--more {
  text-decoration: underline;
  text-underline-offset: 4px
}

.link--more:hover {
  text-decoration: none
}

/*! default accordeons */
.acc .acc__item {
  font-size: 18px;
  padding: 32px 0 32px 0;
  font-weight: 400;
  border-bottom: 1px solid #ede8e6
}

.acc .acc__item .acc__item_header {
  cursor: pointer;
  position: relative;
  padding-right: 20px
}

.acc .acc__item .acc__item_header::after {
  font-family: var(--font-icons);
  content: "+";
  font-size: 26px;
  font-weight: 500;
  position: absolute;
  right: 3px;
  top: 0;
  line-height: 18px;
  transition: all .3s
}

.acc .acc__item .acc__item_content {
  height: 0;
  opacity: 0;
  overflow: hidden;
  transition: all .2s linear;
  text-transform: none
}

.acc .acc__item.is-open .acc__item_header::after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

.acc .acc__item.is-open .acc__item_content {
  height: auto;
  opacity: 1;
  padding-top: 32px
}

/*! default badges */
.badges {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none
}

.badges .badges__item {
  flex: auto;
  display: inline-flex;
  align-items: center;
  color: #4d4d4d;
  text-transform: uppercase;
  font-weight: 300
}

.badges .badges__item+.badges .badges__item {
  margin-bottom: 2px
}

/*! default prices */
.prices {
  display: flex
}

.price {
  display: inline-flex;
  align-items: center;
  vertical-align: baseline;
  line-height: normal
}

.price+.price {
  margin-left: 20px
}

.price::after {
  font-family: var(--font-icons);
  content: "";
  font-size: 70%;
  margin-left: 8px
}

.price--default {
  font-weight: 600
}

.price--old {
  text-decoration: line-through;
  color: var(--color-main)
}

.price--rub::before {
  font-family: var(--font-icons);
  content: "";
  margin-right: 10px
}

/*! default social */
.social {
  display: flex;
  flex-wrap: wrap
}

.social .social__item:not(:first-child) {
  margin-left: 18px
}

.social .social__item_link {
  font-size: 16px;
  text-decoration: none;
  transition: all .3s;
  color: var(--body-text);
  color: var(--color-secondary)
}

.social .social__item_link:hover {
  color: #fff;
  text-decoration: none !important
}

.social .social__item_link::before {
  margin: 0
}

/*! messangers */
.messangers {
  display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 5px 20px
}

/*! carousels */
.r_carousel {
  position: relative
}

.r_carousel,
.r_carousel .swiper-slide {
  border-radius: 20px;
  overflow: hidden
}

.r_carousel .swiper-slide img,
.r_carousel img {
  width: 100%
}

/*! mb styles */
.mb-1 {
  margin-bottom: 10px
}

.mb-2 {
  margin-bottom: 20px
}

.mb-3 {
  margin-bottom: 30px
}

.mb-4 {
  margin-bottom: 40px
}

/*! font weight */
.fw-100 {
  font-weight: 100
}

.fw-300 {
  font-weight: 300
}

.fw-400 {
  font-weight: 400
}

.fw-500 {
  font-weight: 500
}

.fw-600 {
  font-weight: 600
}

.fw-700 {
  font-weight: 700
}

.fw-900 {
  font-weight: 900
}

/*! font weight */
.fs-12 {
  font-size: 12px
}

.fs-14 {
  font-size: 14px
}

.fs-16 {
  font-size: 16px
}

.fs-18 {
  font-size: 18px
}

.fs-20 {
  font-size: 20px
}

.fs-22 {
  font-size: 22px
}

.fs-24 {
  font-size: 24px
}

/*! theme colors */
.color-main {
  color: var(--color-main)
}

.color-secondary {
  color: var(--color-secondary)
}

.color-success {
  color: var(--color-success)
}

.color-warning {
  color: var(--color-warning)
}

.color-error {
  color: var(--color-error)
}

.color-disabled {
  color: var(--color-disabled)
}

.text-sm {
  color: #8c8c8c;
  font-size: 14px
}

.text-a-center {
  text-align: center
}

.text-underline {
  text-decoration: underline
}

.text-uppercase {
  -webkit-text-decoration: uppercase;
  text-decoration: uppercase
}

.text-dashed {
  padding-left: 35px;
  position: relative
}

.text-dashed::before {
  content: "";
  width: 20px;
  height: 1px;
  background: var(--body-text);
  position: absolute;
  left: 0;
  top: 50%
}

.text-small {
  font-size: .75rem
}

.font-default {
  font-family: var(--font-main)
}

.font-secondary {
  font-family: var(--font-secondary)
}

/*! default stars */
.rating__wrap {
  display: flex;
  align-items: center;
  flex-wrap: wrap
}

.rating__wrap .rating {
  display: inline-flex;
  margin-right: 20px
}

.rating__wrap .rating i {
  font-style: normal;
  margin-right: 4px;
  font-size: 20px
}

.rating__wrap .rating i::before {
  font-family: var(--font-icons);
  content: ""
}

.rating__wrap .rating i.is-selected::before {
  color: #5d6168;
  content: ""
}

.rating__wrap .rating i:last-child {
  margin-right: 0
}

.rating__wrap .rating__count {
  font-size: 14px
}

/*! default pagination */
.pagination__wrapper {
  text-align: center
}

.pagination__wrapper .btn {
  width: 100%;
  max-width: 300px;
  margin-bottom: 20px
}

.pagination {
  font-weight: 300;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  font-size: 14px
}

@media(min-width:576px) {
  .pagination {
    font-size: inherit
  }

  .pagination.is-align-right {
    justify-content: flex-end
  }

  .pagination.is-align-left {
    justify-content: flex-start
  }

  .pagination.is-align-center {
    justify-content: center
  }
}

.pagination .pagination__item {
  margin: 0 5px
}

.pagination .pagination__item .pagination__item_link {
  color: #acacac;
  transition: all .2s;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none
}

.pagination .pagination__item .pagination__item_link.is-selected,
.pagination .pagination__item .pagination__item_link:hover {
  color: var(--body-text)
}

.pagination .pagination__item--next {
  margin-left: 6px
}

.pagination .pagination__item--prev {
  margin-right: 6px;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}

.pagination .pagination__item--next .pagination__item_link,
.pagination .pagination__item--prev .pagination__item_link {
  font-size: 6px;
  border: 0
}

.pagination .pagination__item--next .pagination__item_link::before,
.pagination .pagination__item--prev .pagination__item_link::before {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  font-family: var(--font-icons);
  content: ""
}

/*! 
minigrid cols
NOTE: to activate full bootstrap grid change variable "$use-columns" to "true" in "__settings.scss".
*/
.r_cols {
  display: -ms-grid;
  display: grid;
  gap: 30px;
  margin-bottom: var(--editor-margin)
}

@media(min-width:1200px) {
  .r_cols--2 {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr)
  }

  .r_cols--3 {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr)
  }

  .r_cols--4 {
    -ms-grid-columns: (1fr)[4];
    grid-template-columns: repeat(4, 1fr)
  }
}

/*! sticky */
@media(min-width:1200px) {
  .is-sticky {
    position: relative
  }

  .is-sticky>* {
    position: sticky;
    position: -webkit-sticky;
    top: 74px
  }
}

.ui-slider {
  background: #bdbdbd;
  height: 3px;
  width: 100%;
  position: relative
}

.ui-slider .ui-slider-handle,
.ui-slider .ui-slider-handle:focus,
.ui-slider .ui-slider-handle:hover {
  width: 18px;
  height: 18px;
  border-radius: 18px;
  outline: 0;
  display: block;
  position: absolute;
  top: -8px;
  margin-left: -6px;
  background: var(--color-main)
}

.ui-slider .ui-slider-handle:focus {
  outline: 0
}

.ui-slider .ui-slider-range {
  position: absolute;
  top: 0;
  height: 2px;
  background: var(--color-main)
}

.ui-slider .ui-slider-range .ui-amount-left,
.ui-slider .ui-slider-range .ui-amount-right {
  text-align: center;
  bottom: -33px;
  position: absolute;
  z-index: 3;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  width: 56px
}

.ui-slider .ui-slider-range .ui-amount-left {
  left: -28px
}

.ui-slider .ui-slider-range .ui-amount-right {
  right: -28px
}

.range {
  padding: 20px 12px 0 12px
}

.range .range__slider {
  margin-bottom: 25px
}

.range .range__value {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 -12px;
  font-size: 18px
}

@media(min-width:1900px) {
  .range .range__value {
    font-size: 24px
  }
}

.range .range__value .price--default {
  font-weight: 400;
  font-size: inherit
}

@media(min-width:1900px) {
  .range .range__value .price--default {
    font-size: inherit
  }
}

.js-morecrop p:not(:first-child) {
  display: none
}

.js-morecrop.is-open p,
.js-morecrop[data-crop="2"] p:nth-child(-n+2),
.js-morecrop[data-crop="3"] p:nth-child(-n+3),
.js-morecrop[data-crop="4"] p:nth-child(-n+4),
.js-morecrop[data-crop="5"] p:nth-child(-n+5) {
  display: block
}

.js-morecrop .link--more {
  margin-left: 8px;
  font-weight: 500;
  display: inline-block
}

.js-morecrop.is-open .link--more {
  display: none
}

.r_imageBg {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  left: 0;
  bottom: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center
}

.r_imageBg img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center
}

.r_imageBg img:not(.lazyloading) {
  width: 100%;
  height: 100%;
  position: absolute
}

.r_toolbox {
  width: 54px;
  height: 54px;
  color: #fff;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  bottom: 15px;
  right: 15px;
  background: var(--color-main);
  z-index: 900;
  cursor: pointer;
  transition: opacity .3s
}

.r_toolbox::before {
  font-family: var(--font-icons);
  content: "";
  font-size: 26px
}

.r_toolbox:hover {
  background: var(--body-text)
}

.is-custom-scrollbar {
  -webkit-overflow-scrolling: touch
}

.is-custom-scrollbar::-webkit-scrollbar {
  width: 6px
}

.is-custom-scrollbar::-webkit-scrollbar-track {
  background: #eee
}

.is-custom-scrollbar::-webkit-scrollbar-thumb {
  background: silver
}

.header {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  width: 100%;
  z-index: 902;
  color: var(--body-text);
  transition: background .2s;
  background: #fff
}

.header a {
  color: var(--body-text);
  text-decoration: none
}

.header a.is-selected,
.header a:hover {
  color: var(--color-main)
}

.header .link--ico-phone {
  border: 0
}

.header .container {
  display: flex;
  justify-content: space-between;
  align-items: center
}

.header .logo {
  transition: all .3s
}

.header .logo::before {
  font-family: var(--font-icons);
  content: "";
  font-size: 42px
}

@media(min-width:1200px) {
  .header .logo::before {
    font-size: 68px
  }
}

.header .header__col--nav {
  display: none;
  flex: 0 0 20%
}

@media(max-width:1399.98px) {
  .header .header__col--nav {
    display: block
  }
}

.header .mobile__nav {
  position: relative;
  width: 18px;
  height: 12px;
  cursor: pointer
}

.header .mobile__nav .mobile__nav_icon {
  transition-duration: .5s;
  position: absolute;
  top: 6px;
  left: 0;
  height: 1px;
  width: 18px;
  background-color: #212121
}

.header .mobile__nav .mobile__nav_icon::before {
  transition-duration: .5s;
  position: absolute;
  width: 18px;
  height: 1px;
  background-color: #212121;
  content: "";
  top: -6px
}

.header .mobile__nav .mobile__nav_icon::after {
  transition-duration: .5s;
  position: absolute;
  width: 18px;
  height: 1px;
  background-color: #212121;
  content: "";
  top: 6px
}

.header .userbar {
  display: flex;
  align-items: center;
  justify-content: flex-end
}

@media(min-width:1200px) {
  .header .userbar {
    min-width: 136px
  }
}

.header .userbar .userbar__item {
  position: relative;
  display: block;
  cursor: pointer;
  transition: all .3s;
  padding-right: 8px;
  margin-left: 12px
}

@media(min-width:768px) {
  .header .userbar .userbar__item {
    margin-left: 30px
  }
}

.header .userbar .userbar__item .userbar__item_icon::before {
  margin: 0;
  font-size: 20px
}

.header .userbar .userbar__item .userbar__item_badge {
  width: 16px;
  height: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  line-height: 12px;
  font-weight: 400;
  color: #fff;
  background: var(--color-main);
  border-radius: 100%;
  position: absolute;
  right: 0;
  top: -6px;
  opacity: 0
}

.header .userbar .userbar__item:hover {
  color: var(--color-main)
}

.header .userbar .userbar__item:hover .userbar__item_icon {
  opacity: .7
}

.header .userbar .userbar__item--search {
  margin-left: 0
}

.header .userbar .userbar__item.is-selected .userbar__item_badge {
  opacity: 1
}

.header .header__row--middle {
  padding: 8px 0;
  position: relative;
  z-index: 2;
  height: 62px
}

@media(min-width:1200px) {
  .header .header__row--middle {
    padding-top: 13px;
    padding-bottom: 13px;
    height: 100px
  }
}

.header .header__row--bottom {
  display: none
}

@media(min-width:1400px) {
  .header .header__row--bottom {
    display: block;
    transition: all .3s;
    position: relative;
    z-index: 1;
    padding-top: 20px;
    padding-bottom: 20px
  }
}

.header .header__col--logo {
  flex: 1;
  text-align: center;
  padding: 0 10px;
  transition: all .3s
}

.header .header__col--phone {
  flex: 0 0 20%
}

@media(max-width:1399.98px) {
  .header .header__col--phone {
    display: none
  }
}

.header .header__col--userbar {
  flex: 0 0 20%;
  text-align: right
}

@media(max-width:575.98px) {

  .header .header__col--userbar .userbar__item--user,
  .header .header__col--userbar .userbar__item--wishlist {
    display: none
  }
}

.header .header__col--mobileNav {
  display: none
}

@media(min-width:400px) {
  .header .header__col--mobileNav {
    flex: 0 0 20%
  }
}

@media(max-width:1199.98px) {
  .header .header__col--mobileNav {
    display: block
  }
}

.header .c_slide--header-menu {
  width: 100%
}

.js-show-mainmenu .header .mobile__nav_icon {
  transition-duration: .5s;
  background: rgba(0, 0, 0, 0)
}

.js-show-mainmenu .header .mobile__nav_icon::before {
  -webkit-transform: rotateZ(45deg);
  transform: rotateZ(45deg);
  top: 0
}

.js-show-mainmenu .header .mobile__nav_icon::after {
  -webkit-transform: rotateZ(-45deg);
  transform: rotateZ(-45deg);
  top: 0
}

.index__page .header {
  background: rgba(0, 0, 0, 0)
}

.index__page.js-show-mainmenu .header {
  background: #fff
}

.index__page:not(.is-fixed-header):not(.js-show-mainmenu) .header {
  color: #fff
}

.index__page:not(.is-fixed-header):not(.js-show-mainmenu) .header .link--ico-phone,
.index__page:not(.is-fixed-header):not(.js-show-mainmenu) .header .logo {
  color: #fff
}

.index__page:not(.is-fixed-header):not(.js-show-mainmenu) .header .link--ico-phone:hover,
.index__page:not(.is-fixed-header):not(.js-show-mainmenu) .header .logo:hover {
  opacity: .7
}

.index__page:not(.is-fixed-header):not(.js-show-mainmenu) .header .userbar .userbar__item {
  color: #fff
}

.index__page:not(.is-fixed-header):not(.js-show-mainmenu) .header .mainMenu .mainMenu__item .mainMenu__item_link {
  color: #fff
}

.index__page:not(.is-fixed-header):not(.js-show-mainmenu) .header .mainMenu .mainMenu__item .mainMenu__item_link:hover {
  color: #fff
}

.index__page:not(.is-fixed-header):not(.js-show-mainmenu) .header .mobile__nav .mobile__nav_icon,
.index__page:not(.is-fixed-header):not(.js-show-mainmenu) .header .mobile__nav .mobile__nav_icon::after,
.index__page:not(.is-fixed-header):not(.js-show-mainmenu) .header .mobile__nav .mobile__nav_icon::before {
  background: #fff
}

.is-fixed-header .header {
  box-shadow: 0 0 10px rgba(0, 0, 0, .1);
  background: #fff
}

.is-fixed-header .header .header__col--phone {
  display: none
}

.is-fixed-header .header .header__col--nav {
  display: block
}

@media(min-width:1400px) {
  .is-fixed-header .header .header__row--bottom {
    opacity: 0;
    z-index: 1;
    margin-top: -31px;
    padding: 0
  }
}

@media(min-width:1400px) {
  .header .mainMenu {
    display: flex;
    flex-wrap: wrap;
    font-weight: 500;
    width: 100%;
    text-transform: uppercase;
    justify-content: center
  }

  .header .mainMenu .mainMenu__item {
    position: relative;
    margin: 5px 11px
  }

  .header .mainMenu .mainMenu__item .mainMenu__item_link {
    color: inherit;
    text-decoration: none;
    transition: color .3s;
    border-bottom: 2px solid transparent;
    transition: all .3s
  }

  .header .mainMenu .mainMenu__item .mainMenu__item_link.is-selected,
  .header .mainMenu .mainMenu__item .mainMenu__item_link:hover {
    border-bottom-color: inherit
  }

  .header .mainMenu .mainMenu__item.is-dd {
    position: relative
  }

  .header .mainMenu .mainMenu__item.is-dd .mainMenu__item_link {
    position: relative
  }

  .header .mainMenu .mainMenu__item.is-dd .mainMenu__item_link:hover::after {
    content: "";
    height: 32px;
    left: 0;
    top: 1.25rem;
    background: rgba(0, 0, 0, 0);
    position: absolute;
    width: 100%
  }

  .header .mainMenu .mainMenu__item .nav {
    font-size: 18px;
    width: 280px;
    font-weight: 300;
    position: absolute;
    transition-property: all;
    transition-duration: .25s, 0s;
    transition-delay: 0s, .25s;
    opacity: 0;
    visibility: hidden;
    left: -25px;
    top: 200%;
    background: #fff;
    padding: 25px;
    box-shadow: 0 5px 5px rgba(0, 0, 0, .1);
    text-transform: none
  }

  .header .mainMenu .mainMenu__item .nav .nav__item {
    margin: 0;
    position: relative
  }

  .header .mainMenu .mainMenu__item .nav .nav__item:not(:last-child) {
    margin-bottom: 1.1rem
  }

  .header .mainMenu .mainMenu__item .nav .nav__item .nav__item_link.is-selected,
  .header .mainMenu .mainMenu__item .nav .nav__item .nav__item_link:hover {
    text-decoration: underline;
    text-underline-offset: 4px;
    text-decoration-thickness: 1px
  }

  .header .mainMenu .mainMenu__item .nav .nav__item.is-dd>.nav__item_link {
    display: block;
    padding-right: 20px
  }

  .header .mainMenu .mainMenu__item .nav .nav__item.is-dd>.nav__item_link::after {
    font-family: var(--font-icons);
    content: "";
    z-index: 1;
    right: -5px;
    top: 50%;
    font-size: 6px;
    -webkit-transform: translate(0, -50%) rotate(90deg);
    transform: translate(0, -50%) rotate(90deg);
    background: rgba(0, 0, 0, 0);
    position: absolute
  }

  .header .mainMenu .mainMenu__item.is-mm {
    position: unset
  }

  .header .mainMenu .mainMenu__item .nav--level-2 {
    z-index: 9;
    left: 100%;
    top: -20px
  }

  .is-no-touchdevice .header .mainMenu .nav--level-1 .nav__item.is-dd:hover .nav--level-2 {
    opacity: 1;
    visibility: visible;
    left: 95%
  }

  .is-touchdevice .header .mainMenu .nav--level-1 .nav__item.is-open .nav--level-2 {
    opacity: 1;
    visibility: visible;
    left: calc(100% + 1.875rem)
  }

  .js-menu-hover.is-no-touchdevice .header .mainMenu .mainMenu__item:hover .nav--level-1 {
    top: 200%;
    opacity: 1;
    visibility: visible
  }

  .js-menu-hover.is-touchdevice .header .mainMenu .mainMenu__item.is-open .nav--level-1 {
    top: 200%;
    opacity: 1;
    visibility: visible
  }

  .js-menu-hover.index__page .layer {
    opacity: 1;
    visibility: visible
  }
}

/*! MENU 1199 and down (only touch) */
.c_slide--header-menu .nav__wrapper--catalog {
  background: #fff
}

.c_slide--header-menu .nav__wrapper--catalog a {
  color: var(--body-text)
}

.c_slide--header-menu .nav__wrapper--static {
  display: block
}

.c_slide--header-menu .mainMenu {
  text-transform: uppercase;
  font-size: 15px;
  font-weight: 300;
  padding: 10px 0
}

@media(min-width:576px) {
  .c_slide--header-menu .mainMenu {
    padding-top: 14px;
    padding-bottom: 14px
  }
}

.c_slide--header-menu .mainMenu .mainMenu__item_link,
.c_slide--header-menu .mainMenu .nav__item_link {
  display: block;
  text-decoration: none;
  padding: 15px 40px 15px 15px
}

@media(min-width:576px) {

  .c_slide--header-menu .mainMenu .mainMenu__item_link,
  .c_slide--header-menu .mainMenu .nav__item_link {
    padding-right: 40px;
    padding-left: 20px
  }
}

.c_slide--header-menu .mainMenu .mainMenu__item_link.is-selected,
.c_slide--header-menu .mainMenu .nav__item_link.is-selected {
  text-decoration: underline;
  text-underline-offset: 3px;
  color: var(--color-main)
}

.c_slide--header-menu .mainMenu .is-dd>.mainMenu__item_link,
.c_slide--header-menu .mainMenu .is-dd>.nav__item_link {
  position: relative;
  display: block;
  padding-right: 40px
}

.c_slide--header-menu .mainMenu .is-dd>.mainMenu__item_link::before,
.c_slide--header-menu .mainMenu .is-dd>.nav__item_link::before {
  font-size: 6px;
  font-family: var(--font-icons);
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  -webkit-transform: translate(0, -50%) rotate(90deg);
  transform: translate(0, -50%) rotate(90deg)
}

.c_slide--header-menu .mainMenu .nav--level-1,
.c_slide--header-menu .mainMenu .nav--level-2,
.c_slide--header-menu .mainMenu .nav--megamenu {
  display: none;
  -webkit-animation: fadeInLeft .3s;
  animation: fadeInLeft .3s
}

.c_slide--header-menu .mainMenu .mainMenu__item.is-open .nav .nav__item.is-dd.is-open>.nav__item_link {
  color: inherit
}

.c_slide--header-menu .mainMenu .mainMenu__item.is-open .nav--level-1,
.c_slide--header-menu .mainMenu .mainMenu__item.is-open .nav--megamenu {
  margin-top: -10px;
  display: block
}

@media(min-width:576px) {

  .c_slide--header-menu .mainMenu .mainMenu__item.is-open .nav--level-1,
  .c_slide--header-menu .mainMenu .mainMenu__item.is-open .nav--megamenu {
    margin-top: -14px
  }
}

.is-menu-show-1 .c_slide--header-menu .nav__wrapper+.nav__wrapper .mainMenu,
.is-menu-show-2 .c_slide--header-menu .nav__wrapper+.nav__wrapper .mainMenu {
  margin-top: -28px
}

.is-menu-show-1 .c_slide--header-menu .c_slide__inner .c_slide__content,
.is-menu-show-2 .c_slide--header-menu .c_slide__inner .c_slide__content {
  height: 100vh
}

.is-menu-show-1 .c_slide--header-menu .nav--level-1 {
  padding: 20px 0
}

.is-menu-show-1 .c_slide--header-menu .nav__wrapper--catalog {
  background: 0 0
}

.is-menu-show-1 .c_slide--header-menu .mainMenu .mainMenu__item:not(.is-open) {
  display: none;
  -webkit-animation: fadeInLeft .3s;
  animation: fadeInLeft .3s
}

.is-menu-show-2 .c_slide--header-menu .nav--level-2 {
  padding: 20px 0
}

.is-menu-show-2 .c_slide--header-menu .mainMenu .mainMenu__item.is-open .mainMenu__item_link {
  display: none
}

.is-menu-show-2 .c_slide--header-menu .nav--level-1 .nav__inner>.nav__item:not(.is-open) {
  display: none
}

.is-menu-show-2 .c_slide--header-menu .nav--level-1 .nav__item.is-open .nav--level-2 {
  display: block
}

.is-menu-show-1.is-menu-show-2 .c_slide--header-menu .nav--level-1 {
  padding: 0
}

.is-menu-show-1 .c_slide--header-menu .mainMenu__item.is-open .mainMenu__item_link,
.is-menu-show-2 .c_slide--header-menu .nav__item.is-open>.nav__item_link {
  display: none !important
}

.c_slide--header-menu .subnav {
  text-transform: none;
  font-size: 18px;
  font-weight: 300
}

.c_slide--header-menu .subnav .subnav__header {
  text-transform: uppercase;
  font-weight: 400;
  margin-bottom: 10px;
  color: var(--color-secondary)
}

.c_slide--header-menu .subnav .subnav__col {
  padding: 25px 15px 15px 15px;
  margin: 0 -15px
}

.c_slide--header-menu .subnav .subnav__col .item {
  padding: 10px 0
}

.c_slide--header-menu .subnav .subnav__col .item .item__link {
  text-decoration: none
}

.c_slide--header-menu .subnav .subnav__col .item .item__link:hover {
  text-decoration: underline
}

.c_slide--header-menu .subnav .subnav__col .item .item__link--more {
  font-weight: 400;
  text-decoration: underline
}

.c_slide--header-menu .subnav .subnav__col .item .item__link--more:hover {
  text-decoration: none
}

.c_slide--header-menu .subnav .subnav__col:nth-child(1) {
  background: #fff
}

.c_slide--header-menu .subnav .subnav__col:nth-child(1) .item .item__link {
  color: #000
}

.c_slide--header-menu .subnav .subnav__col:nth-child(1) .subnav__header {
  color: var(--color-main)
}

.c_slide--header-menu .subnav .subnav__col:nth-child(2) .item .item__link {
  color: #fff
}

.c_slide--header-menu .subnav .subnav__col--image {
  display: none
}

@media(min-width:1400px) {
  .header .mainMenu .mainMenu__item.is-mm .nav--megamenu {
    padding: 0;
    padding-top: 50px;
    width: auto;
    left: 0;
    right: 0;
    top: 170px;
    position: fixed;
    background: #fff;
    box-shadow: none;
    margin: 0;
    height: calc(100% - 170px)
  }

  .header .mainMenu .mainMenu__item.is-mm .nav--megamenu .container {
    display: block
  }
}

@media(min-width:1400px)and (min-width:1200px) {
  .header .mainMenu .mainMenu__item.is-mm .nav--megamenu .container {
    max-width: 1260px
  }
}

@media(min-width:1400px)and (min-width:1900px) {
  .header .mainMenu .mainMenu__item.is-mm .nav--megamenu .container {
    max-width: 1360px
  }
}

@media(min-width:1400px) {

  .header .mainMenu .mainMenu__item.is-mm.is-hover .nav--megamenu,
  .header .mainMenu .mainMenu__item.is-mm.is-open .nav--megamenu {
    padding-top: 60px;
    opacity: 1;
    visibility: visible
  }
}

@media(min-width:1400px) {
  .header .subnav {
    display: flex;
    width: 100%
  }

  .header .subnav .subnav__col {
    flex: 1;
    padding-right: 10%
  }

  .header .subnav .subnav__col--image {
    text-align: right;
    flex: 0 0 40%;
    max-width: 400px;
    padding-right: 0
  }
}

@media(min-width:1400px)and (min-width:1600px) {
  .header .subnav .subnav__col--image {
    max-width: 600px
  }
}

@media(min-width:1400px) {
  .header .subnav .subnav__col--image img {
    width: 100%
  }
}

@media(min-width:1400px) {
  .header .subnav .subnav__col--nav .subnav__header {
    margin-bottom: 35px;
    text-transform: uppercase;
    color: var(--color-main);
    font-size: 20px;
    font-weight: 500
  }
}

@media(min-width:1400px)and (min-width:1600px) {
  .header .subnav .subnav__col--nav .subnav__header {
    font-size: 24px
  }
}

@media(min-width:1400px) {
  .header .subnav .subnav__items {
    text-transform: none;
    font-size: 18px;
    font-weight: 300
  }

  .header .subnav .subnav__items .item {
    margin-bottom: 20px
  }

  .header .subnav .subnav__items .item .item__link--more,
  .header .subnav .subnav__items .item .item__link.is-selected,
  .header .subnav .subnav__items .item .item__link:hover {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 4px
  }

  .header .subnav .subnav__items .item .item__link--more {
    font-weight: 400
  }

  .header .subnav .subnav__items .item .item__link--more:hover {
    text-decoration: none
  }
}

@media(min-width:1400px)and (min-width:1600px) {
  .header .subnav .subnav__items {
    font-size: 20px
  }

  .header .subnav .subnav__items .item {
    margin-bottom: 30px
  }
}

/*! 
------------------------------------------
SECTIONS & Blocks
------------------------------------------
*/
.content-wrap {
  padding-top: 60px
}

@media(min-width:1200px) {
  .content-wrap {
    padding-top: 107px
  }
}

@media(min-width:1400px) {
  .content-wrap {
    padding-top: 178px
  }
}

.index__page .content-wrap {
  padding-top: 0
}

/*! base page styles */
.page {
  padding-top: 20px
}

.page--padding-bottom {
  padding-top: min(max(3.125rem, 4.375vw), 70px)
}

.page--cart .section--breadcrumbs {
  margin-bottom: min(max(20px, 6.25vw), 100px)
}

.page--cart .section--title {
  margin-bottom: min(max(25px, 2.5vw), 40px)
}

.page--product {
  padding-top: min(max(20px, 4.68vw), 75px)
}

.page--static {
  padding-bottom: 60px
}

.page--giftcard {
  padding-top: min(max(20px, 5vw), 5rem);
  padding-bottom: min(max(20px, 5vw), 5rem)
}

/*! base section styles */
.section {
  margin-bottom: min(max(40px, 5vw), 80px)
}

.section .section__header {
  position: relative;
  margin-bottom: min(max(20px, 2.5vw), 40px)
}

.section .section__header .section__header_title>* {
  margin-bottom: 0
}

.section .section__header .section__header_title h2 {
  text-transform: uppercase;
  font-weight: 400
}

.section .section__header .section__header_subtitle {
  padding-top: 6px
}

.section .section__header.is-align-center {
  text-align: center
}

.section .section__header--more {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center
}

.section .section__header--more .section__header_title {
  flex: 1;
  padding-right: 20px
}

@media(min-width:992px) {
  .section--giftcard .giftCard {
    display: flex
  }
}

.section--giftcard .giftCard .giftCard__image {
  text-align: center
}

@media(max-width:991.98px) {
  .section--giftcard .giftCard .giftCard__image {
    margin-bottom: 30px
  }

  .section--giftcard .giftCard .giftCard__image img {
    width: 100%
  }
}

@media(min-width:992px) {
  .section--giftcard .giftCard .giftCard__image {
    flex: 0 0 50%
  }
}

@media(min-width:992px) {
  .section--giftcard .giftCard .giftCard__details {
    flex: 0 0 40%;
    padding-left: 10%
  }
}

@media(max-width:991.98px) {
  .section--giftcard .giftCard .giftCard__details .breadcrumbs {
    display: none
  }
}

@media(min-width:992px) {
  .section--giftcard .giftCard .giftCard__details .breadcrumbs {
    margin-bottom: 30px
  }
}

@media(min-width:992px) {
  .section--giftcard .form--appointment {
    max-width: 300px
  }
}

.section--giftcard .form--appointment .form__group--selectbox {
  padding-top: 20px
}

.section--giftcard .form--appointment .form__group_cols--agree {
  align-items: flex-start;
  margin-bottom: 0
}

.section--giftcard .form--appointment .form__content {
  margin: 0;
  max-width: none
}

.section--giftcard .form--appointment .selectBox {
  width: 100%
}

.section--giftcard .form--appointment .selectBox .selectBox__name {
  width: 100%
}

.section--giftcard .form--appointment .selectBox .selectBox__value {
  min-width: auto;
  width: 100%
}

.section--empty {
  text-align: center
}

.section--banner .banner {
  background: var(--body-text);
  position: relative;
  overflow: hidden
}

@media(max-width:767.98px) {
  .section--banner .banner::after {
    position: absolute;
    z-index: 2;
    content: "";
    left: 0;
    width: 100%;
    opacity: .7;
    mix-blend-mode: multiply;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 9.48%, #000 69.56%);
    height: 70%
  }
}

.section--banner .banner .container {
  display: flex;
  height: 600px;
  padding-top: 54px;
  padding-bottom: 54px
}

@media(min-width:768px) {
  .section--banner .banner .container {
    align-items: center
  }
}

@media(min-width:1900px) {
  .section--banner .banner .container {
    height: 720px
  }
}

.section--banner .banner .banner__content {
  z-index: 3
}

.section--banner .banner .banner__title {
  margin-bottom: 20px
}

@media(min-width:1200px) {
  .section--banner .banner .banner__title {
    margin-bottom: 25px
  }
}

.section--banner .banner .banner__title>* {
  margin-bottom: 0;
  --min: 30px;
  --val: 3.75vw;
  --max: 3.75rem;
  color: var(--color-secondary);
  font-weight: 400;
  font-family: var(--font-secondary);
  text-transform: uppercase
}

@media(min-width:1200px) {
  .section--banner .banner .banner__title>* {
    text-transform: none
  }
}

.section--banner .banner .banner__text {
  margin-bottom: 20px
}

@media(min-width:1200px) {
  .section--banner .banner .banner__text {
    max-width: 40%
  }
}

@media(max-width:767.98px) {
  .section--banner .banner .banner__text {
    font-size: 12px;
    font-weight: 500
  }
}

@media(min-width:1200px) {
  .section--banner .banner .banner__text {
    margin-bottom: 40px
  }
}

.section--banner .banner--light {
  color: #fff
}

.section--banner .banner--light .btn {
  border-color: #fff;
  color: #fff
}

.section--banner .banner--light .btn:hover {
  border-color: var(--color-main)
}

.section--banner .banner--light .link:hover {
  color: #fff
}

@media(min-width:768px) {
  .section--banner .banner.is-hpos--left .container {
    justify-content: flex-start
  }

  .section--banner .banner.is-hpos--right .container {
    justify-content: flex-end
  }

  .section--banner .banner.is-hpos--right .banner__content {
    max-width: 50%
  }

  .section--banner .banner.is-hpos--right .banner__text {
    max-width: none
  }

  .section--banner .banner.is-hpos--center .container {
    justify-content: center;
    text-align: center
  }

  .section--banner .banner.is-vpos--center .container {
    align-items: center
  }

  .section--banner .banner.is-vpos--top .container {
    align-items: flex-start
  }

  .section--banner .banner.is-vpos--bottom .container {
    align-items: flex-end
  }
}

@media(max-width:767.98px) {
  .section--banner .banner::after {
    bottom: 0
  }

  .section--banner .banner .container {
    align-items: flex-end
  }
}

.section--banner .banner--quote {
  font-family: var(--font-secondary)
}

.section--banner .banner--quote .container {
  padding-bottom: 30px;
  padding-top: 30px
}

@media(min-width:768px) {
  .section--banner .banner--quote .container {
    padding-bottom: 80px;
    padding-top: 80px
  }
}

.section--banner .banner--quote .banner__text {
  position: relative;
  font-size: 12px;
  line-height: normal;
  margin-bottom: 20px
}

.section--banner .banner--quote .banner__text::before {
  font-family: var(--font-icons);
  content: "";
  display: block
}

@media(max-width:767.98px) {
  .section--banner .banner--quote .banner__text::before {
    margin-bottom: 10px;
    font-size: 14px
  }
}

@media(min-width:768px) {
  .section--banner .banner--quote .banner__text::before {
    position: absolute;
    left: -30px;
    top: -24px
  }
}

@media(min-width:768px) {
  .section--banner .banner--quote .banner__text {
    font-size: 22px;
    font-weight: 300;
    margin-bottom: 22px
  }
}

.section--banner .banner--quote .banner__title {
  font-size: 12px;
  font-weight: 400;
  color: #e5e5e5
}

@media(min-width:768px) {
  .section--banner .banner--quote .banner__title {
    font-size: 16px
  }
}

.section--banner .banner--quote .banner__title span {
  text-transform: none;
  display: block;
  color: #fff
}

@media(min-width:768px) {
  .section--banner .banner--quote .banner__title span {
    font-size: 26px
  }
}

/*! section breadcrumbs */
/*! breadcrumbs */
.breadcrumbs {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  font-size: 10px;
  color: #bfbfbf
}

@media(min-width:992px) {
  .breadcrumbs {
    font-size: 12px
  }
}

.breadcrumbs .breadcrumbs__item {
  position: relative
}

.breadcrumbs .breadcrumbs__item:not(:last-child) {
  padding-right: 7px;
  margin-right: 4px
}

@media(min-width:992px) {
  .breadcrumbs .breadcrumbs__item:not(:last-child) {
    padding-right: 12px;
    margin-right: 9px
  }
}

.breadcrumbs .breadcrumbs__item:not(:last-child)::before {
  position: absolute;
  content: "";
  right: 0;
  top: 2px;
  width: 1px;
  height: 10px;
  background: #bfbfbf
}

@media(min-width:992px) {
  .breadcrumbs .breadcrumbs__item:not(:last-child)::before {
    top: 3px;
    height: 12px
  }
}

.breadcrumbs .breadcrumbs__item a.breadcrumbs__item_link {
  text-decoration: none;
  transition: all .3s;
  color: inherit
}

.breadcrumbs .breadcrumbs__item a.breadcrumbs__item_link:hover {
  color: gray
}

.breadcrumbs .breadcrumbs__item span.breadcrumbs__item_link {
  color: gray
}

/*! section 404 */
.section--404 .page404 {
  text-align: center
}

@media(min-width:992px) {
  .section--404 .page404 {
    padding: 35px 0
  }
}

.section--404 .page404 .page404__sign {
  padding: 25px 0;
  font-size: min(max(50px, 12.5vw), 200px);
  font-weight: 700
}

.section--404 .page404 .page404__text {
  font-size: .875em;
  line-height: 180%
}

.section--form-customsize .form--appointment .form__header .form__header_desc p br {
  display: block
}

.section--form-customsize .textBanner__content {
  padding: 0 min(max(40px, 7.5vw), 120px) !important
}

.section--wishlist .section__footer {
  padding: clamp(25px, 3.75vw, 3.75rem) 0
}

.section--wishlist .wishlist__buttons {
  display: flex;
  flex-direction: column
}

@media(max-width:991.98px) {
  .section--wishlist .wishlist__buttons {
    gap: 15px
  }

  .section--wishlist .wishlist__buttons .btn {
    font-size: 15px;
    width: 100%
  }
}

@media(min-width:768px) {
  .section--wishlist .wishlist__buttons {
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 34px
  }

  .section--wishlist .wishlist__buttons .wishlist__buttons_item {
    margin-bottom: 0
  }
}

.section--subscribe {
  background: #ede8e6;
  padding: 20px 15px 30px 15px
}

@media(max-width:575.98px) {
  .section--subscribe {
    margin-left: -15px;
    margin-right: -15px
  }
}

@media(min-width:1200px) {
  .section--subscribe {
    padding: 30px
  }
}

@media(min-width:1400px) {
  .section--subscribe {
    padding: 45px
  }
}

@media(min-width:1680px) {
  .section--subscribe {
    padding: 60px
  }
}

.productsGrid .card {
  position: relative;
  background: #fafafa;
  padding: 12px;
  min-height: 245px
}

@media(min-width:375px) {
  .productsGrid .card {
    min-height: 280px
  }
}

@media(min-width:520px) {
  .productsGrid .card {
    min-height: 320px
  }
}

@media(min-width:768px) {
  .productsGrid .card {
    min-height: 420px
  }
}

@media(min-width:1900px) {
  .productsGrid .card {
    min-height: 524px
  }
}

@media(hover:hover)and (pointer:fine)and (min-width:1200px) {
  .productsGrid .card {
    transition: all .6s;
    padding-top: 45px
  }
}

@media(hover:hover)and (pointer:fine)and (min-width:1400px) {
  .productsGrid .card {
    padding-top: 65px
  }
}

@media(hover:hover)and (pointer:fine)and (min-width:1700px) {
  .productsGrid .card {
    padding-top: 75px
  }
}

.productsGrid .card .badges {
  position: absolute;
  z-index: 4;
  left: 0;
  top: 0;
  z-index: 2
}

@media(max-width:767.98px) {
  .productsGrid .card .badges {
    font-size: 12px
  }
}

.productsGrid .card .card__tools {
  display: flex;
  align-items: center;
  z-index: 4;
  position: absolute;
  top: 8px;
  left: 12px;
  right: 12px
}

.productsGrid .card .card__tools .link {
  right: 0;
  opacity: 1;
  position: absolute;
  top: 6px
}

@media(hover:hover)and (pointer:fine)and (min-width:1200px) {
  .productsGrid .card .card__tools .link {
    opacity: 0;
    right: -12px
  }
}

.productsGrid .card .card__tools .link::before {
  font-size: 18px;
  margin-right: 0
}

.productsGrid .card .card__tools .link.favorites-added {
  right: 0;
  opacity: 1
}

.productsGrid .card .card__bottom {
  padding: 6px;
  position: absolute;
  bottom: 0;
  left: 0;
  transition: all .4s
}

@media(min-width:768px) {
  .productsGrid .card .card__bottom {
    padding: 12px
  }
}

.productsGrid .card .card__title {
  margin-bottom: 4px;
  font-size: 12px;
  font-weight: 300
}

@media(min-width:768px) {
  .productsGrid .card .card__title {
    font-size: 16px;
    margin-bottom: 8px
  }
}

@media(min-width:1200px) {
  .productsGrid .card .card__title {
    font-size: 18px
  }
}

.productsGrid .card .card__title .card__title_link {
  text-decoration: none;
  color: #b9b9b9;
  transition: all .3s
}

.productsGrid .card .card__title .card__title_link:hover {
  color: var(--body-text)
}

.productsGrid .card .card__details {
  color: #7d7d7d;
  font-size: 10px;
  font-weight: 400;
  margin-bottom: 4px
}

@media(min-width:768px) {
  .productsGrid .card .card__details {
    font-weight: 300;
    font-size: 14px;
    margin-bottom: 8px
  }
}

.productsGrid .card .card__prices .price {
  font-size: 14px
}

@media(min-width:768px) {
  .productsGrid .card .card__prices .price {
    font-size: 18px
  }
}

.productsGrid .card .card__prices .price--default {
  font-weight: 400
}

@media(max-width:575.98px) {
  .productsGrid .card .card__prices .price--old {
    display: none
  }
}

.productsGrid .card .card__imageWrap {
  flex: 0 0 100%;
  width: 100%
}

.productsGrid .card .card__image .card__image_src {
  display: block;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center
}

@media(max-width:575.98px) {
  .productsGrid .card .card__image .card__image_src {
    max-height: 150px
  }
}

.productsGrid .card .card__image img {
  background: #fff;
  mix-blend-mode: multiply
}

.productsGrid .card .card__image .card__image_link {
  display: flex;
  align-items: center;
  justify-content: center
}

.productsGrid .card--banner .card__image .card__image_src {
  width: 100%;
  height: 100%;
  max-height: none;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center
}

@media(min-width:1400px) {
  .productsGrid .card--banner {
    -ms-grid-column-span: 2;
    grid-column: span 2;
    -ms-grid-row-span: 2;
    grid-row: span 2
  }
}

@media(max-width:991.98px) {
  .productsGrid .card--banner {
    -ms-grid-column-span: 2;
    grid-column: span 2;
    -ms-grid-row: 4;
    grid-row-start: 4;
    grid-row: span 2
  }
}

@media(min-width:375px)and (max-width:575px) {
  .productsGrid .card--banner {
    min-height: 480px
  }
}

@media(max-width:374px) {
  .productsGrid .card--banner {
    min-height: 400px
  }
}

@media(hover:hover)and (pointer:fine)and (min-width:1200px) {
  .productsGrid .card .card__bottom {
    opacity: 0;
    visibility: hidden;
    bottom: 20px
  }
}

@media(hover:hover)and (pointer:fine)and (min-width:1200px)and (hover:hover)and (pointer:fine)and (min-width:1200px) {
  .productsGrid .card:hover {
    padding-top: 25px
  }
}

@media(hover:hover)and (pointer:fine)and (min-width:1200px)and (hover:hover)and (pointer:fine)and (min-width:1400px) {
  .productsGrid .card:hover {
    padding-top: 40px
  }
}

@media(hover:hover)and (pointer:fine)and (min-width:1200px)and (hover:hover)and (pointer:fine)and (min-width:1700px) {
  .productsGrid .card:hover {
    padding-top: 50px
  }
}

@media(hover:hover)and (pointer:fine)and (min-width:1200px) {
  .productsGrid .card:hover .card__tools .link {
    right: 0;
    opacity: 1
  }
}

@media(hover:hover)and (pointer:fine)and (min-width:1200px) {
  .productsGrid .card:hover .card__bottom {
    opacity: 1;
    visibility: visible;
    bottom: 0
  }
}

.productsGrid .card .card__check {
  display: none
}

.productsGrid .card--wishlist .link {
  display: none
}

.productsGrid .card--wishlist .card__check {
  display: block;
  position: absolute;
  z-index: 40;
  top: 5px;
  right: 0;
  left: auto
}

.productsGrid--default {
  display: -ms-grid;
  display: grid;
  grid-gap: 10px;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
  -ms-grid-rows: (minmax(152px, auto)) [1fr];
  grid-template-rows: repeat(1fr, minmax(152px, auto))
}

@media(min-width:768px) {
  .productsGrid--default {
    grid-gap: 27px 20px
  }
}

@media(min-width:992px) {
  .productsGrid--default {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr)
  }
}

@media(min-width:1400px) {
  .productsGrid--default {
    -ms-grid-columns: (1fr)[4];
    grid-template-columns: repeat(4, 1fr)
  }
}

.productsGrid--carousel {
  position: relative
}

.productsGrid--carousel .swiper {
  min-width: 210px
}

.productsGrid--carousel .swiper:not(.swiper-initialized) .swiper-slide {
  max-width: 575px
}

@media(max-width:767.98px) {
  .productsGrid--carousel .swiper .swiper-slide {
    max-width: 210px !important
  }
}

.section--textwithimage .textBanner {
  display: flex
}

.section--textwithimage .textBanner .textBanner__content {
  text-align: left;
  flex: 1;
  padding-left: 15px;
  padding-right: 15px
}

@media(min-width:576px) {
  .section--textwithimage .textBanner .textBanner__content {
    text-align: center
  }
}

@media(min-width:768px) {
  .section--textwithimage .textBanner .textBanner__content {
    padding: 0 40px
  }
}

@media(min-width:992px) {
  .section--textwithimage .textBanner .textBanner__content {
    padding: 0 80px
  }
}

@media(min-width:1400px) {
  .section--textwithimage .textBanner .textBanner__content {
    padding: 0 min(max(40px, 10vw), 160px)
  }
}

.section--textwithimage .textBanner .textBanner__title {
  margin-bottom: min(max(20px, 1.8vw), 1.875rem);
  padding-bottom: min(max(20px, 1.8vw), 1.875rem);
  text-align: center;
  position: relative
}

.section--textwithimage .textBanner .textBanner__title::after {
  width: 116px;
  height: 1px;
  left: 0;
  right: 0;
  margin: 0 auto;
  background: #000;
  position: absolute;
  content: "";
  bottom: 0
}

.section--textwithimage .textBanner .textBanner__title>* {
  margin-bottom: 0;
  font-family: var(--font-secondary)
}

.section--textwithimage .textBanner .textBanner__title h2 {
  --val: 2vw;
  --max: 32px;
  font-weight: 400
}

.section--textwithimage .textBanner .textBanner__text {
  color: #4d4d4d;
  font-size: 14px;
  font-weight: 300;
  text-align: center
}

@media(min-width:992px) {
  .section--textwithimage .textBanner .textBanner__text {
    text-align: left;
    font-size: inherit
  }
}

.section--textwithimage .textBanner .textBanner__more {
  text-align: center;
  padding-top: min(max(20px, 2.5vw), 2.5rem)
}

.section--textwithimage .textBanner .textBanner__more .btn {
  width: 100%;
  max-width: 140px
}

@media(min-width:768px) {
  .section--textwithimage .textBanner .textBanner__more .btn {
    max-width: 250px;
    text-transform: uppercase
  }
}

.section--textwithimage .textBanner .textBanner__image {
  background: #f2f2f2
}

.section--textwithimage .textBanner .textBanner__image .card__image_src {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  height: min(max(350px, 45vw), 720px)
}

.section--textwithimage .textBanner .textBanner__image img {
  width: auto;
  height: auto;
  max-width: 60px;
  max-height: 60px
}

.section--textwithimage .textBanner .textBanner__image img.lazyloaded {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center
}

@media(max-width:767.98px) {
  .section--textwithimage .textBanner {
    justify-content: center;
    flex-direction: column
  }

  .section--textwithimage .textBanner .textBanner__content {
    order: 2
  }

  .section--textwithimage .textBanner .textBanner__image {
    order: 1;
    margin-bottom: 30px
  }
}

@media(max-width:575.98px) {
  .section--textwithimage .textBanner .container {
    padding-left: 0;
    padding-right: 0
  }
}

@media(min-width:768px) {
  .section--textwithimage .textBanner {
    align-items: center
  }

  .section--textwithimage .textBanner--left .textBanner__content {
    order: 2
  }

  .section--textwithimage .textBanner--left .textBanner__image {
    order: 1
  }

  .section--textwithimage .textBanner .textBanner__image {
    max-width: 50%;
    flex: 0 0 50%
  }
}

.section--textwithimage .textBanner.is-custom-bg {
  background: var(--color-main)
}

.section--textwithimage .textBanner.is-custom-bg .btn,
.section--textwithimage .textBanner.is-custom-bg .textBanner__text,
.section--textwithimage .textBanner.is-custom-bg .textBanner__text a,
.section--textwithimage .textBanner.is-custom-bg .textBanner__title>* {
  color: #fff
}

.section--textwithimage .textBanner.is-custom-bg .textBanner__title::after {
  background: #fff
}

.section--textwithimage .textBanner.is-custom-bg .btn {
  border-color: #fff
}

.section--textwithimage .textBanner.is-custom-bg .btn:hover {
  background: #fff;
  color: var(--body-text)
}

@media(max-width:767.98px) {
  .section--textwithimage .textBanner.is-custom-bg .textBanner__content {
    padding-bottom: 30px
  }
}

.section--textwithimage:not(.section--carousel) .container {
  max-width: 1920px;
  padding: 0
}

@media(max-width:991.98px) {
  .section--textwithimage.section--carousel .container {
    min-width: 100%;
    padding-left: 0;
    padding-right: 0
  }
}

.section--textwithimage.section--carousel .textBanner .textBanner__content {
  padding: 0 min(max(15px, 8vw), 8.125rem)
}

@media(max-width:991.98px) {

  .section--textwithimage.section--margin-medium .textBanner .textBanner__content,
  .section--textwithimage.section--margin-small .textBanner .textBanner__content {
    padding-bottom: 15px
  }
}

.section--carousel {
  position: relative
}

.section--carousel .swiper__buttons {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: absolute;
  top: 50%;
  height: 0;
  z-index: 9;
  padding: 0
}

@media(max-width:767.98px) {
  .section--carousel.section--services .container {
    padding: 0;
    max-width: none
  }
}

@media(max-width:575.98px) {
  .section--carousel .container {
    padding-left: 0;
    padding-right: 0
  }

  .section--carousel .section__header {
    padding-left: 15px;
    padding-right: 15px
  }
}

.section--carousel.section--products .section__content,
.section--carousel.section--services .section__content,
.section--carousel.section--textwithimage .section__content {
  position: relative
}

.section--carousel.section--products .swiper__buttons,
.section--carousel.section--services .swiper__buttons,
.section--carousel.section--textwithimage .swiper__buttons {
  left: 0;
  right: 0;
  width: auto;
  padding: 0 30px
}

@media(min-width:1600px) {

  .section--carousel.section--products .swiper__buttons,
  .section--carousel.section--services .swiper__buttons,
  .section--carousel.section--textwithimage .swiper__buttons {
    padding: 0;
    margin: 0 -60px
  }
}

.section--services-catalog .section__header {
  margin-bottom: min(max(20px, 2.5vw), 40px)
}

.section--services-catalog .section__header .section__header_title>* {
  color: var(--body-text)
}

.cardsGrid {
  gap: 40px 20px;
  display: -ms-grid;
  display: grid;
  text-align: center
}

.cardsGrid .card .card__image {
  margin-bottom: min(max(20px, 3.125vw), 3.125rem);
  overflow: hidden
}

.cardsGrid .card .card__image picture {
  display: block;
  transition: all 1.2s
}

.cardsGrid .card .card__image .card__image_link {
  display: block
}

@media(hover:hover)and (pointer:fine) {
  .cardsGrid .card .card__image:hover picture {
    -webkit-transform: scale(1.1);
    transform: scale(1.1)
  }
}

.cardsGrid .card .card__title {
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: 500;
  text-transform: uppercase
}

@media(min-width:768px) {
  .cardsGrid .card .card__title {
    font-size: 22px
  }
}

.cardsGrid .card .card__title .card__title_link {
  display: inline-block;
  color: var(--body-text)
}

@media(min-width:992px) {
  .cardsGrid .card .card__title .card__title_link {
    text-decoration: none
  }

  .cardsGrid .card .card__title .card__title_link:hover {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px
  }
}

.cardsGrid .card .card__more {
  font-size: 22px;
  font-weight: 300
}

.cardsGrid .card .card__more .link {
  color: var(--body-text);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px
}

.cardsGrid .card .card__more .link:hover {
  text-decoration: none
}

@media(max-width:991.98px) {
  .cardsGrid .card .card__more {
    display: none
  }
}

.cardsGrid--services {
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr)
}

.cardsGrid--services .card .card__image_link img {
  -o-object-fit: cover;
  object-fit: cover
}

@media(min-width:768px) {
  .cardsGrid--services .card .card__image_link img {
    -o-object-fit: contain;
    object-fit: contain
  }
}

@media(max-width:767.98px) {
  .cardsGrid--services .swiper-slide {
    max-width: 335px
  }
}

@media(max-width:575.98px) {
  .cardsGrid--services .swiper-slide {
    max-width: 220px
  }
}

.cardsGrid--services-catalog {
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr)
}

@media(min-width:1200px) {
  .cardsGrid--services-catalog {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr)
  }
}

.cardsGrid--services-catalog .card .card__title {
  font-size: 14px;
  color: var(--color-main);
  font-weight: 400
}

@media(min-width:768px) {
  .cardsGrid--services-catalog .card .card__title {
    font-size: 26px
  }
}

@media(max-width:991.98px) {
  .cardsGrid--services-catalog .card .card__title .card__title_link {
    text-decoration: none
  }

  .cardsGrid--services-catalog .card .card__title .card__title_link:hover {
    text-decoration: underline
  }
}

@media(max-width:767.98px) {
  .cardsGrid--services-catalog .card .card__image .card__image_link::before {
    padding-top: 120%
  }

  .cardsGrid--services-catalog .card .card__image img {
    -o-object-fit: contain;
    object-fit: contain
  }
}

.cardsGrid--services-catalog .card .card__more {
  display: flex;
  justify-content: center;
  align-items: center
}

.cardsGrid--services-catalog .card .card__more .link {
  font-size: 12px;
  font-weight: 300;
  text-transform: none
}

@media(min-width:768px) {
  .cardsGrid--services-catalog .card .card__more .link {
    font-size: 22px
  }
}

.cardsGrid--carousel {
  display: block
}

.cardsGrid--collections {
  gap: 16px;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr)
}

.cardsGrid--collections .card .card__image,
.cardsGrid--collections .card .card__title {
  margin-bottom: 30px
}

.cardsGrid--collections .card .card__image_link::before {
  padding-top: 100%
}

.cardsGrid--collections .card .card__image_link img {
  -o-object-fit: cover;
  object-fit: cover
}

.catalogGrid {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
  gap: 10px
}

@media(min-width:768px) {
  .catalogGrid {
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 20px
  }
}

.catalogGrid .item {
  display: block;
  text-align: center;
  background: #ede8e6;
  padding: 15px;
  text-decoration: none;
  color: #000;
  transition: all .3s
}

@media(min-width:768px) {
  .catalogGrid .item {
    padding: 25px
  }
}

.catalogGrid .item span {
  display: block
}

.catalogGrid .item .item__image {
  margin-bottom: 8px;
  max-height: 100px
}

@media(min-width:768px) {
  .catalogGrid .item .item__image {
    max-height: 200px
  }
}

.catalogGrid .item .item__image_link {
  display: flex;
  align-items: center;
  justify-content: center
}

.catalogGrid .item .item__title {
  font-weight: 500
}

@media(min-width:768px) {
  .catalogGrid .item .item__title {
    font-size: 18px
  }
}

.catalogGrid .item .item__count {
  padding-top: 5px;
  font-size: 12px;
  color: #5d6168
}

@media(min-width:768px) {
  .catalogGrid .item .item__count {
    padding-top: 10px;
    font-size: 14px
  }
}

.catalogGrid .item:hover {
  background: #f8f6f5
}

@media(min-width:1400px) {
  .catalogGrid .item--sale {
    -ms-grid-column-span: 3;
    grid-column: span 3
  }
}

.section--title .section__header {
  margin-bottom: 0
}

.section--title .section__header .section__header_title .h1,
.section--title .section__header .section__header_title .h2,
.section--title .section__header .section__header_title .h3,
.section--title .section__header .section__header_title h1,
.section--title .section__header .section__header_title h2,
.section--title .section__header .section__header_title h3 {
  text-transform: uppercase
}

.section--title .section__header .section__header_subtitle {
  padding-top: 14px
}

.section--title .section__header.is-padding-mini .section__header_subtitle {
  padding-top: 0;
  font-size: 15px
}

.section--title .section__header.is-padding-max .section__header_subtitle {
  padding-top: min(max(20px, 2.5vw), 2.5rem)
}

.section--title .section__header.is-has-separator .section__header_title {
  margin-bottom: 0
}

.section--title .section__header.is-has-separator .section__header_subtitle {
  margin-top: 20px;
  padding-top: 20px;
  position: relative;
  text-transform: none
}

.section--title .section__header.is-has-separator .section__header_subtitle::before {
  width: 92px;
  height: 1px;
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  content: ""
}

.section--title .section__header.is-align-center .section__header_subtitle::before {
  margin: 0 auto;
  right: 0
}

@media(min-width:992px) {
  .section--title .section__header.is-max-width {
    max-width: 730px;
    margin-left: auto;
    margin-right: auto
  }
}

.section--title-margin .section__header .section__header_subtitle {
  padding-top: min(max(20px, 2.5vw), 2.5rem)
}

.section--title .js-morecrop .link--more {
  font-weight: 500
}

.section--title .js-morecrop.is-open .link--more {
  display: none
}

/*! benefits */
.benefits {
  display: flex;
  justify-content: center
}

.benefits .benefits__item {
  text-align: center;
  flex: 1;
  padding: 0 min(max(10px, 2.5vw), 2.5rem)
}

.benefits .benefits__item .benefits__item_icon {
  height: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto 15px auto
}

@media(min-width:1200px) {
  .benefits .benefits__item .benefits__item_icon {
    width: 62px;
    height: 62px
  }
}

@media(min-width:1200px) {
  .benefits .benefits__item .benefits__item_icon {
    margin-bottom: 25px
  }
}

.benefits .benefits__item .benefits__item_icon img {
  max-width: 62px
}

.benefits .benefits__item .benefits__item_title {
  font-size: min(max(16px, 1.375vw), 1.375rem)
}

@media(min-width:1200px) {
  .benefits .benefits__item .benefits__item_title {
    margin-bottom: 25px
  }
}

@media(max-width:340px) {
  .benefits .benefits__item .benefits__item_title {
    font-size: 14px
  }
}

.benefits .benefits__item .benefits__item_title a {
  color: var(--body-text)
}

.benefits .benefits__item .benefits__item_title span {
  cursor: pointer;
  text-decoration: underline
}

.benefits .benefits__item .benefits__item_title span:hover {
  text-decoration: none
}

.benefits .benefits__item .benefits__item_content {
  display: none
}

@media(min-width:1200px) {
  .benefits .benefits__item .benefits__item_content {
    display: block;
    font-size: 18px;
    font-weight: 300
  }
}

.section--accordeon .section__content,
.section--terms .container {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto
}

.section--terms .container {
  max-width: 884px
}

.section--wishlist-links {
  margin-bottom: min(max(20px, 2.5vw), 40px)
}

.section--catalog-top {
  padding-top: 20px
}

@media(min-width:992px) {
  .section--catalog-top {
    padding-top: 10px
  }
}

/*! section grid mods */
.section--no-padding {
  padding: 0
}

.section--no-padding-top {
  padding-top: 0
}

.section--no-padding-bottom {
  padding-bottom: 0
}

.section--no-margin {
  margin: 0
}

.section--no-margin-top {
  margin-top: 0
}

.section--no-margin-bottom {
  margin-bottom: 0
}

.section--margin-small {
  margin-bottom: min(max(20px, 1.25vw), 1.25rem)
}

.section--margin-medium {
  margin-bottom: min(max(20px, 2.5vw), 2.5rem)
}

.section--more .section__header {
  display: flex;
  align-items: center;
  justify-content: space-between
}

.section--fade {
  position: relative
}

.section--fade::before {
  position: absolute;
  z-index: 1;
  background: #000;
  opacity: .2;
  inset: 0;
  content: ""
}

.section--fade .container {
  z-index: 2;
  position: relative
}

@media(max-width:767.98px) {
  .section.is-hide-mobile {
    display: none
  }
}

/*! 
------------------------------------------
COMPONENTS
------------------------------------------
*/
.r_flag {
  display: inline-block;
  min-width: 18px;
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center
}

.r_flag[data-country=ru],
[data-country=ru] .r_flag {
  background-image: url(flag-ru.svg)
}

.r_flag[data-country=am],
[data-country=am] .r_flag {
  background-image: url(flag-am.svg)
}

.r_flag[data-country=by],
[data-country=by] .r_flag {
  background-image: url(flag-by.svg)
}

.r_flag[data-country=kz],
[data-country=kz] .r_flag {
  background-image: url(flag-kz.svg)
}

.r_flag[data-country=kg],
[data-country=kg] .r_flag {
  background-image: url(flag-kg.svg)
}

.r_flag[data-country=uz],
[data-country=uz] .r_flag {
  background-image: url(flag-uz.svg)
}

.form__group--country {
  position: relative
}

.form__group--country .selectBox {
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 20px
}

.form__group--country .selectBox .selectBox__name {
  padding-right: 23px;
  height: 30px;
  position: absolute;
  left: 0;
  top: -20px
}

.form__group--country .selectBox .selectBox__name::after {
  transition: all .3s;
  font-family: var(--font-icons);
  content: "";
  font-size: 7px;
  position: absolute;
  right: 0;
  z-index: 2;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}

.form__group--country .selectBox.is-open .selectBox__name::after {
  -webkit-transform: rotate(0);
  transform: rotate(0)
}

.form__group--country .selectBox .selectBox__dd {
  padding: 10px 0;
  top: 110%;
  border: 1px solid #dadada
}

.form__group--country .selectBox .selectBox__dd .item {
  font-size: 13px;
  padding: 4px 10px;
  cursor: pointer;
  display: flex;
  transition: all .3s;
  align-items: center
}

.form__group--country .selectBox .selectBox__dd .item:hover {
  background: #f5f5f5
}

.form__group--country .selectBox .selectBox__dd .item .item__flag,
.form__group--country .selectBox .selectBox__dd .item .item__name {
  margin-right: 10px
}

.form__group--country input[type=tel] {
  padding-left: 50px !important
}

/*! fix ios bottom positions */
/*! scroll to top */
.r_totop {
  display: none
}

/*! to top */
.is-show-totop .r_totop {
  bottom: 1rem;
  opacity: 1;
  visibility: visible
}

/*! toasts */
.r_toast {
  position: fixed;
  top: 1rem;
  right: 1rem;
  z-index: 992;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  transition: all .3s
}

.r_toast__item {
  transition: all .3s;
  margin-bottom: 6px;
  background: var(--color-main);
  padding: 10px 20px;
  font-size: 13px;
  font-weight: 700;
  text-align: center;
  border-radius: 10px;
  color: #fff;
  opacity: 0;
  border-radius: 10px;
  -webkit-transform: scale(.9);
  transform: scale(.9)
}

.r_toast__item.is-shown {
  padding-top: 10px;
  padding-bottom: 10px;
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1)
}

/*! tabs & accordeons */
.r_tabs {
  position: relative
}

.r_tabs .r_tabs__links {
  display: none
}

@media(min-width:768px) {
  .r_tabs .r_tabs__links {
    display: flex;
    flex-wrap: wrap;
    gap: 2px
  }

  .r_tabs .r_tabs__links .r_tabs__item_title {
    padding-top: 15px;
    padding-bottom: 15px
  }

  .r_tabs .r_tabs__links .r_tabs__item_title.is-selected {
    background: var(--color-main-dark)
  }
}

.r_tabs .r_tabs__item .r_tabs__item_title {
  font-size: 14px;
  font-weight: 300;
  padding: 5px 30px 15px 0;
  position: relative;
  cursor: pointer
}

@media(min-width:768px) {
  .r_tabs .r_tabs__item .r_tabs__item_title {
    padding-top: 10px;
    padding-bottom: 10px
  }
}

@media(min-width:1200px) {
  .r_tabs .r_tabs__item .r_tabs__item_title {
    padding-top: 23px;
    padding-bottom: 23px;
    font-size: 20px
  }
}

.r_tabs .r_tabs__item .r_tabs__item_title {
  padding-right: 20px
}

.r_tabs .r_tabs__item .r_tabs__item_title::after {
  position: absolute;
  right: 0;
  top: 50%;
  font-weight: 400;
  font-size: 7px;
  font-family: var(--font-icons);
  content: "";
  transition: all .3s;
  -webkit-transform: translate(0, -50%) rotate(180deg);
  transform: translate(0, -50%) rotate(180deg)
}

.r_tabs .r_tabs__item .r_tabs__item_title.is-selected::after {
  -webkit-transform: rotate(0) translate(4px, -50%);
  transform: rotate(0) translate(4px, -50%)
}

.r_tabs .r_tabs__item .r_tabs__item_content {
  transition: all .3s;
  opacity: 0;
  height: 0;
  visibility: hidden
}

@media(min-width:1200px) {
  .r_tabs .r_tabs__item .r_tabs__item_content {
    line-height: normal
  }
}

.r_tabs .r_tabs__item.is-selected .r_tabs__item_content {
  opacity: 1;
  visibility: visible;
  height: auto
}

@media(max-width:767.98px) {
  .r_tabs .r_tabs__item.is-selected .r_tabs__item_content {
    padding-bottom: 20px
  }
}

@media(max-width:767.98px) {
  .r_tabs .r_tabs__item--related {
    padding-top: 20px;
    border-top: 1px solid #000
  }

  .r_tabs .r_tabs__item--related .r_tabs__item_title {
    display: none
  }

  .r_tabs .r_tabs__item--related .r_tabs__item_content {
    opacity: 1;
    visibility: visible;
    height: auto
  }
}

.r_tabs--accordeon .r_tabs__links {
  display: none
}

.r_tabs--accordeon .r_tabs__item:not(:last-child) {
  margin-bottom: min(max(1.375rem, 2.625vw), 2.625rem)
}

.r_tabs--accordeon .r_tabs__item .r_tabs__item_title {
  font-size: 14px;
  padding-top: 8px;
  padding-bottom: 8px;
  border-bottom: 1px solid #000
}

@media(min-width:768px) {
  .r_tabs--accordeon .r_tabs__item .r_tabs__item_title {
    font-size: 22px;
    padding-top: 13px;
    padding-bottom: 13px;
    padding-right: 30px
  }

  .r_tabs--accordeon .r_tabs__item .r_tabs__item_title::after {
    font-size: 11px
  }
}

.r_tabs--accordeon .r_tabs__item.is-selected .r_tabs__item_content {
  padding-top: min(max(.9375rem, 1.5vw), 1.5625rem)
}

@media(min-width:768px) {
  .r_tabs--tabs .r_tabs__links {
    font-size: 14px;
    font-weight: 300;
    border-bottom: 1px solid #cfcfcf
  }
}

@media(min-width:768px)and (min-width:768px)and (max-width:1199.98px) {
  .r_tabs--tabs .r_tabs__links {
    justify-content: center
  }
}

@media(min-width:768px)and (min-width:768px) {
  .r_tabs--tabs .r_tabs__links {
    font-size: 18px;
    text-transform: uppercase
  }
}

@media(min-width:768px)and (min-width:992px) {
  .r_tabs--tabs .r_tabs__links {
    font-size: 20px
  }
}

@media(min-width:768px) {
  .r_tabs--tabs .r_tabs__links .r_tabs__links_title {
    cursor: pointer;
    position: relative
  }
}

@media(min-width:768px)and (min-width:768px) {
  .r_tabs--tabs .r_tabs__links .r_tabs__links_title {
    padding: 10px 20px
  }
}

@media(min-width:768px)and (min-width:1900px) {
  .r_tabs--tabs .r_tabs__links .r_tabs__links_title {
    padding-left: 40px;
    padding-right: 40px
  }
}

@media(min-width:768px) {
  .r_tabs--tabs .r_tabs__links .r_tabs__links_title::after {
    width: 20px;
    content: "";
    height: 1px;
    left: 0;
    right: 0;
    margin: 0 auto;
    bottom: -1px;
    background: rgba(0, 0, 0, 0);
    position: absolute;
    transition: all .5s ease
  }
}

@media(min-width:768px) {
  .r_tabs--tabs .r_tabs__links .r_tabs__links_title.is-selected {
    font-weight: 400
  }

  .r_tabs--tabs .r_tabs__links .r_tabs__links_title.is-selected::after {
    width: 100%;
    background: #404040
  }
}

@media(min-width:768px) {
  .r_tabs--tabs .r_tabs__item {
    border: none
  }

  .r_tabs--tabs .r_tabs__item .r_tabs__item_title {
    display: none
  }

  .r_tabs--tabs .r_tabs__item.is-selected .r_tabs__item_content {
    padding-top: 40px
  }
}

/*! qty counter */
.r_qty {
  max-width: 130px;
  width: 100%;
  color: var(--body-text);
  position: relative;
  justify-content: space-between;
  display: flex;
  border: 1px solid #ede8e6;
  height: 40px
}

.r_qty .r_qty__btn {
  font-size: 24px;
  width: 40px;
  background: rgba(0, 0, 0, 0);
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 500;
  position: absolute;
  right: 0;
  cursor: pointer
}

.r_qty .r_qty__btn--minus {
  right: auto;
  left: 0;
  font-size: 18px
}

.r_qty .r_qty__input {
  width: 100%;
  text-align: center;
  min-width: auto;
  padding: 0 40px;
  font-size: 18px;
  font-weight: 500
}

.r_qty .r_qty__input:disabled~.r_qty__btn {
  opacity: .6;
  cursor: default
}

/*! page progress */
.r_readprogress {
  --scrollAmount: 0%;
  opacity: 0;
  visibility: hidden;
  transition: opacity .5s;
  z-index: 903;
  background-image: linear-gradient(90deg, #e1a4e6 0, #249dfd 50.78%, #a7ef50 100%);
  width: var(--scrollAmount);
  height: 4px;
  position: fixed;
  top: 0
}

/*! editor crop */
.is-text-truncate {
  position: relative;
  max-width: 100%;
  overflow: hidden;
  display: block
}

.is-text-truncate p {
  display: -webkit-box;
  box-orient: vertical;
  line-clamp: 4;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 5px
}

.is-text-truncate .link--toggleCrop {
  display: none;
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-thickness: 1px;
  font-weight: 400
}

.is-text-truncate .link--toggleCrop:hover {
  color: inherit;
  text-decoration: none
}

.is-text-truncate.is-crop-shown-more p {
  -webkit-line-clamp: unset !important
}

.is-text-truncate.is-crop-shown-button .link--toggleCrop {
  display: inline-flex
}

/*! animated loader */
.r_loader {
  transition: all .3s;
  visibility: hidden;
  opacity: 0;
  z-index: 9991;
  width: 11.75rem;
  height: 11.75rem;
  margin: -5.875rem 0 0 -5.875rem;
  position: fixed;
  left: 50%;
  top: 50%;
  -webkit-transform: scale(.33);
  transform: scale(.33)
}

.r_loader>i {
  font-style: normal;
  display: block;
  top: 5rem;
  left: 5.8125rem;
  width: .25rem;
  height: 1.875rem;
  background: #888;
  -webkit-animation: fadeOut 1s linear infinite;
  animation: fadeOut 1s linear infinite;
  border-radius: .625rem;
  position: absolute
}

.r_loader>i:nth-of-type(1) {
  -webkit-transform: rotate(0) translate(0, -3.75rem);
  transform: rotate(0) translate(0, -3.75rem);
  -webkit-animation-delay: -.5s;
  animation-delay: -.5s
}

.r_loader>i:nth-of-type(2) {
  -webkit-transform: rotate(30deg) translate(0, -3.75rem);
  transform: rotate(30deg) translate(0, -3.75rem);
  -webkit-animation-delay: -.4166666667s;
  animation-delay: -.4166666667s
}

.r_loader>i:nth-of-type(3) {
  -webkit-transform: rotate(60deg) translate(0, -3.75rem);
  transform: rotate(60deg) translate(0, -3.75rem);
  -webkit-animation-delay: -.3333333333s;
  animation-delay: -.3333333333s
}

.r_loader>i:nth-of-type(4) {
  -webkit-transform: rotate(90deg) translate(0, -3.75rem);
  transform: rotate(90deg) translate(0, -3.75rem);
  -webkit-animation-delay: -.25s;
  animation-delay: -.25s
}

.r_loader>i:nth-of-type(5) {
  -webkit-transform: rotate(120deg) translate(0, -3.75rem);
  transform: rotate(120deg) translate(0, -3.75rem);
  -webkit-animation-delay: -.1666666667s;
  animation-delay: -.1666666667s
}

.r_loader>i:nth-of-type(6) {
  -webkit-transform: rotate(150deg) translate(0, -3.75rem);
  transform: rotate(150deg) translate(0, -3.75rem);
  -webkit-animation-delay: -.0833333333s;
  animation-delay: -.0833333333s
}

.r_loader>i:nth-of-type(7) {
  -webkit-transform: rotate(180deg) translate(0, -3.75rem);
  transform: rotate(180deg) translate(0, -3.75rem);
  -webkit-animation-delay: 0s;
  animation-delay: 0s
}

.r_loader>i:nth-of-type(8) {
  -webkit-transform: rotate(210deg) translate(0, -3.75rem);
  transform: rotate(210deg) translate(0, -3.75rem);
  -webkit-animation-delay: .0833333333s;
  animation-delay: .0833333333s
}

.r_loader>i:nth-of-type(9) {
  -webkit-transform: rotate(240deg) translate(0, -3.75rem);
  transform: rotate(240deg) translate(0, -3.75rem);
  -webkit-animation-delay: .1666666667s;
  animation-delay: .1666666667s
}

.r_loader>i:nth-of-type(10) {
  -webkit-transform: rotate(270deg) translate(0, -3.75rem);
  transform: rotate(270deg) translate(0, -3.75rem);
  -webkit-animation-delay: .25s;
  animation-delay: .25s
}

.r_loader>i:nth-of-type(11) {
  -webkit-transform: rotate(300deg) translate(0, -3.75rem);
  transform: rotate(300deg) translate(0, -3.75rem);
  -webkit-animation-delay: .3333333333s;
  animation-delay: .3333333333s
}

.r_loader>i:nth-of-type(12) {
  -webkit-transform: rotate(330deg) translate(0, -3.75rem);
  transform: rotate(330deg) translate(0, -3.75rem);
  -webkit-animation-delay: .4166666667s;
  animation-delay: .4166666667s
}

/*! show loader */
.js-loader-show .r_loader {
  opacity: 1;
  visibility: visible
}

/*! 
------------------------------------------
POPUPS
------------------------------------------
*/
/*! default popups */
.popup {
  transition: opacity .4s ease-in-out;
  visibility: hidden;
  z-index: 9991;
  opacity: 0;
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  overflow-y: auto;
  padding: 20px;
  background: var(--layer-bg)
}

@supports(height:100dvh) {
  .popup {
    height: 100dvh
  }
}

.popup.is-align-top {
  align-items: flex-start
}

.popup .container {
  display: flex;
  height: 100%;
  position: relative;
  align-items: flex-start
}

@media(min-width:576px) {
  .popup .container {
    align-items: center
  }
}

.popup .popup__layer {
  transition-property: opacity;
  transition-duration: .25s, 0s;
  transition-delay: 0s, .25s;
  opacity: 0;
  visibility: hidden;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 901;
  -webkit-backdrop-filter: unset;
  backdrop-filter: unset
}

.popup .popup__inner {
  width: 100%;
  transition: all .4s;
  opacity: 0;
  z-index: 2;
  position: relative;
  overflow: hidden;
  max-height: 100%;
  display: flex;
  margin: 0 auto;
  flex-direction: column;
  justify-content: space-around;
  padding: 15px
}

.popup .popup__header {
  margin-bottom: 15px
}

.popup .popup__title {
  position: relative;
  color: var(--color-main);
  margin-bottom: 0
}

@media(min-width:576px) {
  .popup .popup__title br {
    display: none
  }
}

.popup .popup__subtitle {
  font-weight: 300
}

@media(min-width:576px) {
  .popup .popup__subtitle {
    font-size: 18px
  }
}

.popup .popup__close {
  position: absolute;
  display: block;
  right: 12px;
  top: 12px;
  left: auto;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all .6s;
  z-index: 9;
  color: #809b8f
}

.popup .popup__close::before {
  font-size: 20px;
  line-height: 0;
  cursor: pointer;
  font-family: var(--font-icons);
  content: ""
}

.popup .popup__close:hover {
  color: var(--color-error)
}

.popup .alert--wrap {
  padding: 20px
}

.popup .popup__state {
  display: none
}

.popup.is-shown:not(.is-shown-success):not(.is-shown-error):not(.is-shown-shops) .popup__state--default {
  display: block
}

.popup.is-shown-success .popup__state--default,
.popup.is-shown-success .popup__state--error {
  display: none
}

.popup.is-shown-error .popup__state--default,
.popup.is-shown-error .popup__state--success {
  display: none
}

.popup--window {
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px)
}

.popup--window .container {
  padding: 0;
  height: 100%
}

.popup--window .popup__header {
  padding-top: 55px;
  padding-bottom: 15px
}

.popup--window .popup__content {
  overflow-y: auto;
  padding: 15px;
  flex: 1
}

.popup--window .popup__content .form {
  flex: 1;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-around
}

.popup--window .popup__inner {
  opacity: 0;
  -webkit-transform: scale(.9);
  transform: scale(.9);
  z-index: 902!important;
  transition: all .3s;
  text-align: center;
  background: #fff
}

@media(max-width:575.98px) {
  .popup--window.is-sm-fullscreen:not(.is-complete) {
    padding: 0;
    align-items: flex-start
  }

  .popup--window.is-sm-fullscreen:not(.is-complete) .popup__inner {
    height: 100%
  }
}

.popup--slide {
  overflow: hidden
}

@media(max-width:600px) {
  .popup--slide {
    -webkit-backdrop-filter: unset;
    backdrop-filter: unset
  }
}

.popup--slide .popup__header {
  padding: 0 35px
}

.popup--slide .popup__content {
  padding: 15px 35px;
  overflow: hidden;
  overflow-y: auto
}

.popup--slide .popup__inner {
  padding: 0;
  padding-top: 35px;
  display: flex;
  flex-direction: column;
  position: fixed;
  justify-content: center;
  left: auto;
  top: 0;
  z-index: 903;
  background: #fff;
  width: 100%;
  max-width: 600px;
  box-shadow: 0 1.25rem 1.25rem rgba(0, 0, 0, .1);
  color: var(--body-text);
  height: 100vh
}

@supports(height:1dvh) {
  .popup--slide .popup__inner {
    height: 100dvh
  }
}

.popup--slide-right .popup__inner {
  left: auto;
  right: 0;
  -webkit-transform: translateX(100%);
  transform: translateX(100%)
}

.popup--slide-left {
  padding-left: 0
}

.popup--slide-left .popup__inner {
  right: auto;
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%)
}

.popup.is-shown-error .popup__title,
.popup.is-shown-success .popup__title {
  --min: 25px
}

.popup.is-shown-error .popup__header,
.popup.is-shown-success .popup__header {
  padding: 0;
  padding-top: 20px
}

.popup.is-shown-error .popup__state,
.popup.is-shown-success .popup__state {
  display: none !important
}

.popup.is-shown-error .popup__inner,
.popup.is-shown-success .popup__inner {
  padding: 50px 10px 50px 10px;
  text-align: center;
  max-width: 480px !important
}

@media(min-width:576px) {

  .popup.is-shown-error .popup__inner,
  .popup.is-shown-success .popup__inner {
    padding: 35px;
    padding-bottom: 25px
  }
}

.popup.is-shown-error .popup__inner .editor,
.popup.is-shown-success .popup__inner .editor {
  font-size: 16px;
  margin-bottom: 30px
}

.popup.is-shown-error .popup__inner .hint,
.popup.is-shown-success .popup__inner .hint {
  font-size: 12px;
  font-weight: 300;
  color: #afafaf
}

.popup.is-shown-success .popup__state--success {
  display: block !important
}

.popup.is-shown-error .popup__state--error {
  display: block !important
}

/*! popup show */
.js-popup-show {
  overflow: hidden;
  transition: opacity .1s ease-in-out
}

.js-popup-show.is-no-touchdevice {
  padding-right: var(--scrollbar-width)
}

.js-popup-show.is-no-touchdevice .header {
  padding-right: var(--scrollbar-width)
}

.js-popup-show.is-no-touchdevice .r_toolbox {
  margin-right: var(--scrollbar-width)
}

@media(max-width:767.98px) {
  .js-popup-show.is-no-touchdevice .product .product__buy {
    padding-right: var(--scrollbar-width)
  }
}

.js-popup-show .popup.is-shown {
  z-index: 999;
  opacity: 1;
  visibility: visible
}

.js-popup-show .popup.is-shown .popup__layer {
  opacity: 1;
  visibility: visible
}

.js-popup-show .popup.is-shown .popup__inner {
  visibility: visible;
  opacity: 1
}

.js-popup-show .popup--slide-left.is-shown .popup__inner {
  -webkit-transform: translateX(0);
  transform: translateX(0)
}

.js-popup-show .popup--slide-right.is-shown .popup__inner {
  -webkit-transform: translateX(0);
  transform: translateX(0)
}

.js-popup-show .popup--window.is-shown .popup__inner {
  -webkit-transform: scale(1);
  transform: scale(1);
  margin-bottom: 0
}

@media(max-width:575.98px) {
  .js-popup-show .popup--filter.is-shown .popup__inner {
    -webkit-transform: translateY(60px);
    transform: translateY(60px)
  }
}

.popup--cart .popup__inner {
  padding: 30px 10px 20px 10px;
  text-align: center;
  max-width: 480px !important
}

@media(min-width:576px) {
  .popup--cart .popup__inner {
    padding: 35px;
    padding-bottom: 25px
  }
}

.popup--cart .popup__header {
  padding-top: 0;
  padding-bottom: 0;
  margin-bottom: 10px
}

.popup--cart .popup__header .popup__title {
  --min: 22px;
  --val: 1.75vw;
  --max: 1.75rem
}

.popup--cart .popup__header .popup__title br {
  display: block
}

.popup--cart .added__buttons {
  text-align: center;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  flex-direction: column
}

.popup--cart .added__buttons .btn {
  width: 100%;
  height: 50px
}

.popup--cart .added__buttons .btn:not(.btn--link) {
  margin-bottom: 8px
}

.popup--cart .added__buttons .btn--link {
  text-underline-offset: 2px;
  text-decoration-thickness: 1px
}

.popup--toolbar .popup__inner {
  border-bottom: 30px solid var(--color-main)
}

.popup--toolbar .links {
  font-size: 22px;
  font-weight: 400
}

.popup--toolbar .links .links__item {
  padding-top: min(max(20px, 5vw), 5rem)
}

.popup--toolbar .links .links__item .links__item_link {
  text-decoration: underline;
  cursor: pointer;
  color: var(--body-text)
}

.popup--toolbar .links .links__item .links__item_link:hover {
  text-decoration: none
}

.popup--wishlist-clear .popup__inner {
  max-width: 650px
}

.popup--wishlist-clear .popup__title {
  --min: 16px;
  --val: 1.625vw;
  --max: 26px;
  font-weight: 500
}

.popup--wishlist-clear .popup__title br {
  display: none
}

@media(min-width:576px) {
  .popup--wishlist-clear .popup__title br {
    display: block
  }
}

@media(max-width:575.98px) {
  .popup--wishlist-clear .popup__content {
    padding: 0 0 40px 0
  }
}

.popup--wishlist-clear .buttons {
  width: 100%;
  display: flex;
  align-items: center
}

@media(min-width:576px) {
  .popup--wishlist-clear .buttons {
    padding: 0 15% 30px 15%
  }
}

.popup--wishlist-clear .buttons .buttons__item {
  padding: 5px 8px;
  flex: 1
}

@media(min-width:576px) {
  .popup--wishlist-clear .buttons .buttons__item {
    padding: 5px 10px
  }
}

.popup--wishlist-clear .buttons .buttons__item .btn {
  width: 100%;
  min-width: auto
}

@media(max-width:575.98px) {
  .popup--filter {
    -webkit-backdrop-filter: unset;
    backdrop-filter: unset;
    background: rgba(0, 0, 0, 0);
    transition: all .2s
  }
}

.popup--filter .popup__inner {
  padding-top: 50px;
  justify-content: space-between
}

@media(max-width:575.98px) {
  .popup--filter .popup__inner {
    transition: all .3s;
    box-shadow: none;
    -webkit-transform: translateY(32px);
    transform: translateY(32px);
    left: 0;
    height: calc(100vh - 60px)
  }

  @supports(height:1dvh) {
    .popup--filter .popup__inner {
      height: calc(100vh - 60px)
    }
  }
}

.popup--filter .popup__content {
  padding: 20px 25px
}

.popup--filter .popup__footer {
  display: none
}

.popup--filter .popup__footer.is-shown {
  display: block
}

@media(max-width:575.98px) {

  .popup--appointment,
  .popup--callback,
  .popup--consultation,
  .popup--customsize {
    border-bottom: 30px solid var(--color-main)
  }
}

.popup--appointment .popup__header,
.popup--callback .popup__header,
.popup--consultation .popup__header,
.popup--customsize .popup__header {
  margin-bottom: 0
}

.popup--appointment .popup__inner,
.popup--callback .popup__inner,
.popup--consultation .popup__inner,
.popup--customsize .popup__inner {
  width: 100%;
  max-width: 880px
}

.popup--consultation .popup__header {
  padding-bottom: 0
}

@media(max-width:575.98px) {
  .popup--wishlist-appointment {
    padding: 0
  }
}

.popup--wishlist-appointment .section--contacts-shops .place {
  transition: all .3s;
  padding: 15px
}

@media(max-width:1199.98px) {
  .popup--wishlist-appointment .section--contacts-shops .place:not(:last-child) {
    margin-bottom: 5px
  }
}

.popup--wishlist-appointment .section--contacts-shops .place .place__title {
  margin-bottom: 8px
}

.popup--wishlist-appointment .section--contacts-shops .place .place__title h3 {
  --val: 1.375vw;
  --max: 22px
}

.popup--wishlist-appointment .section--contacts-shops .place .place__desc {
  font-size: 16px;
  line-height: 130%;
  margin-bottom: 5px
}

.popup--wishlist-appointment .section--contacts-shops .place .place__metro {
  font-size: 14px;
  margin-bottom: 5px
}

.popup--wishlist-appointment .section--contacts-shops .place .place__metro .link--metro::before {
  font-size: 34px
}

.popup--wishlist-appointment .section--contacts-shops .place .place__worktime {
  margin-bottom: 5px
}

.popup--wishlist-appointment .section--contacts-shops .place .place__email {
  font-size: 16px
}

@media(max-width:991.98px) {
  .popup--wishlist-appointment .section--contacts-shops .place .col {
    display: block
  }
}

.popup--wishlist-appointment .section--contacts-shops .place .col--image img {
  width: 100%
}

@media(min-width:992px) {
  .popup--wishlist-appointment .section--contacts-shops .place .col--image {
    max-width: 300px
  }
}

@media(min-width:1200px) {
  .popup--wishlist-appointment .section--contacts-shops .place .col--image {
    max-width: 370px
  }
}

@media(max-width:991.98px) {
  .popup--wishlist-appointment .section--contacts-shops .place .col--desc {
    margin-bottom: 20px
  }
}

@media(min-width:992px) {
  .popup--wishlist-appointment .section--contacts-shops .place .col--desc {
    padding-left: 35px;
    padding-right: 30px
  }
}

@media(max-width:991.98px) {
  .popup--wishlist-appointment .section--contacts-shops .place .col--choose .btn {
    width: 100%
  }
}

@media(min-width:992px) {
  .popup--wishlist-appointment .section--contacts-shops .place .col--choose {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 20%
  }
}

@media(min-width:1200px) {
  .popup--wishlist-appointment .section--contacts-shops .place .col--choose {
    padding-right: 50px
  }
}

.popup--wishlist-appointment .section--contacts-shops .place:hover {
  background: #f2f2f2
}

.popup--wishlist-appointment .productsGrid--wishlist {
  position: relative;
  margin: 0 10px 30px 10px
}

@media(min-width:576px) {
  .popup--wishlist-appointment .productsGrid--wishlist {
    margin-left: 15px;
    margin-right: 15px;
    padding-left: 50px;
    padding-right: 50px
  }
}

.popup--wishlist-appointment .shops__choose .shops__choose_shop {
  margin-bottom: 8px
}

@media(min-width:576px) {
  .popup--wishlist-appointment .shops__choose .shops__choose_shop {
    margin-bottom: 17px
  }
}

.popup--wishlist-appointment .shops__choose .shops__choose_shop .c_input .c_input__control {
  display: none
}

.popup--wishlist-appointment .shops__choose .shops__choose_shop .c_input .c_input__label {
  display: flex;
  align-items: center;
  font-size: 18px;
  font-weight: 400;
  padding-left: 0
}

.popup--wishlist-appointment .shops__choose .shops__choose_onmap {
  font-weight: 300;
  font-size: 13px
}

@media(min-width:576px) {
  .popup--wishlist-appointment .shops__choose .shops__choose_onmap {
    font-size: 16px
  }
}

.popup--wishlist-appointment .is-error .shops__choose .c_input .c_input__label::before,
.popup--wishlist-appointment .is-success .shops__choose .c_input .c_input__label::before {
  font-family: var(--font-icons);
  font-size: 20px;
  font-weight: 400;
  margin-right: 5px
}

.popup--wishlist-appointment .is-error .shops__choose .c_input .c_input__label {
  color: var(--color-error)
}

.popup--wishlist-appointment .is-error .shops__choose .c_input .c_input__label::before {
  content: ""
}

.popup--wishlist-appointment .is-success .shops__choose .c_input .c_input__label {
  color: var(--color-success) !important
}

.popup--wishlist-appointment .is-success .shops__choose .c_input .c_input__label::before {
  content: "" !important
}

.popup--wishlist-appointment .popup__header {
  padding-top: 30px;
  text-align: center;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 0
}

@media(min-width:576px) {
  .popup--wishlist-appointment .popup__header {
    padding-left: 30px;
    padding-right: 30px
  }
}

.popup--wishlist-appointment .container {
  position: unset
}

.popup--wishlist-appointment .popupMapContent {
  padding-top: 65px
}

.popup--wishlist-appointment .shops__container .shops__view {
  position: absolute;
  top: 0;
  left: 500px;
  height: 80px;
  display: flex;
  align-items: center;
  font-size: 16px;
  margin-bottom: 0
}

.popup--wishlist-appointment .shops__container .shops__view .shops__view_item {
  margin-right: 26px
}

.popup--wishlist-appointment .shops__selector {
  height: 80px;
  padding: 15px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  display: flex;
  align-items: center;
  background: #fff
}

.popup--wishlist-appointment .shops__selector .shops__selector_title {
  margin-bottom: 0;
  margin-right: 15px;
  font-size: 16px
}

.popup--wishlist-appointment .section {
  margin-bottom: 0
}

.popup--wishlist-appointment .popup__inner {
  height: auto;
  max-height: 100%;
  text-align: left
}

.popup--wishlist-appointment .popup__state {
  display: none;
  width: 100%;
  max-height: 100%;
  overflow: hidden;
  overflow-y: auto
}

.popup--wishlist-appointment .popup__state .popup__content {
  overflow: hidden;
  overflow-y: auto;
  max-height: 100%
}

.popup--wishlist-appointment .map .map__item {
  height: calc(100vh - 135px) !important
}

.popup--wishlist-appointment.is-shown-default .popup__state--default,
.popup--wishlist-appointment.is-shown-shops .popup__state--shops,
.popup--wishlist-appointment.is-shown-success .popup__state--success {
  display: block
}

/*! custom popups */
@media(min-width:1400px) {
  .popup--xl .popup__inner {
    max-width: 1140px
  }
}

@media(min-width:1200px) {
  .popup--xl .popup__inner {
    max-width: 960px
  }
}

@media(min-width:768px) {
  .popup--md .popup__inner {
    max-width: 570px
  }

  .popup--lg .popup__inner {
    max-width: 650px
  }
}

@media(min-width:576px) {
  .popup--sm .popup__inner {
    max-width: 360px
  }
}

/*! default cslide popup */
.c_slide--base {
  display: flex;
  flex-direction: column;
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  z-index: 904;
  background: #fff;
  width: 100%;
  opacity: 0;
  visibility: hidden;
  transition: all .3s;
  box-shadow: 0 1.25rem 1.25rem rgba(0, 0, 0, .1);
  color: var(--body-text);
  height: 100vh
}

@supports(height:1dvh) {
  .c_slide--base {
    height: 100dvh
  }
}

.c_slide--base .c_slide__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  gap: 20px;
  padding: 0 15px;
  flex: 0 0 60px;
  border-bottom: 1px solid #ede8e6
}

@media(min-width:1400px) {
  .c_slide--base .c_slide__header {
    flex: 0 0 80px;
    padding: 0 40px
  }
}

.c_slide--base .c_slide__header .c_slide__header_title {
  display: flex;
  align-items: center;
  font-size: 18px;
  font-weight: 500
}

@media(min-width:1200px) {
  .c_slide--base .c_slide__header .c_slide__header_title {
    font-size: 24px
  }
}

.c_slide--base .c_slide__header .c_slide__header_title::before {
  line-height: 0;
  font-family: var(--font-icons);
  font-size: 18px;
  content: "";
  margin-right: 10px
}

.c_slide--base .c_slide__header .c_slide__header_close {
  font-weight: 400;
  cursor: pointer;
  z-index: 8;
  font-size: 16px
}

@media(min-width:576px) {
  .c_slide--base .c_slide__header .c_slide__header_close {
    position: absolute;
    left: -50px;
    color: #fff
  }
}

@media(min-width:576px) {
  .c_slide--base .c_slide__header .c_slide__header_close {
    font-size: 22px
  }
}

.c_slide--base .c_slide__header .c_slide__header_close::after {
  font-family: var(--font-icons);
  content: ""
}

.c_slide--base .c_slide__inner {
  height: 100%;
  overflow: hidden
}

.c_slide--base .c_slide__inner .c_slide__content {
  height: 100vh;
  overflow-y: auto
}

@media(min-width:576px) {
  .c_slide--base.is-pos-right {
    left: auto;
    right: 0;
    -webkit-transform: translateX(100%);
    transform: translateX(100%)
  }

  .c_slide--base.is-pos-left {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    right: auto
  }

  .c_slide--base.is-pos-top {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    left: auto
  }
}

.c_slide--header-menu {
  background: #fff;
  max-width: 400px
}

.c_slide--header-menu .c_slide__inner {
  padding: 0
}

.js-show-filter .header,
.with-fancybox .header {
  right: var(--scrollbar-width)
}

.js-show-filter {
  padding-right: var(--scrollbar-width)
}

.js-show-filter {
  overflow: hidden
}

.js-show-filter .layer {
  opacity: 1;
  visibility: visible;
  z-index: 903
}

.c_slide--header-menu {
  transition: all .4s, opacity .3s, background 0s
}

@media(max-width:575.98px) {
  .c_slide--header-menu {
    transition: all .2s;
    max-width: none;
    right: 0;
    left: 0;
    -webkit-transform: translateY(34px);
    transform: translateY(34px)
  }
}

.js-show-mainmenu {
  overflow: hidden
}

@media(max-width:575.98px) {
  .js-show-mainmenu .header .header__col--logo {
    opacity: 0;
    visibility: hidden
  }

  .js-show-mainmenu .header .userbar .userbar__item {
    display: none
  }

  .js-show-mainmenu .header .userbar .userbar__item--user,
  .js-show-mainmenu .header .userbar .userbar__item--wishlist {
    display: block
  }
}

.js-show-mainmenu .header .mobile__nav_icon {
  transition-duration: .5s;
  background: rgba(0, 0, 0, 0)
}

.js-show-mainmenu .header .mobile__nav_icon::before {
  -webkit-transform: rotateZ(45deg);
  transform: rotateZ(45deg);
  top: 0
}

.js-show-mainmenu .header .mobile__nav_icon::after {
  -webkit-transform: rotateZ(-45deg);
  transform: rotateZ(-45deg);
  top: 0
}

@media(max-width:575.98px) {

  .js-show-mainmenu .header .mobile__nav_icon::after,
  .js-show-mainmenu .header .mobile__nav_icon::before {
    width: 24px
  }
}

.js-show-mainmenu.is-menu-show-1 .c_slide--header-menu,
.js-show-mainmenu.is-menu-show-2 .c_slide--header-menu {
  background: #fff
}

.js-show-mainmenu.is-menu-show-1-megamenu .c_slide--header-menu,
.js-show-mainmenu:not(.is-menu-show-1, .is-menu-show-2) .c_slide--header-menu {
  background: var(--color-main)
}

.js-show-mainmenu.is-menu-show-1-megamenu .c_slide--header-menu .nav__wrapper--static a,
.js-show-mainmenu:not(.is-menu-show-1, .is-menu-show-2) .c_slide--header-menu .nav__wrapper--static a {
  color: #fff
}

.js-show-mainmenu .c_slide--header-menu {
  visibility: visible;
  opacity: 1
}

@media(min-width:576px) {
  .js-show-mainmenu .c_slide--header-menu {
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}

.js-show-mainmenu .c_slide--header-menu a {
  color: #000
}

.js-show-mainmenu .c_slide--header-menu a:hover {
  text-decoration: underline;
  text-underline-offset: 4px
}

.js-show-mainmenu .c_slide--header-menu .c_slide__footer {
  margin: 0 20px;
  padding-top: 20px;
  border-top: 1px solid var(--color-secondary);
  font-size: 14px;
  font-weight: 700
}

.js-show-mainmenu .c_slide--header-menu .c_slide__footer a {
  color: var(--color-secondary);
  text-decoration: none
}

.js-show-mainmenu .c_slide--header-menu .c_slide__content {
  height: 100%;
  max-height: calc(100vh - 75px)
}

@supports(height:1dvh) {
  .js-show-mainmenu .c_slide--header-menu .c_slide__content {
    max-height: calc(100dvh - 75px)
  }
}

@media(max-width:575.98px) {
  .js-show-mainmenu .c_slide--header-menu {
    -webkit-transform: translateY(60px);
    transform: translateY(60px);
    height: calc(100vh - 60px)
  }

  @supports(height:1dvh) {
    .js-show-mainmenu .c_slide--header-menu {
      height: calc(100dvh - 60px)
    }
  }

  .js-show-mainmenu .c_slide--header-menu .c_slide__content {
    height: calc(100vh - 60px - 75px)
  }

  @supports(height:1dvh) {
    .js-show-mainmenu .c_slide--header-menu .c_slide__content {
      height: calc(100dvh - 60px - 75px)
    }
  }
}

@media(min-width:576px) {
  .js-show-mainmenu .layer {
    z-index: 903;
    opacity: 1;
    visibility: visible
  }
}

.js-show-mainmenu.is-no-touchdevice {
  padding-right: var(--scrollbar-width)
}

.js-show-mainmenu.is-no-touchdevice .header {
  padding-right: var(--scrollbar-width)
}

.js-show-mainmenu.is-no-touchdevice .r_toolbox {
  margin-right: var(--scrollbar-width)
}

.search__popup {
  position: fixed;
  left: 0;
  top: -20px;
  opacity: 0;
  visibility: hidden;
  z-index: 902;
  background: #fff;
  width: 100%;
  transition: all .3s
}

.search__popup .search {
  width: 100%
}

.search__popup .search .search__form {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%
}

.search__popup .search .search__item--input {
  flex: 1
}

.search__popup .search .search__item--input .search__item_input {
  height: 64px;
  width: 100%;
  padding-right: 36px
}

@media(min-width:992px) {
  .search__popup .search .search__item--input .search__item_input {
    height: 80px;
    padding-right: 60px
  }
}

.search__popup .search .search__item_btn {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 20px;
  width: 28px;
  height: 28px
}

@media(min-width:992px) {
  .search__popup .search .search__item_btn {
    width: 48px;
    height: 48px;
    font-size: 26px
  }
}

.search__popup .search .search__item_btn::before {
  font-family: var(--font-icons);
  content: ""
}

.search__popup .search .search__item_btn:hover {
  opacity: .8
}

.js-show-search {
  overflow: hidden
}

.js-show-search .search__popup {
  top: 0;
  opacity: 1;
  visibility: visible;
  z-index: 993;
  box-shadow: 0 0 10px rgba(0, 0, 0, .1)
}

.js-show-search .layer {
  opacity: 1;
  visibility: visible;
  z-index: 903
}

.js-show-search.is-no-touchdevice {
  padding-right: var(--scrollbar-width)
}

.js-show-search.is-no-touchdevice .header {
  padding-right: var(--scrollbar-width)
}

.js-show-search.is-no-touchdevice .r_toolbox {
  margin-right: var(--scrollbar-width)
}

/*! main banner */
.section--banner,
.section--mainbanner,
.section--textwithimage {
  max-width: 1920px;
  margin-left: auto;
  margin-right: auto
}

.mainBanner {
  position: relative;
  overflow: hidden
}

.mainBanner .item {
  color: #fff;
  display: flex;
  position: relative;
  background-size: cover;
  background-position: center top;
  padding: 90px 0 50px 0;
  align-items: flex-end;
  transition: all .3s;
  height: 100vh
}

@media(min-width:1200px) {
  .mainBanner .item {
    align-items: center;
    padding-top: min(max(240px, 25vw), 25rem)
  }
}

.mainBanner .item .item__image {
  background: var(--body-text)
}

.mainBanner .item .item__image img {
  position: absolute;
  display: block;
  height: 100vh
}

.mainBanner .item .item__content {
  position: relative;
  z-index: 2
}

@media(min-width:992px) {
  .mainBanner .item .item__content {
    max-width: 60%
  }
}

@media(min-width:1200px) {
  .mainBanner .item .item__content {
    max-width: 40%
  }
}

.mainBanner .item .item__catalog {
  display: none
}

@media(min-width:992px) {
  .mainBanner .item .item__catalog {
    display: block;
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 20px
  }
}

.mainBanner .item .item__title {
  transition: all .5s;
  -webkit-animation: fadeInDown .5s;
  animation: fadeInDown .5s;
  font-size: min(max(30px, 3.75vw), 3.75rem);
  font-family: var(--font-secondary);
  color: var(--color-secondary);
  top: 0;
  margin-bottom: 20px
}

@media(min-width:1200px) {
  .mainBanner .item .item__title {
    font-size: 60px;
    margin-bottom: 24px
  }
}

.mainBanner .item .item__text {
  margin-bottom: 24px
}

.mainBanner .item .btn {
  min-width: 144px;
  font-size: 14px;
  padding: 0
}

@media(min-width:1200px) {
  .mainBanner .item .btn {
    font-size: 16px;
    min-width: 206px
  }
}

@media(max-width:1199.98px) {
  .mainBanner .item .btn {
    height: 36px;
    font-size: 12px
  }
}

.mainBanner .item.is-light .btn {
  border-color: #fff;
  color: #fff
}

.mainBanner .item.is-light .btn:hover {
  background: #fff;
  color: var(--body-text)
}

.mainBanner .swiper__buttons {
  display: none
}

@media(min-width:1200px) {
  .mainBanner .swiper__buttons {
    display: flex;
    position: absolute;
    top: 50%;
    width: 100%
  }
}

.mainBanner .swiper__pagination {
  bottom: 16px
}

@media(min-width:1200px) {
  .mainBanner .swiper__pagination {
    bottom: 30px
  }
}

.is-fixed-header .mainBanner .item .item__content .item__title {
  top: -40px
}

.is-fixed-header .mainBanner .item .item__content .item__badge {
  right: 5%
}

.section--catalog-top {
  margin-bottom: 40px
}

.section--catalog-top .catalog__controls {
  display: flex;
  justify-content: space-between;
  align-items: center
}

.section--catalog-top .catalog__controls_qty {
  font-size: 14px;
  font-weight: 300
}

.filter .filter__title {
  text-transform: uppercase;
  font-size: 18px;
  font-weight: 400;
  margin-bottom: 20px
}

@media(min-width:576px) {
  .filter .filter__title {
    font-size: 22px
  }
}

.filter--sorting {
  margin-bottom: 25px
}

@media(min-width:576px) {
  .filter--sorting {
    margin-bottom: 80px
  }
}

.filter--sorting .filter__title {
  margin-bottom: 15px
}

@media(min-width:576px) {
  .filter--sorting .filter__title {
    margin-bottom: 40px
  }
}

@media(min-width:576px) {
  .filter .sorter {
    display: flex;
    flex-wrap: wrap
  }
}

.filter .sorter .sorter__item {
  margin: 0 40px 15px 0
}

.filter .sorter .sorter__item:last-child {
  margin-right: 0
}

.filter .filter__group {
  margin-bottom: 20px
}

.filter .filter__group .filter__group_title {
  padding-bottom: 8px;
  border-bottom: 1px solid #4c4c4c;
  font-weight: 300;
  padding-right: 20px;
  cursor: pointer;
  position: relative
}

@media(min-width:768px) {
  .filter .filter__group .filter__group_title {
    font-size: 20px
  }
}

.filter .filter__group .filter__group_title::after {
  font-family: var(--font-icons);
  content: "";
  -webkit-transform: translate(0, -50%) rotate(180deg);
  transform: translate(0, -50%) rotate(180deg);
  position: absolute;
  right: 0;
  top: 50%;
  font-size: 9px;
  transition: all .3s
}

.filter .filter__group .filter__group_content {
  opacity: 0;
  visibility: hidden;
  height: 0;
  overflow: hidden;
  transition: all .3s
}

.filter .filter__group .list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  gap: 10px
}

@media(min-width:576px) {
  .filter .filter__group .list {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr
  }
}

@media(min-width:768px) {
  .filter .filter__group .list {
    gap: 20px
  }
}

.filter .filter__group.is-open .filter__group_title {
  font-weight: 400
}

.filter .filter__group.is-open .filter__group_title::after {
  -webkit-transform: translate(0, -50%) rotate(0);
  transform: translate(0, -50%) rotate(0)
}

.filter .filter__group.is-open .filter__group_content {
  padding: 20px 0;
  opacity: 1;
  visibility: visible;
  height: auto
}

.filter .filter__group--size .list {
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr)
}

@media(min-width:576px) {
  .filter .filter__group--size .list {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr)
  }
}

@media(min-width:992px) {
  .filter .filter__group--size .list {
    -ms-grid-columns: (1fr)[4];
    grid-template-columns: repeat(4, 1fr)
  }
}

.filter__buttons {
  padding: 20px 25px
}

.filter__buttons .btn {
  height: 50px;
  width: 100%
}

/*! 
------------------------------------------
STATIC PAGES
------------------------------------------
*/
/*! cart */
.cart {
  padding-bottom: 20px
}

@media(min-width:992px) {
  .cart {
    display: flex
  }
}

.cart .cart__content {
  flex: 1
}

@media(min-width:992px) {
  .cart .cart__content {
    padding-right: min(max(20px, 3.75vw), 3.75rem)
  }
}

.cart .cart__sidebar {
  flex: 0 0 35%
}

@media(min-width:1400px) {
  .cart .cart__sidebar {
    flex: 0 0 450px
  }

  .cart .cart__sidebar.is-sticky>* {
    top: 127px
  }
}

@media(max-width:575.98px) {
  .cart .cart__sidebar {
    margin-left: -15px;
    margin-right: -15px
  }
}

.cart .sidebar {
  background: #fafafa;
  padding: 55px 15px
}

@media(min-width:992px) {
  .cart .sidebar {
    padding-left: 20px;
    padding-right: 20px
  }
}

@media(min-width:1200px) {
  .cart .sidebar {
    padding-left: min(max(20px, 3.75vw), 3.75rem);
    padding-right: min(max(20px, 3.75vw), 3.75rem)
  }
}

.cart .sidebar .totals {
  display: flex;
  flex-direction: column;
  color: var(--color-main)
}

.cart .sidebar .totals .totals__count {
  font-size: 24px;
  margin-bottom: 40px
}

@media(max-width:1199.98px) {
  .cart .sidebar .totals .totals__count {
    display: none
  }
}

.cart .sidebar .totals .totals__price .prices {
  display: block
}

.cart .sidebar .totals .totals__price .prices .prices__row {
  display: flex;
  align-items: center;
  justify-content: flex-end
}

.cart .sidebar .totals .totals__price .prices .prices__row .prices__row_label {
  margin-right: 10px
}

.cart .sidebar .totals .totals__price .prices .prices__row--default {
  color: var(--body-text)
}

.cart .sidebar .totals .totals__price .prices .price--default,
.cart .sidebar .totals .totals__price .prices .prices__row--default .prices__row_label {
  font-size: min(max(20px, 2vw), 32px);
  font-weight: 400
}

.cart .sidebar .totals .totals__price .prices .price--discount {
  color: #888
}

@media(min-width:992px) {
  .cart .sidebar .totals .totals__price .prices .price--discount {
    font-size: 18px
  }
}

@media(min-width:1400px) {
  .cart .sidebar .totals .totals__price .prices .price--discount {
    font-size: 20px
  }
}

.cart .sidebar .promocode {
  margin-bottom: 20px
}

.cart .sidebar .promocode .promocode__title {
  margin-bottom: 20px;
  font-weight: 300
}

.cart .sidebar .promocode .promocode__input {
  border-color: #000;
  text-transform: uppercase;
  padding-right: 50px;
  height: 50px;
  width: 100%
}

.cart .sidebar .promocode .promocode__btn {
  position: absolute;
  height: 50px;
  width: 50px;
  background: rgba(0, 0, 0, 0);
  position: absolute;
  right: 0;
  top: 0;
  transition: all .3s;
  color: var(--body-text)
}

.cart .sidebar .promocode .promocode__btn::before {
  font-family: var(--font-icons);
  content: ""
}

.cart .sidebar .promocode .promocode__btn:hover {
  opacity: .7
}

.cart .sidebar .promocode .form__group {
  position: relative
}

.cart .sidebar .promocode .form__group .form__group_hint {
  flex: 0 0 100%;
  padding-left: 0;
  padding-top: 8px
}

.cart .sidebar .promocode .form__group .form__group_hint {
  display: none
}

.cart .sidebar .promocode .form__group.is-error .promocode__input {
  border-bottom-color: var(--color-error)
}

.cart .sidebar .promocode .form__group.is-error .form__group_hint {
  display: block;
  color: var(--color-error)
}

.cart .sidebar .promocode .form__group.is-success .promocode__input {
  border-bottom-color: var(--color-success)
}

.cart .sidebar .promocode .form__group.is-success .form__group_hint {
  display: block;
  color: var(--color-success)
}

.cart .sidebar .cart__submit {
  padding-top: 20px
}

.cart .sidebar .cart__submit .btn {
  width: 100%;
  border: 0;
  font-size: inherit;
  height: 50px
}

@media(min-width:420px)and (max-width:575px) {
  .cart .sidebar .totals__bottom {
    justify-content: space-between;
    background: var(--color-main);
    height: 56px;
    display: flex
  }

  .cart .sidebar .totals__bottom .cart__submit {
    order: 1;
    padding-top: 0
  }

  .cart .sidebar .totals__bottom .cart__submit .btn {
    height: 56px
  }

  .cart .sidebar .totals__bottom .totals__price {
    order: 2;
    padding-left: 20px;
    padding-right: 20px;
    display: flex;
    align-items: center
  }

  .cart .sidebar .totals__bottom .totals__price .prices {
    color: #ccc;
    height: 50px;
    display: flex;
    align-items: flex-end;
    flex-direction: column;
    justify-content: center
  }

  .cart .sidebar .totals__bottom .totals__price .prices .price {
    color: #fff
  }

  .cart .sidebar .totals__bottom .totals__price .prices .price--discount {
    color: #ccc
  }
}

@media(max-width:991.98px) {
  .cart__items {
    margin-bottom: 20px
  }
}

.cart__items .item {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  border-bottom: 1px solid #d9d9d9;
  padding-bottom: 45px;
  margin-bottom: 15px
}

@media(min-width:768px) {
  .cart__items .item {
    padding-bottom: 30px;
    margin-bottom: 30px
  }
}

.cart__items .item .item__image {
  background: #fafafa;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 100px
}

@media(min-width:1200px) {
  .cart__items .item .item__image {
    flex: 0 0 210px
  }

  .cart__items .item .item__image img {
    background: #fafafa;
    mix-blend-mode: multiply;
    max-height: 210px
  }
}

.cart__items .item .item__title {
  font-weight: 400;
  margin-bottom: min(max(10px, 1.5vw), 25px)
}

@media(min-width:576px) {
  .cart__items .item .item__title {
    font-size: 22px
  }
}

.cart__items .item .item__title .item__title_link {
  text-decoration: none
}

.cart__items .item .item__title .item__title_link:hover {
  text-decoration: underline
}

.cart__items .item .item__desc {
  font-size: 12px;
  margin-bottom: min(max(10px, 1.5vw), 25px);
  font-weight: 300;
  color: #4d4d4d
}

@media(min-width:576px) {
  .cart__items .item .item__desc {
    font-size: inherit
  }
}

.cart__items .item .item__params {
  font-size: 12px
}

@media(min-width:576px) {
  .cart__items .item .item__params {
    font-size: inherit
  }
}

@media(min-width:768px) {
  .cart__items .item .item__params {
    font-size: 18px
  }
}

.cart__items .item .item__params .item__params_item:not(:last-child) {
  margin-bottom: min(max(2px, 1.5vw), 25px)
}

.cart__items .item .item__price .price {
  font-size: 18px;
  font-weight: 400
}

.cart__items .item .item__details {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding-left: 20px
}

.cart__items .item .item__bottom {
  display: flex;
  flex-wrap: wrap
}

@media(min-width:1400px) {
  .cart__items .item .item__bottom {
    justify-content: flex-end;
    flex: 0 0 40%;
    padding-left: 10%
  }
}

@media(max-width:1399.98px) {
  .cart__items .item .item__bottom {
    padding-top: 12px;
    flex: 0 0 100%;
    justify-content: space-between
  }
}

.cart__items .item .item__qty .r_qty {
  border: 0
}

@media(max-width:575.98px) {
  .cart__items .item .item__qty .r_qty {
    height: 30px
  }
}

.cart__items .item .item__qty .r_qty .r_qty__input {
  padding: 0;
  background: #f2f2f2;
  color: #4d4d4d
}

@media(max-width:575.98px) {
  .cart__items .item .item__qty .r_qty .r_qty__input {
    font-size: 16px
  }
}

.cart__items .item .item__totals {
  display: flex;
  justify-content: space-between;
  align-items: flex-end
}

@media(min-width:1400px) {
  .cart__items .item .item__totals {
    flex: 1;
    flex-direction: column
  }
}

@media(max-width:1399.98px) {
  .cart__items .item .item__totals {
    align-items: center
  }
}

@media(min-width:1400px) {
  .cart__items .item .item__totals .prices {
    padding-top: 5px;
    flex-direction: column;
    align-items: flex-end
  }
}

@media(min-width:768px)and (max-width:1399.98px) {
  .cart__items .item .item__totals .prices {
    padding-right: 30px
  }
}

@media(max-width:575.98px) {
  .cart__items .item .item__totals .prices {
    padding-right: 0
  }
}

.cart__items .item .item__totals .prices .price--default {
  font-size: 18px;
  color: #4d4d4d
}

@media(min-width:576px) {
  .cart__items .item .item__totals .prices .price--default {
    font-size: 22px
  }
}

.cart__items .item .item__totals .link {
  color: #4d4d4d
}

@media(max-width:767.98px) {
  .cart__items .item .item__totals .link {
    font-size: 12px;
    font-weight: 300;
    position: absolute;
    left: 0;
    bottom: 15px
  }
}

@media(min-width:768px) {
  .cart__items .item .item__totals .link {
    font-size: 18px;
    font-weight: 400
  }
}

.cart__items .item .item__totals .link:hover {
  text-decoration: underline;
  color: var(--body-text)
}

.blogGrid {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  gap: min(max(1.875rem, 3.75vw), 3.75rem) min(max(.9375rem, 1.875vw), 1.875rem)
}

@media(min-width:992px) {
  .blogGrid {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr
  }
}

.blogGrid .card .card__title {
  margin-bottom: 15px
}

.blogGrid .card .card__title h2 {
  margin-bottom: 0;
  --min: 16px;
  --val: 1.43vw;
  --max: 23px
}

.blogGrid .card .card__title h2 a {
  color: inherit;
  text-decoration: none
}

.blogGrid .card .card__title h2 a:hover {
  text-decoration: underline
}

.blogGrid .card .card__image {
  margin-bottom: 15px
}

@media(min-width:992px) {
  .blogGrid .card .card__image .card__imageSrc {
    transition: all .3s
  }

  .blogGrid .card .card__image .card__imageSrc:hover {
    -webkit-transform: scale(1.05);
    transform: scale(1.05)
  }
}

.blogGrid .card .card__short {
  margin-bottom: 10px;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: .21px;
  font-weight: 300
}

.blogGrid .card .card__date {
  font-size: 14px;
  color: #6b6b6b
}

@media(min-width:992px) {
  .article {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    font-size: 16px
  }
}

.article .article__title * {
  --val: 2.68vw;
  --max: 43px
}

.article .article__title--mobile {
  display: none
}

@media(max-width:991.98px) {
  .article .article__title {
    display: none;
    margin-bottom: 25px
  }

  .article .article__title--mobile {
    display: block;
    text-align: center
  }

  .article .article__title--mobile * {
    --min: 29px;
    letter-spacing: .58px
  }
}

.article .article__text {
  font-size: 18px;
  margin-bottom: 30px
}

@media(min-width:992px) {
  .article .article__text {
    line-height: 150%
  }
}

.article .article__author {
  margin-bottom: 6px
}

@media(max-width:991.98px) {
  .article .article__image img {
    max-height: 440px
  }
}

.article .otherBlogs {
  padding-top: min(max(1.875rem, 3.75vw), 3.75rem);
  padding-bottom: 5px;
  border-bottom: 1px solid #878787;
  font-size: 14px
}

.article .otherBlogs .navs {
  display: flex;
  justify-content: space-between
}

.article .otherBlogs .navs a {
  text-decoration: none
}

@media(max-width:991.98px) {
  .article .otherBlogs .navs a {
    color: #878787
  }
}

.section--payment .payment {
  text-align: center
}

.section--payment .payment .payment__title {
  margin-bottom: 50px;
  color: var(--color-main);
  text-transform: uppercase;
  font-size: 18px
}

@media(min-width:768px) {
  .section--payment .payment .payment__title {
    font-size: 22px
  }
}

.section--payment .payment .payment__list .item:not(:last-child) {
  margin-bottom: 60px
}

.section--payment .payment .payment__list .item__icon {
  margin-bottom: 12px
}

.section--payment .payment .payment__list .item__icon_num {
  display: inline-flex;
  width: 56px;
  height: 56px;
  align-items: center;
  justify-content: center;
  border-radius: 100%;
  background: var(--color-main);
  color: var(--color-secondary);
  font-size: 20px
}

.section--payment .payment .payment__list .item__text {
  font-size: 14px;
  font-weight: 400
}

@media(min-width:576px) {
  .section--payment .payment .payment__list .item__text {
    font-size: 18px
  }
}

@media(min-width:576px) {
  .giftpack {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px
  }
}

.giftpack .item {
  padding-bottom: 20px
}

@media(min-width:576px) {
  .giftpack .item {
    padding: 10px
  }
}

.giftpack .item picture {
  width: 100%;
  height: 100%;
  background: #e7e7e7
}

.giftpack .item picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center
}

.giftpack .item.is-w-50 {
  height: min(max(21.875rem, 41.25vw), 41.25rem)
}

@media(min-width:576px) {
  .giftpack .item.is-w-50 {
    flex: 0 0 50%
  }
}

.giftpack .item.is-w-100 {
  height: min(max(168px, 37.5vw), 37.5rem)
}

@media(min-width:576px) {
  .giftpack .item.is-w-100 {
    flex: 0 0 100%
  }
}

.page--giftcard .section--title .section__header .section__header_subtitle {
  padding-top: min(max(10px, 2.5vw), 2.5rem);
  color: #4d4d4d
}

@media(max-width:991.98px) {
  .page--giftcard .form .form__header {
    margin-bottom: 20px;
    display: block;
    font-weight: 700;
    text-align: center
  }
}

@media(min-width:992px) {
  .page--giftcard .form .form__header {
    display: none
  }
}

.terms .terms__links {
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 35px;
  font-weight: 300;
  gap: 10px 30px
}

@media(min-width:768px) {
  .terms .terms__links {
    font-size: 20px
  }
}

.terms .terms__links .terms__links_item {
  cursor: pointer
}

.terms .terms__links .terms__links_item.is-selected {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px
}

.terms .terms__text {
  transition: all .3s;
  opacity: 0;
  height: 0;
  visibility: hidden;
  font-size: 12px;
  font-weight: 300;
  line-height: 140%
}

@media(min-width:576px) {
  .terms .terms__text {
    font-size: 14px
  }
}

.terms .terms__text.is-selected {
  opacity: 1;
  visibility: visible;
  height: auto
}

.terms .terms__text .fw-500 {
  font-weight: 400;
  font-size: 16px;
  line-height: normal
}

.terms .terms__text ol>li {
  margin-bottom: 30px
}

.terms .terms__text ol>li li {
  margin-bottom: 8px
}

.place:not(:last-child) {
  margin-bottom: 20px
}

@media(min-width:992px) {
  .place:not(:last-child) {
    margin-bottom: 40px
  }
}

@media(min-width:992px) {
  .place {
    display: flex;
    align-items: center
  }
}

.place .col--image {
  margin-bottom: 25px
}

@media(min-width:992px) {
  .place .col--image {
    margin-bottom: 0;
    max-width: 640px;
    flex: 0 0 50%
  }
}

.place .col--choose {
  display: none
}

@media(min-width:992px) {
  .place .col--desc {
    padding-left: 40px;
    flex: 1
  }
}

.place .place__title {
  margin-bottom: 10px
}

@media(min-width:1200px) {
  .place .place__title {
    margin-bottom: 20px
  }
}

.place .place__title>* {
  margin-bottom: 0;
  color: var(--body-text)
}

@media(max-width:1199.98px) {
  .place .place__title>* {
    font-size: 20px
  }
}

@media(max-width:767.98px) {
  .place .place__title>* {
    font-size: 14px
  }
}

.place .place__desc {
  font-weight: 300;
  margin-bottom: 5px
}

@media(min-width:1200px) {
  .place .place__desc {
    font-size: 20px;
    line-height: 160%;
    margin-bottom: 20px
  }
}

.place .place__metro {
  text-transform: uppercase;
  font-weight: 300;
  margin-bottom: 5px;
  font-size: 14px
}

@media(min-width:1200px) {
  .place .place__metro {
    margin-bottom: 20px
  }
}

.place .place__worktime {
  font-weight: 300;
  font-size: 12px;
  margin-bottom: 5px;
  color: gray;
  text-transform: uppercase
}

@media(min-width:1200px) {
  .place .place__worktime {
    font-size: 14px;
    margin-bottom: 10px
  }
}

.place .place__email {
  font-size: 14px;
  font-weight: 400
}

@media(min-width:1200px) {
  .place .place__email {
    font-size: 20px
  }
}

.place .place__email a {
  display: inline-block;
  color: var(--body-text);
  text-underline-position: under;
  text-decoration-thickness: 1px
}

.section--contacts .credentials {
  color: gray
}

@media(max-width:767.98px) {
  .section--contacts .credentials {
    text-align: center
  }
}

@media(min-width:992px) {
  .section--contacts .credentials {
    font-size: 18px
  }
}

.section--contacts .credentials h4 {
  text-transform: uppercase;
  --min: 16px;
  --val: 1.25vw;
  --max: 20px
}

@media(min-width:1200px) {
  .section--contacts .credentials ul {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px
  }
}

.section--contacts .credentials ul li {
  margin-bottom: 20px;
  font-weight: 300
}

@media(min-width:768px) {
  .section--contacts .credentials ul li {
    font-weight: 400;
    display: flex
  }
}

.section--contacts .credentials ul li span:nth-child(1) {
  font-weight: 300;
  display: block
}

@media(max-width:767.98px) {
  .section--contacts .credentials ul li span:nth-child(1) {
    text-transform: uppercase;
    margin-bottom: 5px
  }
}

@media(min-width:768px) {
  .section--contacts .credentials ul li span:nth-child(1) {
    display: inline-block;
    flex: 0 0 295px;
    padding-right: 10px
  }
}

@media(max-width:767.98px) {
  .section--contacts .credentials ul li span:nth-child(2) {
    color: #111
  }
}

.section--contacts .map {
  position: relative
}

.section--contacts .map .map__item {
  width: 100%;
  height: 600px
}

.section--contacts .map .map__controls {
  position: absolute;
  right: 18px;
  bottom: 18px;
  z-index: 99;
  display: flex
}

.section--contacts .map .map__button {
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  min-width: 26px;
  line-height: 0;
  cursor: pointer;
  border: 1px solid var(--color-main);
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 4px;
  transition: all .3s;
  color: var(--color-main)
}

.section--contacts .map .map__button::before {
  font-family: var(--font-icons);
  content: "";
  font-size: 10px
}

.section--contacts .map .map__button--minus::before {
  content: ""
}

.section--contacts .map .map__button:hover {
  background: #fff
}

.section--contacts .ymaps-2-1-79-controls__toolbar,
.section--contacts .ymaps-2-1-79-copyright__wrap,
.section--contacts .ymaps-2-1-79-map-copyrights-promo,
.section--contacts .ymaps-2-1-79-zoom__scale {
  display: none
}

.section--contacts .ymaps-2-1-79-balloon {
  width: 230px
}

@media(min-width:768px) {
  .section--contacts .ymaps-2-1-79-balloon {
    width: 400px
  }
}

@media(min-width:1200px) {
  .section--contacts .ymaps-2-1-79-balloon {
    width: 750px
  }
}

.section--contacts .ymaps-2-1-79-balloon__content>* {
  width: 100% !important
}

.section--contacts .ymaps-2-1-79-ground-pane canvas {
  -webkit-filter: grayscale(1);
  filter: grayscale(1);
  opacity: .9
}

.section--contacts .ymaps-2-1-79-balloon .ymaps-2-1-79-balloon__content {
  padding-left: 10px;
  padding-top: 10px;
  padding-bottom: 10px
}

@media(min-width:768px) {
  .section--contacts .ymaps-2-1-79-balloon .ymaps-2-1-79-balloon__content {
    padding-left: 24px;
    padding-top: 20px;
    padding-bottom: 20px
  }
}

.section--contacts .ymaps-2-1-79-balloon .ymaps-2-1-79-balloon__content>* {
  height: auto !important
}

.section--contacts .ymaps-2-1-79-balloon .place {
  font-family: var(--font-main);
  font-size: 10px
}

@media(min-width:768px) {
  .section--contacts .ymaps-2-1-79-balloon .place {
    font-size: 12px
  }
}

@media(max-width:1199.98px) {
  .section--contacts .ymaps-2-1-79-balloon .place .col--image {
    display: none
  }
}

@media(min-width:1200px) {
  .section--contacts .ymaps-2-1-79-balloon .place .col--image {
    max-width: 270px;
    flex: 0 0 50%
  }
}

.section--contacts .ymaps-2-1-79-balloon .place .col--desc {
  padding-left: 0
}

@media(min-width:1200px) {
  .section--contacts .ymaps-2-1-79-balloon .place .col--desc {
    padding-left: 18px
  }
}

.section--contacts .ymaps-2-1-79-balloon .place .place__title {
  margin-bottom: 4px
}

@media(min-width:768px) {
  .section--contacts .ymaps-2-1-79-balloon .place .place__title {
    margin-bottom: 8px
  }
}

.section--contacts .ymaps-2-1-79-balloon .place .place__title>* {
  font-size: 10px
}

@media(min-width:768px) {
  .section--contacts .ymaps-2-1-79-balloon .place .place__title>* {
    font-size: 14px
  }
}

.section--contacts .ymaps-2-1-79-balloon .place .place__desc,
.section--contacts .ymaps-2-1-79-balloon .place .place__email,
.section--contacts .ymaps-2-1-79-balloon .place .place__metro {
  font-size: 10px;
  margin-bottom: 5px
}

@media(min-width:768px) {

  .section--contacts .ymaps-2-1-79-balloon .place .place__desc,
  .section--contacts .ymaps-2-1-79-balloon .place .place__email,
  .section--contacts .ymaps-2-1-79-balloon .place .place__metro {
    font-size: 12px
  }
}

.section--contacts .ymaps-2-1-79-balloon .place .place__desc {
  line-height: 140%;
  font-weight: 300;
  margin-bottom: 6px
}

.section--contacts .ymaps-2-1-79-balloon .place .place__metro {
  margin-bottom: 6px
}

.section--contacts .ymaps-2-1-79-balloon .place .place__metro .link--metro::before {
  font-size: 20px;
  margin-right: 6px
}

.section--contacts .ymaps-2-1-79-balloon .place .place__worktime {
  font-size: 10px;
  margin-bottom: 0;
  line-height: normal
}

.section--shops-selector {
  display: none;
  margin-bottom: 40px
}

.section--shops-selector.is-shown {
  display: block
}

.shops__selector .shops__selector_title {
  margin-bottom: 16px
}

@media(min-width:768px) {
  .shops__selector .shops__selector_title {
    margin-bottom: 20px;
    font-size: 20px
  }
}

.shops__selector .shops__selector_input {
  width: 100%;
  max-width: 320px
}

.shops__container {
  display: none;
  height: 0;
  overflow: hidden
}

.shops__container.is-shown {
  display: block;
  height: auto
}

.shops__container .shops__view {
  margin-bottom: 40px
}

@media(min-width:768px) {
  .shops__container .shops__view {
    font-size: 20px
  }
}

.shops__container .shops__view .shops__view_item {
  margin-right: 15px;
  color: var(--body-text)
}

@media(min-width:768px) {
  .shops__container .shops__view .shops__view_item {
    margin-right: 40px
  }
}

.shops__container .shops__view .shops__view_item.is-selected {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px
}

.shops__container .shops__item {
  display: none;
  -webkit-animation: fadeInDown .3s;
  animation: fadeInDown .3s
}

.shops__container .shops__item.is-shown {
  display: block
}

.section--wishlist-links .wishlist__header {
  font-weight: 300;
  font-size: 14px;
  text-transform: uppercase
}

@media(min-width:992px) {
  .section--wishlist-links .wishlist__header {
    display: flex;
    justify-content: space-between;
    font-size: 16px
  }
}

@media(min-width:1200px) {
  .section--wishlist-links .wishlist__header {
    font-size: 20px
  }
}

.section--wishlist-links .wishlist__header .item {
  border: 1px solid var(--body-text);
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all .3s
}

@media(max-width:991.98px) {
  .section--wishlist-links .wishlist__header .item {
    height: 34px;
    border-top: 0
  }

  .section--wishlist-links .wishlist__header .item:first-child {
    border-top: 1px solid var(--body-text)
  }
}

@media(min-width:992px) {
  .section--wishlist-links .wishlist__header .item {
    border-left: 0;
    height: 72px
  }

  .section--wishlist-links .wishlist__header .item:first-child {
    border-left: 1px solid var(--body-text)
  }
}

.section--wishlist-links .wishlist__header .item:hover {
  background: var(--color-main);
  color: #fff
}

/*! 
------------------------------------------
FOOTER
------------------------------------------
*/
.footer {
  background: var(--color-main);
  color: #fff;
  padding: 30px 0
}

@media(min-width:1200px) {
  .footer {
    padding-top: 64px
  }
}

.footer .nav {
  font-weight: 100;
  font-size: 14px
}

@media(min-width:1400px) {
  .footer .nav {
    font-size: 18px
  }
}

.footer .nav .nav__item:not(:last-child) {
  margin-bottom: 10px
}

@media(min-width:1400px) {
  .footer .nav .nav__item:not(:last-child) {
    margin-bottom: 20px
  }
}

.footer .nav .nav__item_link.is-selected,
.footer .nav .nav__item_link:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
  text-decoration-thickness: 1px
}

.footer a {
  text-decoration: none;
  color: inherit;
  transition: all .3s
}

.footer .contacts {
  text-align: center
}

@media(min-width:992px) {
  .footer .contacts {
    text-align: right;
    font-size: 14px
  }
}

@media(max-width:991.98px) {
  .footer .contacts {
    display: flex;
    flex-direction: column
  }
}

@media(max-width:991.98px) {
  .footer .contacts .contacts__title {
    order: 1;
    text-transform: uppercase;
    margin-bottom: 10px
  }
}

@media(min-width:992px) {
  .footer .contacts .contacts__title {
    display: none
  }
}

@media(min-width:992px) {
  .footer .contacts .contacts__item:not(:last-child) {
    margin-bottom: 10px
  }
}

@media(min-width:1400px) {
  .footer .contacts .contacts__item:not(:last-child) {
    margin-bottom: 30px
  }
}

.footer .contacts .contacts__item .contacts__item_label {
  margin-bottom: 8px
}

@media(min-width:1400px) {
  .footer .contacts .contacts__item .contacts__item_label {
    margin-bottom: 20px
  }
}

.footer .contacts .contacts__item--social {
  padding-bottom: 10px
}

.footer .contacts .contacts__item--social .social {
  justify-content: flex-end
}

.footer .contacts .contacts__item--phone {
  margin-bottom: 10px !important
}

@media(min-width:992px) {
  .footer .contacts .contacts__item--phone .contacts__item_label {
    display: block;
    font-size: 14px
  }
}

.footer .contacts .contacts__item--phone .contacts__item_value {
  font-size: 28px;
  font-weight: 500
}

@media(min-width:1400px) {
  .footer .contacts .contacts__item--phone .contacts__item_value {
    font-size: 36px
  }
}

.footer .contacts .contacts__item--phone .contacts__item_value a {
  color: var(--color-secondary);
  display: inline-block;
  border-bottom: 1px solid var(--color-main)
}

.footer .contacts .contacts__item--phone .contacts__item_value a:hover {
  border-color: var(--color-secondary)
}

.footer .contacts .contacts__item--worktime {
  line-height: 200%
}

.footer .contacts .contacts__item--address .contacts__item_value a {
  display: inline-block;
  border-bottom: 1px solid #fff
}

.footer .contacts .contacts__item--address .contacts__item_value a:hover {
  border-color: var(--color-main)
}

@media(max-width:991.98px) {

  .footer .contacts .contacts__item--address,
  .footer .contacts .contacts__item--phone,
  .footer .contacts .contacts__item--social {
    order: 3
  }

  .footer .contacts .contacts__item--address .contacts__item_label,
  .footer .contacts .contacts__item--phone .contacts__item_label,
  .footer .contacts .contacts__item--social .contacts__item_label {
    display: none
  }

  .footer .contacts .contacts__item--phone {
    order: 2;
    margin-bottom: 0
  }

  .footer .contacts .contacts__item--phone .contacts__item_value {
    font-size: 22px;
    font-weight: 400
  }

  .footer .contacts .contacts__item--social {
    order: 4
  }

  .footer .contacts .contacts__item--worktime {
    order: 5;
    padding-top: 15px;
    border-top: 1px solid #bfcdc7;
    font-size: 14px
  }

  .footer .contacts .contacts__item .social {
    justify-content: center;
    padding-top: 10px
  }

  .footer .contacts .contacts__item .social .social__item {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center
  }

  .footer .contacts .contacts__item .social .social__item .social__item_link {
    color: #fff;
    font-size: 18px
  }
}

.footer .footerBox .footerBox__title {
  margin-bottom: 10px;
  text-transform: uppercase;
  cursor: pointer
}

@media(min-width:992px) {
  .footer .footerBox .footerBox__title {
    margin-bottom: 20px
  }
}

@media(min-width:1200px) {
  .footer .footerBox .footerBox__title {
    font-size: 18px;
    margin-bottom: 24px
  }
}

@media(min-width:1400px) {
  .footer .footerBox .footerBox__title {
    font-size: 20px
  }
}

@media(max-width:991.98px) {
  .footer .footerBox--hide {
    text-align: center
  }

  .footer .footerBox--hide .footerBox__title {
    position: relative
  }

  .footer .footerBox--hide .footerBox__title::before {
    content: "+";
    font-size: 14px
  }

  .footer .footerBox--hide .footerBox__content {
    opacity: 0;
    visibility: hidden;
    transition: all .3s;
    height: 0;
    overflow: hidden
  }

  .footer .footerBox--hide.is-open .footerBox__title::before {
    content: "-"
  }

  .footer .footerBox--hide.is-open .footerBox__content {
    padding: 10px 0 30px 0;
    opacity: 1;
    visibility: visible;
    display: block;
    height: auto
  }
}

.footer .footer__row--top {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between
}

@media(max-width:991.98px) {
  .footer .footer__row--top {
    flex-direction: column
  }
}

.footer .footer__row--bottom {
  padding-top: 20px;
  opacity: .5;
  font-size: 12px;
  font-weight: 300;
  text-align: center
}

@media(min-width:992px) {
  .footer .footer__row--bottom {
    padding-top: 30px;
    font-size: 13px
  }
}

@media(min-width:1400px) {
  .footer .footer__row--bottom {
    padding-top: 50px
  }
}

@media(min-width:1400px) {
  .footer .footer__row--bottom {
    font-size: 14px;
    font-weight: 500
  }
}

.footer .footer__col {
  order: 1
}

@media(min-width:992px) {
  .footer .footer__col:not(:first-child) {
    padding-left: 20px
  }
}

@media(min-width:992px)and (min-width:1400px) {
  .footer .footer__col:not(:first-child) {
    padding-left: 35px
  }
}

.footer .footer__col--contacts {
  flex: 0 0 30%
}

@media(min-width:1400px) {
  .footer .footer__col--contacts {
    flex: 0 0 29%
  }
}

@media(max-width:991.98px) {
  .footer .footer__col--contacts {
    padding-top: 12px;
    margin-top: 18px;
    border-top: 1px solid #bfcdc7
  }
}

/*! 

INSALES default component styles

*/
.m_popup {
  position: relative
}

.m_popup .m_popup__inner {
  position: absolute;
  background: #fff;
  padding: 10px;
  width: 180px;
  bottom: 10px;
  border: 1px solid var(--color-main);
  opacity: 0;
  visibility: hidden;
  box-shadow: 0 0 30px rgba(0, 0, 0, .3);
  left: -25px;
  text-align: center;
  transition: all .3s;
  color: var(--color-main)
}

.m_popup .m_popup__inner .social {
  justify-content: center;
  gap: 10px
}

.m_popup .m_popup__inner::after {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 12px 0 12px;
  border-color: #fff transparent transparent transparent;
  position: absolute;
  bottom: -8px;
  right: 20px;
  margin-left: -6px;
  content: ""
}

.m_popup.is-open .m_popup__inner {
  bottom: 25px;
  opacity: 1;
  visibility: visible
}

/*! editor reset bg */
.editor-mobile-state .editable-widget {
  background: var(--body-background)
}

/*! insales popups */
.insales_widget-modal {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
  transition: all .4s ease-in-out;
  visibility: hidden;
  opacity: 0;
  display: block;
  box-shadow: rgba(0, 0, 0, .05) 0 .25rem .625rem;
  padding: 2.5rem 1.5625rem;
  border-radius: 0
}

@media(min-width:640px) {
  .insales_widget-modal {
    -webkit-transform: translate(-50%, -50%) scale(1.05);
    transform: translate(-50%, -50%) scale(1.05)
  }
}

.insales_widget-modal.insales_widget-modal_open {
  -webkit-transform: scale(1);
  transform: scale(1);
  opacity: 1;
  visibility: visible
}

@media(min-width:640px) {
  .insales_widget-modal.insales_widget-modal_open {
    -webkit-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1)
  }
}

.insales_widget-modal .insales-autocomplete-address-input {
  border-radius: 0;
  background: #fff;
  border: 1px solid #ced0d2
}

.insales_widget-modal_overlay {
  transition: all .3s;
  background: var(--layer-bg)
}

/*! delivery widget */
.insales_widget-delivery {
  border: 1px solid #ede8e6
}

.insales_widget-delivery.insales_widget-delivery--box-shadow {
  box-shadow: none
}

.insales_widget-delivery.insales_widget-delivery--border-radius,
.insales_widget-delivery.insales_widget-delivery--border-radius .insales_widget-delivery_header {
  border-radius: 0
}

.insales_widget-delivery.insales_widget-delivery--with-background .insales_widget-delivery_header {
  background: #ede8e6
}

.insales_widget-current_address button.insales_widget-open_modal {
  color: var(--color-main);
  border-bottom: 1px dashed var(--color-main);
  padding-left: 0;
  padding-right: 0;
  margin-left: 6px
}

#theme_settings_body {
  margin-top: 56px
}

#theme_settings_body .header {
  position: relative !important;
  background: #ccc
}

/*! noscript msg */
.nscript {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .95);
  zoom: 1;
  z-index: 9999
}

.nscript__content {
  background: var(--color-error);
  font-size: .8125rem;
  text-shadow: .0625rem 0 .0625rem var(--color-error);
  line-height: .9375rem;
  color: #fff;
  text-align: center;
  box-shadow: 0 0 .3125rem var(--body-text);
  padding: 1.25rem 0
}

.grecaptcha-badge {
  display: none !important
}

/*! layer */
.layer {
  transition-property: opacity;
  transition-duration: .25s, 0s;
  transition-delay: 0s, .25s;
  opacity: 0;
  visibility: hidden;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 901;
  background: var(--layer-bg)
}

/*! misc */
.hide,
.none {
  display: none
}

.hidden {
  visibility: hidden
}

.cf::after,
.clear,
.clearfix::after {
  clear: both;
  content: ".";
  height: 0;
  display: block;
  visibility: hidden;
  line-height: 0;
  font-size: 0
}

/*! animations */
@keyframes loading {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }

  30% {
    -webkit-transform: translateY(-3px);
    transform: translateY(-3px)
  }

  50% {
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }

  70% {
    -webkit-transform: translateY(3px);
    transform: translateY(3px)
  }
}

@-webkit-keyframes loading {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }

  30% {
    -webkit-transform: translateY(-3px);
    transform: translateY(-3px)
  }

  50% {
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }

  70% {
    -webkit-transform: translateY(3px);
    transform: translateY(3px)
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1
  }

  100% {
    opacity: 0
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1
  }

  100% {
    opacity: 0
  }
}

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px)
  }

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

@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px)
  }

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

@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px)
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}

@keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px)
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}

@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
    transform: translateX(20px)
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}

@keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
    transform: translateX(20px)
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(6px);
    transform: translateY(6px)
  }

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

@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(6px);
    transform: translateY(6px)
  }

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

@-webkit-keyframes color-change {
  0% {
    background-image: linear-gradient(to right, #b3ffff, #df80ff, #ff80ff)
  }

  100% {
    background-image: linear-gradient(to right, red, red);
    background-image: linear-gradient(to right, #ff80ff, #df80ff, #b3ffff)
  }
}

@keyframes color-change {
  0% {
    background-image: linear-gradient(to right, #b3ffff, #df80ff, #ff80ff)
  }

  100% {
    background-image: linear-gradient(to right, red, red);
    background-image: linear-gradient(to right, #ff80ff, #df80ff, #b3ffff)
  }
}

@-webkit-keyframes rotation {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}

@keyframes rotation {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}

@-webkit-keyframes loader {
  50% {
    -webkit-transform: scale(1) translate(-50%, -50%);
    transform: scale(1) translate(-50%, -50%)
  }
}

@keyframes loader {
  50% {
    -webkit-transform: scale(1) translate(-50%, -50%);
    transform: scale(1) translate(-50%, -50%)
  }
}

@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    opacity: 0
  }

  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1
  }
}

@keyframes slideInLeft {
  from {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    opacity: 0
  }

  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1
  }
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn
}

.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut
}

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

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp
}

/*! 
------------------------------------------
PLUGINS
------------------------------------------
*/
/*! swiper styles */
.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1
}

.swiper-vertical>.swiper-wrapper {
  flex-direction: column
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  box-sizing: content-box
}

.swiper-android .swiper-slide,
.swiper-wrapper {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0)
}

.swiper-pointer-events {
  touch-action: pan-y
}

.swiper-pointer-events.swiper-vertical {
  touch-action: pan-x
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: auto;
  position: relative;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform
}

.swiper-slide-invisible-blank {
  visibility: hidden
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: height, -webkit-transform;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform
}

.swiper-css-mode>.swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
  display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
  scroll-snap-align: start start
}

.swiper-horizontal.swiper-css-mode>.swiper-wrapper {
  -ms-scroll-snap-type: x mandatory;
  scroll-snap-type: x mandatory
}

.swiper-vertical.swiper-css-mode>.swiper-wrapper {
  -ms-scroll-snap-type: y mandatory;
  scroll-snap-type: y mandatory
}

.swiper-centered>.swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999
}

.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
  -webkit-margin-start: var(--swiper-centered-offset-before);
  margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-horizontal>.swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after)
}

.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
  -webkit-margin-before: var(--swiper-centered-offset-before);
  margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-vertical>.swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after)
}

.swiper-centered>.swiper-wrapper>.swiper-slide {
  scroll-snap-align: center center
}

.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out
}

.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity
}

.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none
}

.swiper-fade .swiper-slide-active,
.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}

.swiper-scrollbar {
  margin-top: 10px;
  border-radius: 13px;
  position: relative;
  background: #bfbfbf;
  height: 2px
}

.swiper-scrollbar-disabled>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important
}

.swiper-horizontal>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: 1%;
  bottom: 4px;
  top: auto;
  z-index: 50;
  background: #ebebeb;
  width: 98%
}

.swiper-scrollbar.swiper-scrollbar-vertical,
.swiper-vertical>.swiper-scrollbar {
  position: absolute;
  left: auto;
  right: 4px;
  top: 1%;
  z-index: 50;
  width: var(--swiper-scrollbar-size, 4px);
  height: 1%
}

.swiper-scrollbar-drag {
  width: 100%;
  position: relative;
  background: var(--color-main);
  border-radius: 7px;
  height: 2px;
  left: 0;
  top: 0
}

.swiper-scrollbar-cursor-drag {
  cursor: move
}

.swiper__buttons {
  display: flex;
  height: 0;
  justify-content: space-between;
  position: absolute;
  transition: all .3s;
  z-index: 800;
  top: 50%;
  left: 0;
  width: 100%
}

.swiper__buttons .swiper__button {
  color: #757575;
  cursor: pointer;
  font-size: 50px;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  background: rgba(0, 0, 0, 0);
  transition: all .3s;
  -webkit-transform: translate(0, -25px);
  transform: translate(0, -25px)
}

.swiper__buttons .swiper__button::before {
  font-family: var(--font-icons);
  content: "";
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg)
}

.swiper__buttons .swiper__button--prev {
  justify-content: flex-start
}

.swiper__buttons .swiper__button--prev::before {
  -webkit-transform: rotate(0);
  transform: rotate(0)
}

.swiper__buttons .swiper__button.swiper-button-disabled {
  opacity: 0;
  visibility: hidden;
  z-index: -1;
  cursor: default
}

.swiper--hide .swiper__buttons {
  opacity: 0;
  visibility: hidden
}

.swiper--hide:hover .swiper__buttons {
  opacity: 1;
  visibility: visible;
  z-index: 9;
  padding: 0 40px
}

.swiper__controls {
  display: flex;
  justify-content: space-between;
  align-items: center
}

@media(min-width:768px) {
  .swiper__controls {
    justify-content: center
  }
}

.swiper__pagination {
  position: absolute;
  bottom: 30px;
  left: auto;
  right: auto;
  width: 100%;
  display: flex;
  justify-content: center;
  z-index: 9
}

.swiper__pagination>* {
  font-size: 0;
  width: 8px;
  height: 8px;
  margin: 0 7px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #fff;
  transition: all .3s;
  border-radius: 100%;
  cursor: pointer
}

.swiper__pagination>.swiper-pagination-bullet-active,
.swiper__pagination>:hover {
  background: #fff
}

.swiper-container-horizontal>.swiper-pagination-bullets,
.swiper-pagination-custom,
.swiper-pagination-fraction {
  bottom: 0 !important
}

/*NEW START*/
.productsGrid .card .badges {
  gap: 4px;
  align-items: flex-start;
}

.filter-switch {
  &:has(input:checked) {
    div {
      padding-left: 21px;
      background-color: #01371F;

      span {
        background-color: #fff;
      }
    }
  }

  display:flex;
  align-items:center;
  gap:10px;
  margin:0 0 20px;
  text-transform:uppercase;

  div {
    &:hover {
      span {
        transform: scale(1.03);
      }
    }

    display:flex;
    align-items:center;
    justify-content:flex-start;
    width:44px;
    height:24px;
    border:1px solid #01371F;
    transition:.6s;
    border-radius:20px;
    padding:0 2px;
    cursor:pointer;

    span {
      width: 20px;
      height: 20px;
      border-radius: 50%;
      transition: .7s;
      background-color: #5d6168;
    }
  }
}

.price--default.none-icon:after {
  display: none;
}

.header .logo:before {
  transition: .5s;
}

.is-fixed-header {
  header {
    transition: .5s;
  }

  &.page_down header {
    transform: translateY(-100%);
  }

  @media (min-width: 1200px) {
    .header__row--middle {
      padding-top: 8px;
      padding-bottom: 8px;
      height: 71px;

      .logo:before {
        font-size: 55px;
      }
    }
  }
}

.productsGrid [class*="card--banner-"] {
  display: flex;
  align-items: flex-end;padding-bottom:3rem;
  justify-content: center;
}
.productsGrid [class*="card--banner-"] .btn{
  box-shadow:0 20px 30px -10px rgb(31, 65, 16);
}

.productsGrid [class*="card--banner-"] picture {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.productsGrid [class*="card--banner-"] picture img {
  width: 100%;
  height: 100%;
  max-height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
}

@media (min-width:1400px) {
  .productsGrid {
    .card--banner-0 {
      grid-area: 2 / 1 / 4 / 3;
    }

    .card--banner-1 {
      grid-area: 6 / 3 / 8 / 5;
    }

    .card--banner-2 {
      grid-area: 10 / 1 / 12 / 3;
    }
  }
}

@media (min-width:992px) {
  .card--banner-0 {
    grid-area: 2 / 1 / 3 / 2;
  }

  .card--banner-1 {
    grid-area: 5 / 3 / 6 / 4;
  }

  .card--banner-2 {
    grid-area: 8 / 1 / 9 / 2;
  }
}

@media (min-width:120px)and (max-width:992px) {
  .card--banner-0 {
    grid-area: 5 / 1 / 7 / 3;
  }

  .card--banner-1 {
    grid-area: 11 / 1 / 12 / 3;
  }

  .card--banner-2 {
    grid-area: 16 / 1 / 17 / 3;
  }

  .productsGrid [class*="card--banner-"] {
    aspect-ratio: .7;
  }
}
.popup--wishlist-appointment .shops__choose .shops__choose_onmap{
  display:none;
}
.popup--wishlist-appointment .shops__choose .shops__choose_shop{
  margin-top:40px;
}
/*NEW END*/
