
/* build: cart empty icons 2026-06-07-2 */

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

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

@-ms-viewport {
  width: device-width;
}
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
}

[tabindex="-1"]:focus {
  outline: 0 !important;
}

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

h1, h2, h3, h4, h5, h6 {
  margin: 0;
}

p {
  margin: 0;
}

abbr[data-original-title], abbr[title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
}

address {
  margin: 0;
  font-style: normal;
  line-height: inherit;
}

dl, ol, ul {
  margin-top: 0;
}

ol ol, ol ul, ul ol, ul ul {
  margin: 0;
}

dt {
  font-weight: 700;
}

dd {
  margin: 0;
}

blockquote {
  margin: 0;
}

dfn {
  font-style: italic;
}

b, strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

sub, sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  text-decoration: none;
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

a:hover {
  text-decoration: underline;
}

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):focus, a:not([href]):not([tabindex]):hover {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):focus {
  outline: 0;
}

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

pre {
  margin: 0;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0;
}

img {
  vertical-align: middle;
  border-style: none;
}

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

table {
  border-collapse: collapse;
}

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
}

label {
  display: inline-block;
  margin: 0;
}

button, input, select {
  border-radius: 0;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

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

button, input {
  overflow: visible;
}

button, select {
  text-transform: none;
}

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

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

input[type=checkbox], input[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

input[type=date], input[type=datetime-local], input[type=month], input[type=time] {
  -webkit-appearance: listbox;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin: 0;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto;
  -webkit-appearance: none;
  margin: 0;
}

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

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

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

output {
  display: inline-block;
}

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

template {
  display: none;
}

[hidden] {
  display: none !important;
}

* {
  outline: 0 !important;
}

input[type=text], input[type=number], input[type=tel], input[type=email], input[type=password], input[type=search], textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}

input[type=number]::-webkit-outer-spin-button, input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

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

@-ms-viewport {
  width: device-width;
}
html {
  box-sizing: border-box;
  -ms-overflow-style: scrollbar;
}

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

.container {
  width: 100%;
  padding-right: 10px;
  padding-left: 10px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container {
    max-width: 720px;
  }
}
@media (min-width: 1025px) {
  .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container {
    max-width: 1140px;
  }
}
.container-fluid {
  width: 100%;
  padding-right: 10px;
  padding-left: 10px;
  margin-right: auto;
  margin-left: auto;
}

.row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -10px;
  margin-left: -10px;
}

.no-gutters {
  margin-right: 0;
  margin-left: 0;
}

.no-gutters > .col, .no-gutters > [class*=col-] {
  padding-right: 0;
  padding-left: 0;
}

.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {
  position: relative;
  width: 100%;
  min-height: 0px;
  padding-right: 10px;
  padding-left: 10px;
}

.col {
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
  -ms-flex-positive: 1;
  flex-grow: 1;
  max-width: 100%;
}

.col-auto {
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: auto;
  max-width: none;
}

.col-1 {
  -ms-flex: 0 0 8.333333%;
  flex: 0 0 8.333333%;
  max-width: 8.333333%;
}

.col-2 {
  -ms-flex: 0 0 16.666667%;
  flex: 0 0 16.666667%;
  max-width: 16.666667%;
}

.col-3 {
  -ms-flex: 0 0 25%;
  flex: 0 0 25%;
  max-width: 25%;
}

.col-4 {
  -ms-flex: 0 0 33.333333%;
  flex: 0 0 33.333333%;
  max-width: 33.333333%;
}

.col-5 {
  -ms-flex: 0 0 41.666667%;
  flex: 0 0 41.666667%;
  max-width: 41.666667%;
}

.col-6 {
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  max-width: 50%;
}

.col-7 {
  -ms-flex: 0 0 58.333333%;
  flex: 0 0 58.333333%;
  max-width: 58.333333%;
}

.col-8 {
  -ms-flex: 0 0 66.666667%;
  flex: 0 0 66.666667%;
  max-width: 66.666667%;
}

.col-9 {
  -ms-flex: 0 0 75%;
  flex: 0 0 75%;
  max-width: 75%;
}

.col-10 {
  -ms-flex: 0 0 83.333333%;
  flex: 0 0 83.333333%;
  max-width: 83.333333%;
}

.col-11 {
  -ms-flex: 0 0 91.666667%;
  flex: 0 0 91.666667%;
  max-width: 91.666667%;
}

.col-12 {
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  max-width: 100%;
}

.order-first {
  -ms-flex-order: -1;
  order: -1;
}

.order-last {
  -ms-flex-order: 13;
  order: 13;
}

.order-0 {
  -ms-flex-order: 0;
  order: 0;
}

.order-1 {
  -ms-flex-order: 1;
  order: 1;
}

.order-2 {
  -ms-flex-order: 2;
  order: 2;
}

.order-3 {
  -ms-flex-order: 3;
  order: 3;
}

.order-4 {
  -ms-flex-order: 4;
  order: 4;
}

.order-5 {
  -ms-flex-order: 5;
  order: 5;
}

.order-6 {
  -ms-flex-order: 6;
  order: 6;
}

.order-7 {
  -ms-flex-order: 7;
  order: 7;
}

.order-8 {
  -ms-flex-order: 8;
  order: 8;
}

.order-9 {
  -ms-flex-order: 9;
  order: 9;
}

.order-10 {
  -ms-flex-order: 10;
  order: 10;
}

.order-11 {
  -ms-flex-order: 11;
  order: 11;
}

.order-12 {
  -ms-flex-order: 12;
  order: 12;
}

.offset-1 {
  margin-left: 8.333333%;
}

.offset-2 {
  margin-left: 16.666667%;
}

.offset-3 {
  margin-left: 25%;
}

.offset-4 {
  margin-left: 33.333333%;
}

.offset-5 {
  margin-left: 41.666667%;
}

.offset-6 {
  margin-left: 50%;
}

.offset-7 {
  margin-left: 58.333333%;
}

.offset-8 {
  margin-left: 66.666667%;
}

.offset-9 {
  margin-left: 75%;
}

.offset-10 {
  margin-left: 83.333333%;
}

.offset-11 {
  margin-left: 91.666667%;
}

@media (min-width: 576px) {
  .col-sm {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-sm-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: none;
  }
  .col-sm-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-sm-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-sm-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-sm-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-sm-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-sm-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-sm-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-sm-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-sm-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-sm-first {
    -ms-flex-order: -1;
    order: -1;
  }
  .order-sm-last {
    -ms-flex-order: 13;
    order: 13;
  }
  .order-sm-0 {
    -ms-flex-order: 0;
    order: 0;
  }
  .order-sm-1 {
    -ms-flex-order: 1;
    order: 1;
  }
  .order-sm-2 {
    -ms-flex-order: 2;
    order: 2;
  }
  .order-sm-3 {
    -ms-flex-order: 3;
    order: 3;
  }
  .order-sm-4 {
    -ms-flex-order: 4;
    order: 4;
  }
  .order-sm-5 {
    -ms-flex-order: 5;
    order: 5;
  }
  .order-sm-6 {
    -ms-flex-order: 6;
    order: 6;
  }
  .order-sm-7 {
    -ms-flex-order: 7;
    order: 7;
  }
  .order-sm-8 {
    -ms-flex-order: 8;
    order: 8;
  }
  .order-sm-9 {
    -ms-flex-order: 9;
    order: 9;
  }
  .order-sm-10 {
    -ms-flex-order: 10;
    order: 10;
  }
  .order-sm-11 {
    -ms-flex-order: 11;
    order: 11;
  }
  .order-sm-12 {
    -ms-flex-order: 12;
    order: 12;
  }
  .offset-sm-0 {
    margin-left: 0;
  }
  .offset-sm-1 {
    margin-left: 8.333333%;
  }
  .offset-sm-2 {
    margin-left: 16.666667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.333333%;
  }
  .offset-sm-5 {
    margin-left: 41.666667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.333333%;
  }
  .offset-sm-8 {
    margin-left: 66.666667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.333333%;
  }
  .offset-sm-11 {
    margin-left: 91.666667%;
  }
}
@media (min-width: 768px) {
  .col-md {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-md-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: none;
  }
  .col-md-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-md-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-md-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-md-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-md-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-md-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-md-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-md-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-md-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-md-first {
    -ms-flex-order: -1;
    order: -1;
  }
  .order-md-last {
    -ms-flex-order: 13;
    order: 13;
  }
  .order-md-0 {
    -ms-flex-order: 0;
    order: 0;
  }
  .order-md-1 {
    -ms-flex-order: 1;
    order: 1;
  }
  .order-md-2 {
    -ms-flex-order: 2;
    order: 2;
  }
  .order-md-3 {
    -ms-flex-order: 3;
    order: 3;
  }
  .order-md-4 {
    -ms-flex-order: 4;
    order: 4;
  }
  .order-md-5 {
    -ms-flex-order: 5;
    order: 5;
  }
  .order-md-6 {
    -ms-flex-order: 6;
    order: 6;
  }
  .order-md-7 {
    -ms-flex-order: 7;
    order: 7;
  }
  .order-md-8 {
    -ms-flex-order: 8;
    order: 8;
  }
  .order-md-9 {
    -ms-flex-order: 9;
    order: 9;
  }
  .order-md-10 {
    -ms-flex-order: 10;
    order: 10;
  }
  .order-md-11 {
    -ms-flex-order: 11;
    order: 11;
  }
  .order-md-12 {
    -ms-flex-order: 12;
    order: 12;
  }
  .offset-md-0 {
    margin-left: 0;
  }
  .offset-md-1 {
    margin-left: 8.333333%;
  }
  .offset-md-2 {
    margin-left: 16.666667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.333333%;
  }
  .offset-md-5 {
    margin-left: 41.666667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.333333%;
  }
  .offset-md-8 {
    margin-left: 66.666667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.333333%;
  }
  .offset-md-11 {
    margin-left: 91.666667%;
  }
}
@media (min-width: 1025px) {
  .col-lg {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-lg-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: none;
  }
  .col-lg-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-lg-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-lg-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-lg-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-lg-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-lg-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-lg-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-lg-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-lg-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-lg-first {
    -ms-flex-order: -1;
    order: -1;
  }
  .order-lg-last {
    -ms-flex-order: 13;
    order: 13;
  }
  .order-lg-0 {
    -ms-flex-order: 0;
    order: 0;
  }
  .order-lg-1 {
    -ms-flex-order: 1;
    order: 1;
  }
  .order-lg-2 {
    -ms-flex-order: 2;
    order: 2;
  }
  .order-lg-3 {
    -ms-flex-order: 3;
    order: 3;
  }
  .order-lg-4 {
    -ms-flex-order: 4;
    order: 4;
  }
  .order-lg-5 {
    -ms-flex-order: 5;
    order: 5;
  }
  .order-lg-6 {
    -ms-flex-order: 6;
    order: 6;
  }
  .order-lg-7 {
    -ms-flex-order: 7;
    order: 7;
  }
  .order-lg-8 {
    -ms-flex-order: 8;
    order: 8;
  }
  .order-lg-9 {
    -ms-flex-order: 9;
    order: 9;
  }
  .order-lg-10 {
    -ms-flex-order: 10;
    order: 10;
  }
  .order-lg-11 {
    -ms-flex-order: 11;
    order: 11;
  }
  .order-lg-12 {
    -ms-flex-order: 12;
    order: 12;
  }
  .offset-lg-0 {
    margin-left: 0;
  }
  .offset-lg-1 {
    margin-left: 8.333333%;
  }
  .offset-lg-2 {
    margin-left: 16.666667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.333333%;
  }
  .offset-lg-5 {
    margin-left: 41.666667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.333333%;
  }
  .offset-lg-8 {
    margin-left: 66.666667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.333333%;
  }
  .offset-lg-11 {
    margin-left: 91.666667%;
  }
}
@media (min-width: 1200px) {
  .col-xl {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-xl-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: none;
  }
  .col-xl-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-xl-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-xl-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xl-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-xl-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-xl-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xl-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-xl-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-xl-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xl-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-xl-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-xl-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-xl-first {
    -ms-flex-order: -1;
    order: -1;
  }
  .order-xl-last {
    -ms-flex-order: 13;
    order: 13;
  }
  .order-xl-0 {
    -ms-flex-order: 0;
    order: 0;
  }
  .order-xl-1 {
    -ms-flex-order: 1;
    order: 1;
  }
  .order-xl-2 {
    -ms-flex-order: 2;
    order: 2;
  }
  .order-xl-3 {
    -ms-flex-order: 3;
    order: 3;
  }
  .order-xl-4 {
    -ms-flex-order: 4;
    order: 4;
  }
  .order-xl-5 {
    -ms-flex-order: 5;
    order: 5;
  }
  .order-xl-6 {
    -ms-flex-order: 6;
    order: 6;
  }
  .order-xl-7 {
    -ms-flex-order: 7;
    order: 7;
  }
  .order-xl-8 {
    -ms-flex-order: 8;
    order: 8;
  }
  .order-xl-9 {
    -ms-flex-order: 9;
    order: 9;
  }
  .order-xl-10 {
    -ms-flex-order: 10;
    order: 10;
  }
  .order-xl-11 {
    -ms-flex-order: 11;
    order: 11;
  }
  .order-xl-12 {
    -ms-flex-order: 12;
    order: 12;
  }
  .offset-xl-0 {
    margin-left: 0;
  }
  .offset-xl-1 {
    margin-left: 8.333333%;
  }
  .offset-xl-2 {
    margin-left: 16.666667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.333333%;
  }
  .offset-xl-5 {
    margin-left: 41.666667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.333333%;
  }
  .offset-xl-8 {
    margin-left: 66.666667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.333333%;
  }
  .offset-xl-11 {
    margin-left: 91.666667%;
  }
}
.d-none {
  display: none !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-table {
  display: table !important;
}

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-flex {
  display: -ms-flexbox !important;
  display: flex !important;
}

.d-inline-flex {
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
}

@media (min-width: 576px) {
  .d-sm-none {
    display: none !important;
  }
  .d-sm-inline {
    display: inline !important;
  }
  .d-sm-inline-block {
    display: inline-block !important;
  }
  .d-sm-block {
    display: block !important;
  }
  .d-sm-table {
    display: table !important;
  }
  .d-sm-table-row {
    display: table-row !important;
  }
  .d-sm-table-cell {
    display: table-cell !important;
  }
  .d-sm-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-sm-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
@media (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }
  .d-md-inline {
    display: inline !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-table {
    display: table !important;
  }
  .d-md-table-row {
    display: table-row !important;
  }
  .d-md-table-cell {
    display: table-cell !important;
  }
  .d-md-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-md-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
@media (min-width: 1025px) {
  .d-lg-none {
    display: none !important;
  }
  .d-lg-inline {
    display: inline !important;
  }
  .d-lg-inline-block {
    display: inline-block !important;
  }
  .d-lg-block {
    display: block !important;
  }
  .d-lg-table {
    display: table !important;
  }
  .d-lg-table-row {
    display: table-row !important;
  }
  .d-lg-table-cell {
    display: table-cell !important;
  }
  .d-lg-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-lg-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important;
  }
  .d-xl-inline {
    display: inline !important;
  }
  .d-xl-inline-block {
    display: inline-block !important;
  }
  .d-xl-block {
    display: block !important;
  }
  .d-xl-table {
    display: table !important;
  }
  .d-xl-table-row {
    display: table-row !important;
  }
  .d-xl-table-cell {
    display: table-cell !important;
  }
  .d-xl-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-xl-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
@media print {
  .d-print-none {
    display: none !important;
  }
  .d-print-inline {
    display: inline !important;
  }
  .d-print-inline-block {
    display: inline-block !important;
  }
  .d-print-block {
    display: block !important;
  }
  .d-print-table {
    display: table !important;
  }
  .d-print-table-row {
    display: table-row !important;
  }
  .d-print-table-cell {
    display: table-cell !important;
  }
  .d-print-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-print-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
.flex-row {
  -ms-flex-direction: row !important;
  flex-direction: row !important;
}

.flex-column {
  -ms-flex-direction: column !important;
  flex-direction: column !important;
}

.flex-row-reverse {
  -ms-flex-direction: row-reverse !important;
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  -ms-flex-direction: column-reverse !important;
  flex-direction: column-reverse !important;
}

.flex-wrap {
  -ms-flex-wrap: wrap !important;
  flex-wrap: wrap !important;
}

.flex-nowrap {
  -ms-flex-wrap: nowrap !important;
  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  -ms-flex-wrap: wrap-reverse !important;
  flex-wrap: wrap-reverse !important;
}

.flex-fill {
  -ms-flex: 1 1 auto !important;
  flex: 1 1 auto !important;
}

.flex-grow-0 {
  -ms-flex-positive: 0 !important;
  flex-grow: 0 !important;
}

.flex-grow-1 {
  -ms-flex-positive: 1 !important;
  flex-grow: 1 !important;
}

.flex-shrink-0 {
  -ms-flex-negative: 0 !important;
  flex-shrink: 0 !important;
}

.flex-shrink-1 {
  -ms-flex-negative: 1 !important;
  flex-shrink: 1 !important;
}

.justify-content-start {
  -ms-flex-pack: start !important;
  justify-content: flex-start !important;
}

.justify-content-end {
  -ms-flex-pack: end !important;
  justify-content: flex-end !important;
}

.justify-content-center {
  -ms-flex-pack: center !important;
  justify-content: center !important;
}

.justify-content-between {
  -ms-flex-pack: justify !important;
  justify-content: space-between !important;
}

.justify-content-around {
  -ms-flex-pack: distribute !important;
  justify-content: space-around !important;
}

.align-items-start {
  -ms-flex-align: start !important;
  align-items: flex-start !important;
}

.align-items-end {
  -ms-flex-align: end !important;
  align-items: flex-end !important;
}

.align-items-center {
  -ms-flex-align: center !important;
  align-items: center !important;
}

.align-items-baseline {
  -ms-flex-align: baseline !important;
  align-items: baseline !important;
}

.align-items-stretch {
  -ms-flex-align: stretch !important;
  align-items: stretch !important;
}

.align-content-start {
  -ms-flex-line-pack: start !important;
  align-content: flex-start !important;
}

.align-content-end {
  -ms-flex-line-pack: end !important;
  align-content: flex-end !important;
}

.align-content-center {
  -ms-flex-line-pack: center !important;
  align-content: center !important;
}

.align-content-between {
  -ms-flex-line-pack: justify !important;
  align-content: space-between !important;
}

.align-content-around {
  -ms-flex-line-pack: distribute !important;
  align-content: space-around !important;
}

.align-content-stretch {
  -ms-flex-line-pack: stretch !important;
  align-content: stretch !important;
}

.align-self-auto {
  -ms-flex-item-align: auto !important;
  align-self: auto !important;
}

.align-self-start {
  -ms-flex-item-align: start !important;
  align-self: flex-start !important;
}

.align-self-end {
  -ms-flex-item-align: end !important;
  align-self: flex-end !important;
}

.align-self-center {
  -ms-flex-item-align: center !important;
  align-self: center !important;
}

.align-self-baseline {
  -ms-flex-item-align: baseline !important;
  align-self: baseline !important;
}

.align-self-stretch {
  -ms-flex-item-align: stretch !important;
  align-self: stretch !important;
}

@media (min-width: 576px) {
  .flex-sm-row {
    -ms-flex-direction: row !important;
    flex-direction: row !important;
  }
  .flex-sm-column {
    -ms-flex-direction: column !important;
    flex-direction: column !important;
  }
  .flex-sm-row-reverse {
    -ms-flex-direction: row-reverse !important;
    flex-direction: row-reverse !important;
  }
  .flex-sm-column-reverse {
    -ms-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important;
  }
  .flex-sm-wrap {
    -ms-flex-wrap: wrap !important;
    flex-wrap: wrap !important;
  }
  .flex-sm-nowrap {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
  }
  .flex-sm-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
    flex-wrap: wrap-reverse !important;
  }
  .flex-sm-fill {
    -ms-flex: 1 1 auto !important;
    flex: 1 1 auto !important;
  }
  .flex-sm-grow-0 {
    -ms-flex-positive: 0 !important;
    flex-grow: 0 !important;
  }
  .flex-sm-grow-1 {
    -ms-flex-positive: 1 !important;
    flex-grow: 1 !important;
  }
  .flex-sm-shrink-0 {
    -ms-flex-negative: 0 !important;
    flex-shrink: 0 !important;
  }
  .flex-sm-shrink-1 {
    -ms-flex-negative: 1 !important;
    flex-shrink: 1 !important;
  }
  .justify-content-sm-start {
    -ms-flex-pack: start !important;
    justify-content: flex-start !important;
  }
  .justify-content-sm-end {
    -ms-flex-pack: end !important;
    justify-content: flex-end !important;
  }
  .justify-content-sm-center {
    -ms-flex-pack: center !important;
    justify-content: center !important;
  }
  .justify-content-sm-between {
    -ms-flex-pack: justify !important;
    justify-content: space-between !important;
  }
  .justify-content-sm-around {
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important;
  }
  .align-items-sm-start {
    -ms-flex-align: start !important;
    align-items: flex-start !important;
  }
  .align-items-sm-end {
    -ms-flex-align: end !important;
    align-items: flex-end !important;
  }
  .align-items-sm-center {
    -ms-flex-align: center !important;
    align-items: center !important;
  }
  .align-items-sm-baseline {
    -ms-flex-align: baseline !important;
    align-items: baseline !important;
  }
  .align-items-sm-stretch {
    -ms-flex-align: stretch !important;
    align-items: stretch !important;
  }
  .align-content-sm-start {
    -ms-flex-line-pack: start !important;
    align-content: flex-start !important;
  }
  .align-content-sm-end {
    -ms-flex-line-pack: end !important;
    align-content: flex-end !important;
  }
  .align-content-sm-center {
    -ms-flex-line-pack: center !important;
    align-content: center !important;
  }
  .align-content-sm-between {
    -ms-flex-line-pack: justify !important;
    align-content: space-between !important;
  }
  .align-content-sm-around {
    -ms-flex-line-pack: distribute !important;
    align-content: space-around !important;
  }
  .align-content-sm-stretch {
    -ms-flex-line-pack: stretch !important;
    align-content: stretch !important;
  }
  .align-self-sm-auto {
    -ms-flex-item-align: auto !important;
    align-self: auto !important;
  }
  .align-self-sm-start {
    -ms-flex-item-align: start !important;
    align-self: flex-start !important;
  }
  .align-self-sm-end {
    -ms-flex-item-align: end !important;
    align-self: flex-end !important;
  }
  .align-self-sm-center {
    -ms-flex-item-align: center !important;
    align-self: center !important;
  }
  .align-self-sm-baseline {
    -ms-flex-item-align: baseline !important;
    align-self: baseline !important;
  }
  .align-self-sm-stretch {
    -ms-flex-item-align: stretch !important;
    align-self: stretch !important;
  }
}
@media (min-width: 768px) {
  .flex-md-row {
    -ms-flex-direction: row !important;
    flex-direction: row !important;
  }
  .flex-md-column {
    -ms-flex-direction: column !important;
    flex-direction: column !important;
  }
  .flex-md-row-reverse {
    -ms-flex-direction: row-reverse !important;
    flex-direction: row-reverse !important;
  }
  .flex-md-column-reverse {
    -ms-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important;
  }
  .flex-md-wrap {
    -ms-flex-wrap: wrap !important;
    flex-wrap: wrap !important;
  }
  .flex-md-nowrap {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
  }
  .flex-md-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
    flex-wrap: wrap-reverse !important;
  }
  .flex-md-fill {
    -ms-flex: 1 1 auto !important;
    flex: 1 1 auto !important;
  }
  .flex-md-grow-0 {
    -ms-flex-positive: 0 !important;
    flex-grow: 0 !important;
  }
  .flex-md-grow-1 {
    -ms-flex-positive: 1 !important;
    flex-grow: 1 !important;
  }
  .flex-md-shrink-0 {
    -ms-flex-negative: 0 !important;
    flex-shrink: 0 !important;
  }
  .flex-md-shrink-1 {
    -ms-flex-negative: 1 !important;
    flex-shrink: 1 !important;
  }
  .justify-content-md-start {
    -ms-flex-pack: start !important;
    justify-content: flex-start !important;
  }
  .justify-content-md-end {
    -ms-flex-pack: end !important;
    justify-content: flex-end !important;
  }
  .justify-content-md-center {
    -ms-flex-pack: center !important;
    justify-content: center !important;
  }
  .justify-content-md-between {
    -ms-flex-pack: justify !important;
    justify-content: space-between !important;
  }
  .justify-content-md-around {
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important;
  }
  .align-items-md-start {
    -ms-flex-align: start !important;
    align-items: flex-start !important;
  }
  .align-items-md-end {
    -ms-flex-align: end !important;
    align-items: flex-end !important;
  }
  .align-items-md-center {
    -ms-flex-align: center !important;
    align-items: center !important;
  }
  .align-items-md-baseline {
    -ms-flex-align: baseline !important;
    align-items: baseline !important;
  }
  .align-items-md-stretch {
    -ms-flex-align: stretch !important;
    align-items: stretch !important;
  }
  .align-content-md-start {
    -ms-flex-line-pack: start !important;
    align-content: flex-start !important;
  }
  .align-content-md-end {
    -ms-flex-line-pack: end !important;
    align-content: flex-end !important;
  }
  .align-content-md-center {
    -ms-flex-line-pack: center !important;
    align-content: center !important;
  }
  .align-content-md-between {
    -ms-flex-line-pack: justify !important;
    align-content: space-between !important;
  }
  .align-content-md-around {
    -ms-flex-line-pack: distribute !important;
    align-content: space-around !important;
  }
  .align-content-md-stretch {
    -ms-flex-line-pack: stretch !important;
    align-content: stretch !important;
  }
  .align-self-md-auto {
    -ms-flex-item-align: auto !important;
    align-self: auto !important;
  }
  .align-self-md-start {
    -ms-flex-item-align: start !important;
    align-self: flex-start !important;
  }
  .align-self-md-end {
    -ms-flex-item-align: end !important;
    align-self: flex-end !important;
  }
  .align-self-md-center {
    -ms-flex-item-align: center !important;
    align-self: center !important;
  }
  .align-self-md-baseline {
    -ms-flex-item-align: baseline !important;
    align-self: baseline !important;
  }
  .align-self-md-stretch {
    -ms-flex-item-align: stretch !important;
    align-self: stretch !important;
  }
}
@media (min-width: 1025px) {
  .flex-lg-row {
    -ms-flex-direction: row !important;
    flex-direction: row !important;
  }
  .flex-lg-column {
    -ms-flex-direction: column !important;
    flex-direction: column !important;
  }
  .flex-lg-row-reverse {
    -ms-flex-direction: row-reverse !important;
    flex-direction: row-reverse !important;
  }
  .flex-lg-column-reverse {
    -ms-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important;
  }
  .flex-lg-wrap {
    -ms-flex-wrap: wrap !important;
    flex-wrap: wrap !important;
  }
  .flex-lg-nowrap {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
  }
  .flex-lg-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
    flex-wrap: wrap-reverse !important;
  }
  .flex-lg-fill {
    -ms-flex: 1 1 auto !important;
    flex: 1 1 auto !important;
  }
  .flex-lg-grow-0 {
    -ms-flex-positive: 0 !important;
    flex-grow: 0 !important;
  }
  .flex-lg-grow-1 {
    -ms-flex-positive: 1 !important;
    flex-grow: 1 !important;
  }
  .flex-lg-shrink-0 {
    -ms-flex-negative: 0 !important;
    flex-shrink: 0 !important;
  }
  .flex-lg-shrink-1 {
    -ms-flex-negative: 1 !important;
    flex-shrink: 1 !important;
  }
  .justify-content-lg-start {
    -ms-flex-pack: start !important;
    justify-content: flex-start !important;
  }
  .justify-content-lg-end {
    -ms-flex-pack: end !important;
    justify-content: flex-end !important;
  }
  .justify-content-lg-center {
    -ms-flex-pack: center !important;
    justify-content: center !important;
  }
  .justify-content-lg-between {
    -ms-flex-pack: justify !important;
    justify-content: space-between !important;
  }
  .justify-content-lg-around {
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important;
  }
  .align-items-lg-start {
    -ms-flex-align: start !important;
    align-items: flex-start !important;
  }
  .align-items-lg-end {
    -ms-flex-align: end !important;
    align-items: flex-end !important;
  }
  .align-items-lg-center {
    -ms-flex-align: center !important;
    align-items: center !important;
  }
  .align-items-lg-baseline {
    -ms-flex-align: baseline !important;
    align-items: baseline !important;
  }
  .align-items-lg-stretch {
    -ms-flex-align: stretch !important;
    align-items: stretch !important;
  }
  .align-content-lg-start {
    -ms-flex-line-pack: start !important;
    align-content: flex-start !important;
  }
  .align-content-lg-end {
    -ms-flex-line-pack: end !important;
    align-content: flex-end !important;
  }
  .align-content-lg-center {
    -ms-flex-line-pack: center !important;
    align-content: center !important;
  }
  .align-content-lg-between {
    -ms-flex-line-pack: justify !important;
    align-content: space-between !important;
  }
  .align-content-lg-around {
    -ms-flex-line-pack: distribute !important;
    align-content: space-around !important;
  }
  .align-content-lg-stretch {
    -ms-flex-line-pack: stretch !important;
    align-content: stretch !important;
  }
  .align-self-lg-auto {
    -ms-flex-item-align: auto !important;
    align-self: auto !important;
  }
  .align-self-lg-start {
    -ms-flex-item-align: start !important;
    align-self: flex-start !important;
  }
  .align-self-lg-end {
    -ms-flex-item-align: end !important;
    align-self: flex-end !important;
  }
  .align-self-lg-center {
    -ms-flex-item-align: center !important;
    align-self: center !important;
  }
  .align-self-lg-baseline {
    -ms-flex-item-align: baseline !important;
    align-self: baseline !important;
  }
  .align-self-lg-stretch {
    -ms-flex-item-align: stretch !important;
    align-self: stretch !important;
  }
}
@media (min-width: 1200px) {
  .flex-xl-row {
    -ms-flex-direction: row !important;
    flex-direction: row !important;
  }
  .flex-xl-column {
    -ms-flex-direction: column !important;
    flex-direction: column !important;
  }
  .flex-xl-row-reverse {
    -ms-flex-direction: row-reverse !important;
    flex-direction: row-reverse !important;
  }
  .flex-xl-column-reverse {
    -ms-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important;
  }
  .flex-xl-wrap {
    -ms-flex-wrap: wrap !important;
    flex-wrap: wrap !important;
  }
  .flex-xl-nowrap {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
  }
  .flex-xl-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
    flex-wrap: wrap-reverse !important;
  }
  .flex-xl-fill {
    -ms-flex: 1 1 auto !important;
    flex: 1 1 auto !important;
  }
  .flex-xl-grow-0 {
    -ms-flex-positive: 0 !important;
    flex-grow: 0 !important;
  }
  .flex-xl-grow-1 {
    -ms-flex-positive: 1 !important;
    flex-grow: 1 !important;
  }
  .flex-xl-shrink-0 {
    -ms-flex-negative: 0 !important;
    flex-shrink: 0 !important;
  }
  .flex-xl-shrink-1 {
    -ms-flex-negative: 1 !important;
    flex-shrink: 1 !important;
  }
  .justify-content-xl-start {
    -ms-flex-pack: start !important;
    justify-content: flex-start !important;
  }
  .justify-content-xl-end {
    -ms-flex-pack: end !important;
    justify-content: flex-end !important;
  }
  .justify-content-xl-center {
    -ms-flex-pack: center !important;
    justify-content: center !important;
  }
  .justify-content-xl-between {
    -ms-flex-pack: justify !important;
    justify-content: space-between !important;
  }
  .justify-content-xl-around {
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important;
  }
  .align-items-xl-start {
    -ms-flex-align: start !important;
    align-items: flex-start !important;
  }
  .align-items-xl-end {
    -ms-flex-align: end !important;
    align-items: flex-end !important;
  }
  .align-items-xl-center {
    -ms-flex-align: center !important;
    align-items: center !important;
  }
  .align-items-xl-baseline {
    -ms-flex-align: baseline !important;
    align-items: baseline !important;
  }
  .align-items-xl-stretch {
    -ms-flex-align: stretch !important;
    align-items: stretch !important;
  }
  .align-content-xl-start {
    -ms-flex-line-pack: start !important;
    align-content: flex-start !important;
  }
  .align-content-xl-end {
    -ms-flex-line-pack: end !important;
    align-content: flex-end !important;
  }
  .align-content-xl-center {
    -ms-flex-line-pack: center !important;
    align-content: center !important;
  }
  .align-content-xl-between {
    -ms-flex-line-pack: justify !important;
    align-content: space-between !important;
  }
  .align-content-xl-around {
    -ms-flex-line-pack: distribute !important;
    align-content: space-around !important;
  }
  .align-content-xl-stretch {
    -ms-flex-line-pack: stretch !important;
    align-content: stretch !important;
  }
  .align-self-xl-auto {
    -ms-flex-item-align: auto !important;
    align-self: auto !important;
  }
  .align-self-xl-start {
    -ms-flex-item-align: start !important;
    align-self: flex-start !important;
  }
  .align-self-xl-end {
    -ms-flex-item-align: end !important;
    align-self: flex-end !important;
  }
  .align-self-xl-center {
    -ms-flex-item-align: center !important;
    align-self: center !important;
  }
  .align-self-xl-baseline {
    -ms-flex-item-align: baseline !important;
    align-self: baseline !important;
  }
  .align-self-xl-stretch {
    -ms-flex-item-align: stretch !important;
    align-self: stretch !important;
  }
}
.text-justify {
  text-align: justify !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.text-left {
  text-align: left !important;
}

.text-right {
  text-align: right !important;
}

.text-center {
  text-align: center !important;
}

@media (min-width: 576px) {
  .text-sm-left {
    text-align: left !important;
  }
  .text-sm-right {
    text-align: right !important;
  }
  .text-sm-center {
    text-align: center !important;
  }
}
@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important;
  }
  .text-md-right {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
}
@media (min-width: 1025px) {
  .text-lg-left {
    text-align: left !important;
  }
  .text-lg-right {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important;
  }
  .text-xl-right {
    text-align: right !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
}
.text-uppercase {
  text-transform: uppercase !important;
}

.font-weight-light {
  font-weight: 300 !important;
}

.font-weight-normal {
  font-weight: 400 !important;
}

.font-weight-bold {
  font-weight: 700 !important;
}

.font-italic {
  font-style: italic !important;
}

.img-fluid {
  max-width: 100%;
  height: auto;
}

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}

.embed-responsive::before {
  display: block;
  content: "";
}

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

.embed-responsive-21by9::before {
  padding-top: 42.857143%;
}

.embed-responsive-16by9::before {
  padding-top: 56.25%;
}

.embed-responsive-4by3::before {
  padding-top: 75%;
}

.embed-responsive-1by1::before {
  padding-top: 100%;
}

.d-none {
  display: none !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-table {
  display: table !important;
}

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-flex {
  display: -ms-flexbox !important;
  display: flex !important;
}

.d-inline-flex {
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
}

@media (min-width: 576px) {
  .d-sm-none {
    display: none !important;
  }
  .d-sm-inline {
    display: inline !important;
  }
  .d-sm-inline-block {
    display: inline-block !important;
  }
  .d-sm-block {
    display: block !important;
  }
  .d-sm-table {
    display: table !important;
  }
  .d-sm-table-row {
    display: table-row !important;
  }
  .d-sm-table-cell {
    display: table-cell !important;
  }
  .d-sm-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-sm-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
@media (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }
  .d-md-inline {
    display: inline !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-table {
    display: table !important;
  }
  .d-md-table-row {
    display: table-row !important;
  }
  .d-md-table-cell {
    display: table-cell !important;
  }
  .d-md-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-md-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
@media (min-width: 1025px) {
  .d-lg-none {
    display: none !important;
  }
  .d-lg-inline {
    display: inline !important;
  }
  .d-lg-inline-block {
    display: inline-block !important;
  }
  .d-lg-block {
    display: block !important;
  }
  .d-lg-table {
    display: table !important;
  }
  .d-lg-table-row {
    display: table-row !important;
  }
  .d-lg-table-cell {
    display: table-cell !important;
  }
  .d-lg-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-lg-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important;
  }
  .d-xl-inline {
    display: inline !important;
  }
  .d-xl-inline-block {
    display: inline-block !important;
  }
  .d-xl-block {
    display: block !important;
  }
  .d-xl-table {
    display: table !important;
  }
  .d-xl-table-row {
    display: table-row !important;
  }
  .d-xl-table-cell {
    display: table-cell !important;
  }
  .d-xl-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-xl-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
.list-unstyled {
  margin: 0;
  padding: 0;
  list-style: none;
}

.m-0 {
  margin: 0 !important;
}

.p-0 {
  margin: 0 !important;
}

.mb-20 {
  margin-bottom: 20px !important;
}

svg:not(:root).svg-inline--fa {
  overflow: visible;
}

.svg-inline--fa {
  display: inline-block;
  font-size: inherit;
  height: 1em;
  overflow: visible;
  vertical-align: -0.125em;
}

.svg-inline--fa.fa-lg {
  vertical-align: -0.225em;
}

.svg-inline--fa.fa-w-1 {
  width: 0.0625em;
}

.svg-inline--fa.fa-w-2 {
  width: 0.125em;
}

.svg-inline--fa.fa-w-3 {
  width: 0.1875em;
}

.svg-inline--fa.fa-w-4 {
  width: 0.25em;
}

.svg-inline--fa.fa-w-5 {
  width: 0.3125em;
}

.svg-inline--fa.fa-w-6 {
  width: 0.375em;
}

.svg-inline--fa.fa-w-7 {
  width: 0.4375em;
}

.svg-inline--fa.fa-w-8 {
  width: 0.5em;
}

.svg-inline--fa.fa-w-9 {
  width: 0.5625em;
}

.svg-inline--fa.fa-w-10 {
  width: 0.625em;
}

.svg-inline--fa.fa-w-11 {
  width: 0.6875em;
}

.svg-inline--fa.fa-w-12 {
  width: 0.75em;
}

.svg-inline--fa.fa-w-13 {
  width: 0.8125em;
}

.svg-inline--fa.fa-w-14 {
  width: 0.875em;
}

.svg-inline--fa.fa-w-15 {
  width: 0.9375em;
}

.svg-inline--fa.fa-w-16 {
  width: 1em;
}

.svg-inline--fa.fa-w-17 {
  width: 1.0625em;
}

.svg-inline--fa.fa-w-18 {
  width: 1.125em;
}

.svg-inline--fa.fa-w-19 {
  width: 1.1875em;
}

.svg-inline--fa.fa-w-20 {
  width: 1.25em;
}

.svg-inline--fa.fa-pull-left {
  margin-right: 0.3em;
  width: auto;
}

.svg-inline--fa.fa-pull-right {
  margin-left: 0.3em;
  width: auto;
}

.svg-inline--fa.fa-border {
  height: 1.5em;
}

.svg-inline--fa.fa-li {
  width: 2em;
}

.svg-inline--fa.fa-fw {
  width: 1.25em;
}

.fa-layers svg.svg-inline--fa {
  bottom: 0;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
}

.fa-layers {
  display: inline-block;
  height: 1em;
  position: relative;
  text-align: center;
  vertical-align: -0.125em;
  width: 1em;
}

.fa-layers svg.svg-inline--fa {
  -webkit-transform-origin: center center;
  transform-origin: center center;
}

.fa-layers-text, .fa-layers-counter {
  display: inline-block;
  position: absolute;
  text-align: center;
}

.fa-layers-text {
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transform-origin: center center;
  transform-origin: center center;
}

.fa-layers-counter {
  background-color: #ff253a;
  border-radius: 1em;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #fff;
  height: 1.5em;
  line-height: 1;
  max-width: 5em;
  min-width: 1.5em;
  overflow: hidden;
  padding: 0.25em;
  right: 0;
  text-overflow: ellipsis;
  top: 0;
  -webkit-transform: scale(0.25);
  transform: scale(0.25);
  -webkit-transform-origin: top right;
  transform-origin: top right;
}

.fa-layers-bottom-right {
  bottom: 0;
  right: 0;
  top: auto;
  -webkit-transform: scale(0.25);
  transform: scale(0.25);
  -webkit-transform-origin: bottom right;
  transform-origin: bottom right;
}

.fa-layers-bottom-left {
  bottom: 0;
  left: 0;
  right: auto;
  top: auto;
  -webkit-transform: scale(0.25);
  transform: scale(0.25);
  -webkit-transform-origin: bottom left;
  transform-origin: bottom left;
}

.fa-layers-top-right {
  right: 0;
  top: 0;
  -webkit-transform: scale(0.25);
  transform: scale(0.25);
  -webkit-transform-origin: top right;
  transform-origin: top right;
}

.fa-layers-top-left {
  left: 0;
  right: auto;
  top: 0;
  -webkit-transform: scale(0.25);
  transform: scale(0.25);
  -webkit-transform-origin: top left;
  transform-origin: top left;
}

.fa-lg {
  font-size: 1.33333em;
  line-height: 0.75em;
  vertical-align: -0.0667em;
}

.fa-xs {
  font-size: 0.75em;
}

.fa-sm {
  font-size: 0.875em;
}

.fa-1x {
  font-size: 1em;
}

.fa-2x {
  font-size: 2em;
}

.fa-3x {
  font-size: 3em;
}

.fa-4x {
  font-size: 4em;
}

.fa-5x {
  font-size: 5em;
}

.fa-6x {
  font-size: 6em;
}

.fa-7x {
  font-size: 7em;
}

.fa-8x {
  font-size: 8em;
}

.fa-9x {
  font-size: 9em;
}

.fa-10x {
  font-size: 10em;
}

.fa-fw {
  text-align: center;
  width: 1.25em;
}

.fa-ul {
  list-style-type: none;
  margin-left: 2.5em;
  padding-left: 0;
}

.fa-ul > li {
  position: relative;
}

.fa-li {
  left: -2em;
  position: absolute;
  text-align: center;
  width: 2em;
  line-height: inherit;
}

.fa-border {
  border: solid 0.08em #eee;
  border-radius: 0.1em;
  padding: 0.2em 0.25em 0.15em;
}

.fa-pull-left {
  float: left;
}

.fa-pull-right {
  float: right;
}

.fa.fa-pull-left, .fas.fa-pull-left, .far.fa-pull-left, .fal.fa-pull-left, .fab.fa-pull-left {
  margin-right: 0.3em;
}

.fa.fa-pull-right, .fas.fa-pull-right, .far.fa-pull-right, .fal.fa-pull-right, .fab.fa-pull-right {
  margin-left: 0.3em;
}

.fa-spin {
  -webkit-animation: fa-spin 2s infinite linear;
  animation: fa-spin 2s infinite linear;
}

.fa-pulse {
  -webkit-animation: fa-spin 1s infinite steps(8);
  animation: fa-spin 1s infinite steps(8);
}

@-webkit-keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.fa-rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  -webkit-transform: rotate(270deg);
  transform: rotate(270deg);
}

.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  -webkit-transform: scale(-1, 1);
  transform: scale(-1, 1);
}

.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  -webkit-transform: scale(1, -1);
  transform: scale(1, -1);
}

.fa-flip-horizontal.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  -webkit-transform: scale(-1, -1);
  transform: scale(-1, -1);
}

:root .fa-rotate-90, :root .fa-rotate-180, :root .fa-rotate-270, :root .fa-flip-horizontal, :root .fa-flip-vertical {
  -webkit-filter: none;
  filter: none;
}

.fa-stack {
  display: inline-block;
  height: 2em;
  position: relative;
  width: 2em;
}

.fa-stack-1x, .fa-stack-2x {
  bottom: 0;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
}

.svg-inline--fa.fa-stack-1x {
  height: 1em;
  width: 1em;
}

.svg-inline--fa.fa-stack-2x {
  height: 2em;
  width: 2em;
}

.fa-inverse {
  color: #fff;
}

.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}

.owl-carousel, .owl-carousel .owl-item {
  -webkit-tap-highlight-color: transparent;
  position: relative;
}

.owl-carousel {
  display: none;
  width: 100%;
  z-index: 1;
}

.owl-carousel .owl-stage {
  position: relative;
  -ms-touch-action: pan-Y;
  touch-action: manipulation;
  -moz-backface-visibility: hidden;
}

.owl-carousel .owl-stage:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

.owl-carousel .owl-stage-outer {
  position: relative;
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0);
}

.owl-carousel .owl-item, .owl-carousel .owl-wrapper {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
}

.owl-carousel .owl-item {
  min-height: 1px;
  float: left;
  -webkit-backface-visibility: hidden;
  -webkit-touch-callout: none;
}

.owl-carousel .owl-item img {
  display: block;
  width: 100%;
}

.owl-carousel .owl-dots.disabled, .owl-carousel .owl-nav.disabled {
  display: none;
}

.no-js .owl-carousel, .owl-carousel.owl-loaded {
  display: block;
}

.owl-carousel .owl-dot, .owl-carousel .owl-nav .owl-next, .owl-carousel .owl-nav .owl-prev {
  cursor: pointer;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.owl-carousel .owl-nav button.owl-next, .owl-carousel .owl-nav button.owl-prev, .owl-carousel button.owl-dot {
  background: 0 0;
  color: inherit;
  border: none;
  padding: 0 !important;
  font: inherit;
}

.owl-carousel.owl-loading {
  opacity: 0;
  display: block;
}

.owl-carousel.owl-hidden {
  opacity: 0;
}

.owl-carousel.owl-refresh .owl-item {
  visibility: hidden;
}

.owl-carousel.owl-drag .owl-item {
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.owl-carousel.owl-grab {
  cursor: move;
  cursor: grab;
}

.owl-carousel.owl-rtl {
  direction: rtl;
}

.owl-carousel.owl-rtl .owl-item {
  float: right;
}

.owl-carousel .animated {
  animation-duration: 1s;
  animation-fill-mode: both;
}

.owl-carousel .owl-animated-in {
  z-index: 0;
}

.owl-carousel .owl-animated-out {
  z-index: 1;
}

.owl-carousel .fadeOut {
  animation-name: fadeOut;
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.owl-height {
  transition: height 0.5s ease-in-out;
}

.owl-carousel .owl-item .owl-lazy {
  opacity: 0;
  transition: opacity 0.4s ease;
}

.owl-carousel .owl-item .owl-lazy:not([src]), .owl-carousel .owl-item .owl-lazy[src^=""] {
  max-height: 0;
}

.owl-carousel .owl-item img.owl-lazy {
  transform-style: preserve-3d;
}

.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000;
}

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url(owl.video.play.png) no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: transform 0.1s ease;
}

.owl-carousel .owl-video-play-icon:hover {
  -ms-transform: scale(1.3, 1.3);
  transform: scale(1.3, 1.3);
}

.owl-carousel .owl-video-playing .owl-video-play-icon, .owl-carousel .owl-video-playing .owl-video-tn {
  display: none;
}

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 0.4s ease;
}

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%;
}

body.compensate-for-scrollbar {
  overflow: hidden;
}

.fancybox-active {
  height: auto;
}

.fancybox-is-hidden {
  left: -9999px;
  margin: 0;
  position: absolute !important;
  top: -9999px;
  visibility: hidden;
}

.fancybox-container {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif;
  height: 100%;
  left: 0;
  position: fixed;
  -webkit-tap-highlight-color: transparent;
  top: 0;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  width: 100%;
  z-index: 99992;
}

.fancybox-container * {
  box-sizing: border-box;
}

.fancybox-bg, .fancybox-inner, .fancybox-outer, .fancybox-stage {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.fancybox-outer {
  -webkit-overflow-scrolling: touch;
  overflow-y: auto;
}

.fancybox-bg {
  background: #1e1e1e;
  opacity: 0;
  transition-duration: inherit;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71);
}

.fancybox-is-open .fancybox-bg {
  opacity: 0.87;
  transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}

.fancybox-caption, .fancybox-infobar, .fancybox-navigation .fancybox-button, .fancybox-toolbar {
  direction: ltr;
  opacity: 0;
  position: absolute;
  transition: opacity 0.25s, visibility 0s linear 0.25s;
  visibility: hidden;
  z-index: 99997;
}

.fancybox-show-caption .fancybox-caption, .fancybox-show-infobar .fancybox-infobar, .fancybox-show-nav .fancybox-navigation .fancybox-button, .fancybox-show-toolbar .fancybox-toolbar {
  opacity: 1;
  transition: opacity 0.25s, visibility 0s;
  visibility: visible;
}

.fancybox-infobar {
  color: #ccc;
  font-size: 13px;
  -webkit-font-smoothing: subpixel-antialiased;
  height: 44px;
  left: 0;
  line-height: 44px;
  min-width: 44px;
  mix-blend-mode: difference;
  padding: 0 10px;
  pointer-events: none;
  text-align: center;
  top: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.fancybox-toolbar {
  right: 0;
  top: 0;
}

.fancybox-stage {
  direction: ltr;
  overflow: visible;
  -webkit-transform: translateZ(0);
  z-index: 99994;
}

.fancybox-is-open .fancybox-stage {
  overflow: hidden;
}

.fancybox-slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  display: none;
  height: 100%;
  left: 0;
  outline: none;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: absolute;
  text-align: center;
  top: 0;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  white-space: normal;
  width: 100%;
  z-index: 99994;
}

.fancybox-slide:before {
  content: "";
  display: inline-block;
  height: 100%;
  margin-right: -0.25em;
  vertical-align: middle;
  width: 0;
}

.fancybox-is-sliding .fancybox-slide, .fancybox-slide--current, .fancybox-slide--next, .fancybox-slide--previous {
  display: block;
}

.fancybox-slide--next {
  z-index: 99995;
}

.fancybox-slide--image {
  overflow: visible;
  padding: 44px 0;
}

.fancybox-slide--video {
  padding: 44px 0;
}

.fancybox-slide--image:before {
  display: none;
}

.fancybox-slide--html {
  padding: 6px 6px 0;
}

.fancybox-slide--iframe {
  padding: 44px 44px 0;
}

.fancybox-content {
  background: #fff;
  display: inline-block;
  margin: 0 0 6px;
  max-width: 100%;
  overflow: auto;
  padding: 0;
  padding: 24px;
  position: relative;
  text-align: left;
  vertical-align: middle;
}

.fancybox-slide--image .fancybox-content {
  -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.14, 1);
  animation-timing-function: cubic-bezier(0.5, 0, 0.14, 1);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background: transparent;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  left: 0;
  margin: 0;
  max-width: none;
  overflow: visible;
  padding: 0;
  position: absolute;
  top: 0;
  -webkit-transform-origin: top left;
  transform-origin: top left;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  z-index: 99995;
}

.fancybox-can-zoomOut .fancybox-content {
  cursor: zoom-out;
}

.fancybox-can-zoomIn .fancybox-content {
  cursor: zoom-in;
}

.fancybox-can-drag .fancybox-content {
  cursor: -webkit-grab;
  cursor: grab;
}

.fancybox-is-dragging .fancybox-content {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.fancybox-container [data-selectable=true] {
  cursor: text;
}

.fancybox-image, .fancybox-spaceball {
  background: transparent;
  border: 0;
  height: 100%;
  left: 0;
  margin: 0;
  max-height: none;
  max-width: none;
  padding: 0;
  position: absolute;
  top: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  width: 100%;
}

.fancybox-spaceball {
  z-index: 1;
}

.fancybox-slide--html .fancybox-content {
  margin-bottom: 6px;
}

.fancybox-slide--iframe .fancybox-content, .fancybox-slide--map .fancybox-content, .fancybox-slide--video .fancybox-content {
  height: 100%;
  margin: 0;
  overflow: visible;
  padding: 0;
  width: 100%;
}

.fancybox-slide--video .fancybox-content {
  background: #000;
}

.fancybox-slide--map .fancybox-content {
  background: #e5e3df;
}

.fancybox-slide--iframe .fancybox-content {
  background: #fff;
  height: calc(100% - 44px);
  margin-bottom: 44px;
}

.fancybox-iframe, .fancybox-video {
  background: transparent;
  border: 0;
  height: 100%;
  margin: 0;
  overflow: hidden;
  padding: 0;
  width: 100%;
}

.fancybox-iframe {
  vertical-align: top;
}

.fancybox-error {
  background: #fff;
  cursor: default;
  max-width: 400px;
  padding: 40px;
  width: 100%;
}

.fancybox-error p {
  color: #444;
  font-size: 16px;
  line-height: 20px;
  margin: 0;
  padding: 0;
}

.fancybox-button {
  background: rgba(30, 30, 30, 0.6);
  border: 0;
  border-radius: 0;
  cursor: pointer;
  display: inline-block;
  height: 44px;
  margin: 0;
  outline: none;
  padding: 10px;
  transition: color 0.2s;
  vertical-align: top;
  width: 44px;
}

.fancybox-button, .fancybox-button:link, .fancybox-button:visited {
  color: #ccc;
}

.fancybox-button:focus, .fancybox-button:hover {
  color: #fff;
}

.fancybox-button.disabled, .fancybox-button.disabled:hover, .fancybox-button[disabled], .fancybox-button[disabled]:hover {
  color: #888;
  cursor: default;
}

.fancybox-button svg {
  display: block;
  overflow: visible;
  position: relative;
  shape-rendering: geometricPrecision;
}

.fancybox-button svg path {
  fill: transparent;
  stroke: currentColor;
  stroke-linejoin: round;
  stroke-width: 3;
}

.fancybox-button--pause svg path:nth-child(1), .fancybox-button--play svg path:nth-child(2) {
  display: none;
}

.fancybox-button--play svg path, .fancybox-button--share svg path, .fancybox-button--thumbs svg path {
  fill: currentColor;
}

.fancybox-button--share svg path {
  stroke-width: 1;
}

.fancybox-navigation .fancybox-button {
  height: 38px;
  opacity: 0;
  padding: 6px;
  position: absolute;
  top: 50%;
  width: 38px;
  margin-top: -14px;
}

.fancybox-show-nav .fancybox-navigation .fancybox-button {
  transition: opacity 0.25s, visibility 0s, color 0.25s;
}

.fancybox-navigation .fancybox-button:after {
  content: "";
  left: -25px;
  padding: 50px;
  position: absolute;
  top: 50%;
  margin-top: -50px;
}

.fancybox-navigation .fancybox-button--arrow_left {
  left: 6px;
}

.fancybox-navigation .fancybox-button--arrow_right {
  right: 6px;
}

.fancybox-close-small {
  background: transparent;
  border: 0;
  border-radius: 0;
  color: #555;
  cursor: pointer;
  height: 44px;
  margin: 0;
  padding: 6px;
  position: absolute;
  right: 0;
  top: 0;
  width: 44px;
  z-index: 10;
}

.fancybox-close-small svg {
  fill: transparent;
  opacity: 0.8;
  stroke: currentColor;
  stroke-width: 1.5;
  transition: stroke 0.1s;
}

.fancybox-close-small:focus {
  outline: none;
}

.fancybox-close-small:hover svg {
  opacity: 1;
}

.fancybox-slide--iframe .fancybox-close-small, .fancybox-slide--image .fancybox-close-small, .fancybox-slide--video .fancybox-close-small {
  color: #ccc;
  padding: 5px;
  right: -12px;
  top: -44px;
}

.fancybox-slide--iframe .fancybox-close-small:hover svg, .fancybox-slide--image .fancybox-close-small:hover svg, .fancybox-slide--video .fancybox-close-small:hover svg {
  background: transparent;
  color: #fff;
}

.fancybox-is-scaling .fancybox-close-small, .fancybox-is-zoomable.fancybox-can-drag .fancybox-close-small {
  display: none;
}

.fancybox-caption {
  bottom: 0;
  color: #fff;
  font-size: 14px;
  font-weight: 400;
  left: 0;
  line-height: 1.5;
  padding: 25px 44px;
  right: 0;
}

.fancybox-caption a, .fancybox-caption a:link, .fancybox-caption a:visited {
  color: #ccc;
  text-decoration: none;
}

.fancybox-caption a:hover {
  color: #fff;
  text-decoration: underline;
}

.fancybox-loading {
  -webkit-animation: a 0.8s infinite linear;
  animation: a 0.8s infinite linear;
  background: transparent;
  border: 6px solid hsla(0, 0%, 39%, 0.5);
  border-radius: 100%;
  border-top-color: #fff;
  height: 60px;
  left: 50%;
  margin: -30px 0 0 -30px;
  opacity: 0.6;
  padding: 0;
  position: absolute;
  top: 50%;
  width: 60px;
  z-index: 99999;
}

@-webkit-keyframes a {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@keyframes a {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
.fancybox-animated {
  transition-timing-function: cubic-bezier(0, 0, 0.25, 1);
}

.fancybox-fx-slide.fancybox-slide--previous {
  opacity: 0;
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--next {
  opacity: 0;
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--current {
  opacity: 1;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}

.fancybox-fx-fade.fancybox-slide--next, .fancybox-fx-fade.fancybox-slide--previous {
  opacity: 0;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.fancybox-fx-fade.fancybox-slide--current {
  opacity: 1;
}

.fancybox-fx-zoom-in-out.fancybox-slide--previous {
  opacity: 0;
  -webkit-transform: scale3d(1.5, 1.5, 1.5);
  transform: scale3d(1.5, 1.5, 1.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--next {
  opacity: 0;
  -webkit-transform: scale3d(0.5, 0.5, 0.5);
  transform: scale3d(0.5, 0.5, 0.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--current {
  opacity: 1;
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

.fancybox-fx-rotate.fancybox-slide--previous {
  opacity: 0;
  -webkit-transform: rotate(-1turn);
  transform: rotate(-1turn);
}

.fancybox-fx-rotate.fancybox-slide--next {
  opacity: 0;
  -webkit-transform: rotate(1turn);
  transform: rotate(1turn);
}

.fancybox-fx-rotate.fancybox-slide--current {
  opacity: 1;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}

.fancybox-fx-circular.fancybox-slide--previous {
  opacity: 0;
  -webkit-transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
  transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--next {
  opacity: 0;
  -webkit-transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
  transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--current {
  opacity: 1;
  -webkit-transform: scaleX(1) translateZ(0);
  transform: scaleX(1) translateZ(0);
}

.fancybox-fx-tube.fancybox-slide--previous {
  -webkit-transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg);
  transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg);
}

.fancybox-fx-tube.fancybox-slide--next {
  -webkit-transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg);
  transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg);
}

.fancybox-fx-tube.fancybox-slide--current {
  -webkit-transform: translateZ(0) scale(1);
  transform: translateZ(0) scale(1);
}

.fancybox-share {
  background: #f4f4f4;
  border-radius: 3px;
  max-width: 90%;
  padding: 30px;
  text-align: center;
}

.fancybox-share h1 {
  color: #222;
  font-size: 35px;
  font-weight: 700;
  margin: 0 0 20px;
}

.fancybox-share p {
  margin: 0;
  padding: 0;
}

.fancybox-share__button {
  border: 0;
  border-radius: 3px;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  line-height: 40px;
  margin: 0 5px 10px;
  min-width: 130px;
  padding: 0 15px;
  text-decoration: none;
  transition: all 0.2s;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  white-space: nowrap;
}

.fancybox-share__button:link, .fancybox-share__button:visited {
  color: #fff;
}

.fancybox-share__button:hover {
  text-decoration: none;
}

.fancybox-share__button--fb {
  background: #3b5998;
}

.fancybox-share__button--fb:hover {
  background: #344e86;
}

.fancybox-share__button--pt {
  background: #bd081d;
}

.fancybox-share__button--pt:hover {
  background: #aa0719;
}

.fancybox-share__button--tw {
  background: #1da1f2;
}

.fancybox-share__button--tw:hover {
  background: #0d95e8;
}

.fancybox-share__button svg {
  height: 25px;
  margin-right: 7px;
  position: relative;
  top: -1px;
  vertical-align: middle;
  width: 25px;
}

.fancybox-share__button svg path {
  fill: #fff;
}

.fancybox-share__input {
  background: transparent;
  border: 0;
  border-bottom: 1px solid #d7d7d7;
  border-radius: 0;
  color: #5d5b5b;
  font-size: 14px;
  margin: 10px 0 0;
  outline: none;
  padding: 10px 15px;
  width: 100%;
}

.fancybox-thumbs {
  background: #fff;
  bottom: 0;
  display: none;
  margin: 0;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  padding: 2px 2px 4px;
  position: absolute;
  right: 0;
  -webkit-tap-highlight-color: transparent;
  top: 0;
  width: 212px;
  z-index: 99995;
}

.fancybox-thumbs-x {
  overflow-x: auto;
  overflow-y: hidden;
}

.fancybox-show-thumbs .fancybox-thumbs {
  display: block;
}

.fancybox-show-thumbs .fancybox-inner {
  right: 212px;
}

.fancybox-thumbs > ul {
  font-size: 0;
  height: 100%;
  list-style: none;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0;
  position: absolute;
  position: relative;
  white-space: nowrap;
  width: 100%;
}

.fancybox-thumbs-x > ul {
  overflow: hidden;
}

.fancybox-thumbs-y > ul::-webkit-scrollbar {
  width: 7px;
}

.fancybox-thumbs-y > ul::-webkit-scrollbar-track {
  background: #fff;
  border-radius: 10px;
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
}

.fancybox-thumbs-y > ul::-webkit-scrollbar-thumb {
  background: #2a2a2a;
  border-radius: 10px;
}

.fancybox-thumbs > ul > li {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  cursor: pointer;
  float: left;
  height: 75px;
  margin: 2px;
  max-height: calc(100% - 8px);
  max-width: calc(50% - 4px);
  outline: none;
  overflow: hidden;
  padding: 0;
  position: relative;
  -webkit-tap-highlight-color: transparent;
  width: 100px;
}

.fancybox-thumbs-loading {
  background: rgba(0, 0, 0, 0.1);
}

.fancybox-thumbs > ul > li {
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.fancybox-thumbs > ul > li:before {
  border: 4px solid #4ea7f9;
  bottom: 0;
  content: "";
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
  transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 99991;
}

.fancybox-thumbs .fancybox-thumbs-active:before {
  opacity: 1;
}

@media (max-width: 800px) {
  .fancybox-thumbs {
    width: 110px;
  }
  .fancybox-show-thumbs .fancybox-inner {
    right: 110px;
  }
  .fancybox-thumbs > ul > li {
    max-width: calc(100% - 10px);
  }
}
.irs {
  position: relative;
  display: block;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.irs-line {
  position: relative;
  display: block;
  overflow: hidden;
  outline: none !important;
}

.irs-line-left, .irs-line-mid, .irs-line-right {
  position: absolute;
  display: block;
  top: 0;
}

.irs-line-left {
  left: 0;
  width: 11%;
}

.irs-line-mid {
  left: 9%;
  width: 82%;
}

.irs-line-right {
  right: 0;
  width: 11%;
}

.irs-bar {
  position: absolute;
  display: block;
  left: 0;
  width: 0;
}

.irs-bar-edge {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
}

.irs-shadow {
  position: absolute;
  display: none;
  left: 0;
  width: 0;
}

.irs-slider {
  position: absolute;
  display: block;
  cursor: default;
  z-index: 1;
}

.irs-slider.type_last {
  z-index: 2;
}

.irs-min {
  position: absolute;
  display: block;
  left: 0;
  cursor: default;
}

.irs-max {
  position: absolute;
  display: block;
  right: 0;
  cursor: default;
}

.irs-from, .irs-to, .irs-single {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  cursor: default;
  white-space: nowrap;
}

.irs-grid {
  position: absolute;
  display: none;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 20px;
}

.irs-with-grid .irs-grid {
  display: block;
}

.irs-grid-pol {
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 8px;
  background: #000;
}

.irs-grid-pol.small {
  height: 4px;
}

.irs-grid-text {
  position: absolute;
  bottom: 0;
  left: 0;
  white-space: nowrap;
  text-align: center;
  font-size: 9px;
  line-height: 9px;
  padding: 0 3px;
  color: #000;
}

.irs-disable-mask {
  position: absolute;
  display: block;
  top: 0;
  left: -1%;
  width: 102%;
  height: 100%;
  cursor: default;
  background: rgba(0, 0, 0, 0);
  z-index: 2;
}

.irs-disabled {
  opacity: 0.4;
}

.lt-ie9 .irs-disabled {
  filter: alpha(opacity=40);
}

.irs-hidden-input {
  position: absolute !important;
  display: block !important;
  top: 0 !important;
  left: 0 !important;
  width: 0 !important;
  height: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  outline: none !important;
  z-index: -9999 !important;
  background: none !important;
  border-style: solid !important;
  border-color: transparent !important;
}

.irs {
  height: 46px;
}

.irs-line {
  height: 6px;
  top: 33px;
  background: #eee;
  border-radius: 16px;
}

.irs-line-left {
  height: 6px;
}

.irs-line-mid {
  height: 6px;
}

.irs-line-right {
  height: 6px;
}

.irs-bar {
  height: 6px;
  top: 33px;
  background: #42d6c3;
}

.irs-slider {
  top: 26px;
  width: 20px;
  height: 20px;
  border: 5px solid #fff;
  background: #42d6c3;
  border-radius: 50%;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
  cursor: pointer;
}

.irs-from, .irs-to, .irs-single {
  padding: 3px 5px 1px;
  font-size: 10px;
  line-height: 14px;
  font-weight: bold;
  background: #42d6c3;
  color: #fff;
}

.lt-ie9 .irs-from, .lt-ie9 .irs-to, .lt-ie9 .irs-single {
  background: #42d6c3;
}

.irs-from:after, .irs-to:after, .irs-single:after {
  position: absolute;
  display: block;
  content: "";
  bottom: -6px;
  left: 50%;
  width: 0;
  height: 0;
  margin-left: -3px;
  overflow: hidden;
  border: 3px solid transparent;
  border-top-color: #42d6c3;
}

/* Local Sass fallback for InSales-generated media/_colors.scss.liquid.
   InSales renders the Liquid file from theme settings; local Dart Sass needs
   plain SCSS variables to compile theme.scss during development. */
:root {
  --user-radius-insales_widget: 0px;
  --user-background-header-insales_widget: #f7f8fa;
  --user-font-size-insales_widget: 12px;
  --z-top-panel: 5000;
}

/* 1. Settings / Design system tokens */
/* Breakpoints mirror this theme's Bootstrap grid. In this theme `lg` starts at 1025px. */
/* 2. Base / Generic layout */
.insales_render {
  position: fixed;
  bottom: 0px;
  right: 0px;
  z-index: 5000;
  background: #fff;
  padding: 5px 10px;
  font-size: 11px;
  line-height: 15px;
}

body {
  font-family: "Manrope", "Inter", sans-serif;
  font-size: 14px;
  line-height: 22px;
  color: #374151;
  background: #f5f7fb;
  margin: 0;
  overflow-x: hidden;
}

button,
input,
select,
textarea {
  font-family: "Manrope", "Inter", sans-serif;
}

hr {
  display: block;
  margin: 0px 0px 40px;
  border: none;
  height: 0px;
  border-bottom: 1px solid #e5eaf2;
  overflow: hidden;
}

.far:before,
.fab:before,
.fas:before {
  display: none;
}

a,
button,
.button,
.input,
.rating-link {
  transition: color 0.2s linear, background-color 0.2s linear, border-color 0.2s linear;
}

a {
  color: #111827;
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

@media (min-width: 1025px) {
  a:hover {
    color: #0a2f83;
  }
}
.container {
  max-width: 1440px !important;
  margin-right: auto;
  margin-left: auto;
  padding-right: 32px;
  padding-left: 32px;
}

@media (min-width: 1600px) {
  .container {
    max-width: 1520px !important;
  }
}
@media (max-width: 767px) {
  .container {
    padding-right: 20px;
    padding-left: 20px;
  }
}
@media (max-width: 425px) {
  .container {
    padding-right: 10px;
    padding-left: 10px;
  }
}
.container .container {
  padding-right: 0px !important;
  padding-left: 0px !important;
}

b,
strong {
  font-weight: 600;
}

.overflow-hidden {
  overflow: hidden !important;
}

.layout--box {
  background: #f5f7fb;
  background-size: auto;
  background-attachment: scroll;
}
.layout--box .layout-page {
  background-color: #fff;
  max-width: 1520px;
  margin: 0px auto;
  box-shadow: 0px 8px 20px rgba(24, 32, 56, 0.04);
}

.sticky-block {
  position: sticky;
  top: 88px;
}

picture source {
  display: none !important;
}

/* Shared design-system layer: semantic scales and component contracts. */
/* UI primitives: low-level controls shared across pages. */
/* Buttons */
/* 3. Components / Buttons and inputs */
.button {
  display: inline-block;
  vertical-align: middle;
  border: none;
  background: none;
  font-family: "Inter", Arial, sans-serif;
  font-size: 14px;
  line-height: 22px;
  text-align: center;
  font-weight: 600;
  padding: 5px 10px;
  border-radius: 14px;
  cursor: pointer;
  text-decoration: none !important;
}
.button svg {
  margin-right: 5px;
}
.button--block {
  display: block;
  width: 100%;
}
.button--large {
  padding: 15px 20px;
}
.button--medium {
  padding: 10px 15px;
}
.button--small {
  font-size: 12px;
  line-height: 20px;
}
.button--default {
  background-color: #f5f7fb;
  color: #111827;
}
.button--off {
  background-color: #f5f7fb;
  color: #9ca3af;
  cursor: default;
}
.button--primary {
  background-color: #0a2f83;
  color: #fff;
}
.button--primary--inverse {
  background-color: #111827;
  color: #fff;
}
.button--secondary {
  background-color: #eef4ff;
  color: #0a2f83;
}
.button--secondary--inverse {
  background-color: #111827;
  color: #fff;
}
.button--black {
  background-color: #111827;
  color: #fff;
}
.button--counter {
  background-color: #f5f7fb;
  color: #9ca3af;
}
.button--empty {
  padding-left: 0px;
  padding-right: 0px;
  color: #111827;
  background: transparent;
  border-radius: 0px;
}
.button--empty--inverse {
  color: #0a2f83;
}
.button--icon {
  min-width: 32px;
  height: 32px;
  padding-left: 0px;
  padding-right: 0px;
  border-radius: 12px;
  line-height: 0px;
}
.button--icon svg {
  margin: 0px;
}
.button--icon span {
  margin-left: 10px;
}
.button--icon.button--large {
  min-width: 52px;
  height: 52px;
}
.button--icon.button--medium {
  min-width: 42px;
  height: 42px;
}
.button--icon.button--small {
  min-width: 30px;
  height: 30px;
  line-height: 20px;
}
.button--icon.button--small span {
  margin-left: 5px;
}
.button--info {
  color: #111827;
}
.button--info span {
  border-bottom: 1px dotted currentColor;
}
.button--underline span {
  border-bottom-style: solid;
}
.button--static {
  cursor: default;
  color: #111827 !important;
}
.button--disabled {
  cursor: default;
  color: #9ca3af;
}
.button--remove {
  color: #9ca3af;
}
.button--compares span[data-text-first]:before {
  content: attr(data-text-first);
}
.button--compares.is-added span[data-text-first]:before {
  content: attr(data-text-second);
}
.button--compares:hover, .button--compares.is-added {
  color: #0a2f83 !important;
}
.button--favorites:hover, .button--favorites.favorites-added {
  color: #ef3340 !important;
}
.button[data-item-add].is-in-cart {
  background: #effaf2;
  color: #167a2e !important;
  box-shadow: none;
}
.button[data-item-add].is-in-cart:hover {
  background: #effaf2;
  color: #167a2e !important;
}

@media (min-width: 1025px) {
  .button--default:hover {
    background-color: #111827;
    color: #fff;
  }
  .button--primary:hover {
    background-color: #111827;
    color: #fff;
  }
  .button--primary--inverse:hover {
    background-color: #0a2f83;
    color: #fff;
  }
  .button--secondary:hover {
    background-color: #111827;
    color: #fff;
  }
  .button--secondary--inverse:hover {
    background-color: #0a2f83;
    color: #fff;
  }
  .button--black:hover {
    color: #fff;
  }
  .button--counter:hover {
    color: #111827;
  }
  .button--empty:hover {
    color: #0a2f83;
  }
  .button--empty--inverse:hover {
    color: #111827;
  }
  .button--info:hover {
    color: #0a2f83;
  }
  .button--disabled:hover {
    color: #9ca3af;
  }
  .button--remove:hover {
    color: #ef3340;
  }
}
/* Cart motion */
/* Cart add-to-basket motion primitives shared by product cards and custom rails. */
.cart-fly-image {
  background: #fff;
  box-shadow: 0px 14px 34px rgba(6, 34, 95, 0.22);
}

.is-cart-pulse {
  animation: cartPulse 0.42s ease;
}

@keyframes cartPulse {
  0% {
    transform: scale(1);
  }
  45% {
    transform: scale(1.12);
  }
  100% {
    transform: scale(1);
  }
}
/* Forms */
/* Form controls shared across theme pages. */
.input,
select {
  display: inline-block;
  border: none;
  background: none;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  line-height: 22px;
  padding: 4px 9px;
  border: 1px solid #e5eaf2;
  border-radius: 12px;
  width: 100%;
  background-color: #fff;
  color: #111827;
}
.input--block,
select--block {
  display: block;
  width: 100%;
}
.input--large,
select--large {
  padding: 14px 19px;
}
.input--medium,
select--medium {
  padding: 9px 14px;
}
.input--white,
select--white {
  border-color: #fff;
}
.input--default,
select--default {
  border-color: #f5f7fb;
  background-color: #f5f7fb;
  color: #9ca3af;
}
.input--default:focus,
select--default:focus {
  border-color: #0a2f83;
  background-color: #fff;
  color: #111827;
}
.input--counter,
select--counter {
  text-align: center;
  font-weight: 600;
  border-color: #f5f7fb;
  background-color: #f5f7fb;
  color: #111827;
  padding-left: 0px;
  padding-right: 0px;
}
.input--error,
select--error {
  border-color: #ef3340;
}
.input--sort,
select--sort {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border: 2px solid #e5eaf2;
  background: #f5f7fb url("data:image/svg+xml;base64,PHN2ZyBhcmlhLWhpZGRlbj0idHJ1ZSIgZGF0YS1wcmVmaXg9ImZhcyIgZGF0YS1pY29uPSJzb3J0LWRvd24iIHJvbGU9ImltZyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMzIwIDUxMiIgY2xhc3M9InN2Zy1pbmxpbmUtLWZhIGZhLXNvcnQtZG93biBmYS13LTEwIGZhLTN4Ij48cGF0aCBmaWxsPSIjMDAwIiBkPSJNNDEgMjg4aDIzOGMyMS40IDAgMzIuMSAyNS45IDE3IDQxTDE3NyA0NDhjLTkuNCA5LjQtMjQuNiA5LjQtMzMuOSAwTDI0IDMyOWMtMTUuMS0xNS4xLTQuNC00MSAxNy00MXoiIGNsYXNzPSIiPjwvcGF0aD48L3N2Zz4=") right center no-repeat;
  background-position: calc(100% - 7px) 2px;
  background-size: 10px;
  color: #111827;
  font-size: 12px;
  line-height: 20px;
  font-weight: 600;
  height: 30px;
  padding: 3px 23px 3px 8px;
}

/* Share controls */
/* 3. Components / Share */
.share {
  padding: 10px 0px;
  background: #f5f7fb;
  text-align: center;
  margin: 20px 0px 40px;
  height: 50px;
}
.share .ya-share2__badge {
  border-radius: 0px !important;
}
.share .ya-share2__icon {
  width: 30px !important;
  height: 30px !important;
  background-size: 24px 24px !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
}
.share--article {
  margin: 0px 0px 40px;
}
.share--empty {
  padding: 0px;
  height: 1px;
  background: #e5eaf2;
}

.insales-section-share + .insales-section-tabs .tabs-list {
  margin: 0px 0px 25px;
}

/* Tabs */
/* 3. Components / Tabs */
.tabs-list {
  margin: 20px 0px 25px;
}
.tabs-list-item {
  margin: 0px 20px 15px;
  font-size: 16px;
  line-height: 20px;
  color: #374151;
  cursor: pointer;
  transition: color 0.2s linear, background 0.2s linear;
}
.tabs-list-item svg {
  margin-right: 10px;
}
.tabs-list-item:hover, .tabs-list-item.is-active {
  color: #111827;
}
.tabs-list-item.is-active {
  font-weight: 600;
}
.tabs-content {
  display: none;
}
.tabs-content.is-active {
  display: block;
}
.tabs-all {
  margin: -20px 0px 40px;
}
.tabs-list--small {
  display: flex;
  align-items: stretch;
}
.tabs-list--small .tabs-list-item {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px 15px;
  margin: 0px 5px 10px;
  background-color: #f5f7fb;
  color: #111827;
  font-size: 11px;
  line-height: 15px;
  text-transform: uppercase;
  text-align: center;
}
.tabs-list--small .tabs-list-item:hover, .tabs-list--small .tabs-list-item.is-active {
  color: #fff;
  background: #9ca3af;
}
.tabs--info .text-content h2,
.tabs--info .text-content h3 {
  font-size: 20px;
  line-height: 24px;
  font-weight: 400;
}

@media (max-width: 1024px) {
  .tabs-list--small .tabs-list-item {
    max-width: 200px;
  }
}
@media (max-width: 575px) {
  .tabs-list--small .tabs-list-item {
    max-width: none;
    width: 100%;
  }
}
.tabs-list-item.is-hidden {
  display: none !important;
}

.insales-section-tabs--index .tabs-list {
  margin: -5px 0px 10px;
}
.insales-section-tabs--index .tabs-list-item {
  font-size: 16px;
  line-height: 20px;
  text-transform: none;
  border-bottom: 1px dashed currentColor;
}

/* Alerts */
/* 3. Components / Alerts */
.alert {
  margin: 0px 0px 20px;
  padding: 10px;
  font-size: 12px;
  line-height: 16px;
  color: #111827;
  background: #f5f7fb;
  font-weight: 600;
}
.alert--success {
  color: #fff;
  background: #2fb700;
}
.alert--error {
  color: #fff;
  background: #ef3340;
}
.alert svg {
  margin-right: 10px;
}
.alert a,
.alert a:hover {
  color: currentColor;
  text-decoration: underline;
}

/* Breadcrumbs */
/* 3. Components / Breadcrumbs */
.breadcrumbs {
  background: linear-gradient(180deg, rgba(245, 247, 251, 0.86) 0%, rgba(255, 255, 255, 0.96) 100%);
  border-top: 1px solid #edf2f7;
  border-bottom: 1px solid #edf2f7;
  color: #6b7280;
  margin: 0px 0px 20px;
  box-shadow: none;
}

.breadcrumb {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0px;
  overflow-x: auto;
  font-size: 12px;
  line-height: 16px;
  padding: 10px 0px;
  scrollbar-width: none;
}
.breadcrumb::-webkit-scrollbar {
  display: none;
}
.breadcrumb-item {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
}
.breadcrumb-item + .breadcrumb-item:before {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  margin: 0px 3px 0px 1px;
  border-top: 1.5px solid rgba(107, 114, 128, 0.48);
  border-right: 1.5px solid rgba(107, 114, 128, 0.48);
  transform: rotate(45deg);
}
.breadcrumb-item:last-child .breadcrumb-link {
  color: #06225f;
  background: rgba(10, 47, 131, 0.08);
  font-weight: 700;
  pointer-events: none;
}
.breadcrumb-link {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 8px;
  border-radius: 999px;
  color: #6b7280;
  white-space: nowrap;
  transition: color 0.2s ease, background-color 0.2s ease;
}
.breadcrumb-link:hover {
  background: rgba(10, 47, 131, 0.06);
  color: #0a2f83;
}

@media (max-width: 767px) {
  .breadcrumbs {
    margin: 0px 0px 16px;
  }
}
/* Pagination */
/* 3. Components / Pagination */
.pagination {
  position: relative;
  margin: 0px 0px 40px;
  text-align: center;
  font-weight: 600;
  color: #111827;
  display: block;
  width: 100%;
}
.pagination-top {
  margin: 0px 0px 20px;
}
.pagination-item {
  display: inline-block;
  margin: 0px 2px;
}
.pagination-item-next {
  margin: 0px 0px 0px 8px;
}
.pagination-item-prev {
  margin: 0px 8px 0px 0px;
}
.pagination-link, .pagination-void {
  display: block;
  text-align: center;
  border: 2px solid #e5eaf2;
  color: #111827;
  font-size: 12px;
  line-height: 28px;
  min-width: 32px;
}
.pagination-link:hover, .pagination-link.is-current {
  border-color: #0a2f83;
  color: #111827;
}
.pagination-void {
  border-color: transparent;
}
.pagination-next, .pagination-prev {
  border-color: transparent !important;
  width: 70px;
}
.pagination-next:hover, .pagination-prev:hover {
  color: #0a2f83;
}
.pagination-next--disabled, .pagination-prev--disabled {
  color: #9ca3af !important;
}
.pagination-next {
  text-align: left;
}
.pagination-next svg {
  margin-left: 8px;
}
.pagination-prev {
  text-align: right;
}
.pagination-prev svg {
  margin-right: 8px;
}
.pagination-load {
  margin: 0px 0px 20px;
}
.pagination-load .button {
  max-width: 245px;
  margin: 0px auto;
}
.pagination-separator {
  margin: 0px 0px 20px;
  position: relative;
  text-align: center;
  line-height: 0;
}
.pagination-separator span {
  position: relative;
  z-index: 2;
  display: inline-block;
  padding: 0px 10px;
  font-size: 10px;
  line-height: 14px;
  font-weight: 600;
  background-color: #fff;
  color: #111827;
}
.pagination-separator:after {
  content: "";
  position: absolute;
  z-index: 1;
  left: 0px;
  top: 50%;
  width: 100%;
  height: 2px;
  margin-top: -1px;
  background-color: #e5eaf2;
}

[data-infinite-pagination] {
  height: 1px;
  margin: 0px;
  overflow: hidden;
  pointer-events: none;
}
[data-infinite-pagination] .pagination-load {
  height: 1px;
  margin: 0px;
}
[data-infinite-pagination] .pagination-load .button {
  width: 1px;
  min-width: 1px;
  max-width: 1px;
  height: 1px;
  min-height: 1px;
  margin: 0px;
  padding: 0px;
  border: 0px;
  opacity: 0;
  box-shadow: none;
}
[data-infinite-pagination].pagination-large {
  padding-bottom: 0px;
}

@media (max-width: 575px) {
  .pagination-large {
    padding-bottom: 42px;
  }
  .pagination-large .pagination-item-next, .pagination-large .pagination-item-prev {
    position: absolute;
    bottom: 0px;
  }
  .pagination-large .pagination-item-next {
    right: 50%;
    margin: 0px -75px 0px 0px;
  }
  .pagination-large .pagination-item-prev {
    left: 50%;
    margin: 0px 0px 0px -75px;
  }
  .pagination-large .pagination-next, .pagination-large .pagination-prev {
    width: auto;
  }
}
/* Components: reusable blocks with their own markup contract. */
/* Labels */
/* 3. Components / Product and article labels */
.product_card-labels,
.product-labels,
.article_card-labels {
  position: absolute;
  z-index: 20;
  top: 0px;
  left: 0px;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0px;
  pointer-events: none;
}
.product_card-label,
.product-label,
.article_card-label {
  margin: 0px;
  padding: 3px 8px;
  border-radius: 7px;
  font-size: 10px;
  line-height: 13px;
  font-weight: 600;
  background: #0a2f83;
  color: #fff;
  box-shadow: 0px 8px 20px rgba(15, 23, 42, 0.1);
}
.product_card-label:before,
.product-label:before,
.article_card-label:before {
  content: attr(data-title);
}
.product_card-label--date,
.product-label--date,
.article_card-label--date {
  background-color: #fff;
  color: #111827;
  padding: 2px 5px 2px 0px;
}
.product_card-label--date:before,
.product-label--date:before,
.article_card-label--date:before {
  display: none;
}
.product_card-discount_bage,
.product-discount_bage,
.article_card-discount_bage {
  position: absolute;
  z-index: 3;
  top: 0px;
  right: 0px;
  background-color: #ef3340;
  color: #fff;
  text-align: center;
  width: 42px;
  line-height: 42px;
  border-radius: 50px 0px 50px 50px;
  font-weight: 600;
  font-size: 12px;
  box-shadow: 0px 0px 0px 2px #fff;
}

body .product_card-label[data-title=Новинка], body .product_card-label[data-title=KING♕PROMO], body .product_card-label[data-title=Ожидается], body .product_card-label[data-title=Распродажа],
body .product-label[data-title=Новинка],
body .product-label[data-title=KING♕PROMO],
body .product-label[data-title=Ожидается],
body .product-label[data-title=Распродажа] {
  background-color: #0a2f83;
}
body .product_card-label[data-title=Комплект], body .product_card-label[data-title="+ Подарок"], body .product_card-label[data-title="Цена + качество"],
body .product-label[data-title=Комплект],
body .product-label[data-title="+ Подарок"],
body .product-label[data-title="Цена + качество"] {
  background-color: #2fb700;
}
body .product_card-label[data-title="Товар дня"],
body .product-label[data-title="Товар дня"] {
  background-color: #fdbc20;
  color: #111827;
}
body .product_card-label.product-label--day-benefit, body .product_card-label.product_card-label--day-benefit,
body .product-label.product-label--day-benefit,
body .product-label.product_card-label--day-benefit {
  background-color: #ef3340;
  color: #fff;
}
body .product_card-label[data-title=Скидка],
body .product-label[data-title=Скидка] {
  background-color: #ef3340;
}
body .product_card-label[data-title="Лучшая цена"], body .product_card-label[data-title=Предзаказ],
body .product-label[data-title="Лучшая цена"],
body .product-label[data-title=Предзаказ] {
  background-color: #fdbc20;
  color: #111827;
}
body .product_card-label[data-title=Распродано], body .product_card-label[data-title="Нет в наличии"], body .product_card-label[data-title="Slim Box"],
body .product-label[data-title=Распродано],
body .product-label[data-title="Нет в наличии"],
body .product-label[data-title="Slim Box"] {
  background-color: #ef3340;
}

/* Dropdown products */
/* 3. Components / Dropdown products */
.dropdown_products {
  max-height: 400px;
  overflow: auto;
  overflow-x: hidden;
  margin: 0px -20px;
  padding: 0px 20px;
}
.dropdown_products-header {
  margin: 0px 0px 20px;
}
.dropdown_products-header span {
  white-space: nowrap;
  font-weight: 600;
}
.dropdown_products-action {
  margin: 20px 0px 0px;
}

.dropdown_product + .dropdown_product {
  margin-top: 20px;
}
.dropdown_product-thumb {
  position: relative;
  display: block;
  margin: 0px;
}
.dropdown_product-thumb-item {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background: #fff center center no-repeat;
}
.dropdown_product-thumb--1x1 {
  padding-top: 100%;
}
.dropdown_product-thumb--2x3 {
  padding-top: 150%;
}
.dropdown_product-thumb--3x4 {
  padding-top: 133%;
}
.dropdown_product-thumb--4x3 {
  padding-top: 75%;
}
.dropdown_product-thumb--contain .dropdown_product-thumb-item {
  background-size: contain;
}
.dropdown_product-thumb--cover .dropdown_product-thumb-item {
  background-size: cover;
}
.dropdown_product-title {
  font-size: 12px;
  line-height: 18px;
  margin: 0px 10px;
}
.dropdown_product-title a {
  display: block;
  color: #111827;
}
.dropdown_product-title a:hover {
  color: #0a2f83;
}
.dropdown_product-prices {
  margin: 0px 10px;
  font-weight: 600;
  color: #111827;
}

/* Rating */
/* 3. Components / Rating */
.rating-item {
  display: inline-block;
  line-height: 0px;
  transition: color 0.2s linear;
}
.rating-item--active {
  color: #ffb020;
}
.rating-item--hover {
  color: #ffb020 !important;
}
.rating-item--unactive {
  color: #ccc;
}
.rating-item--unhover {
  color: #ccc !important;
}
.rating-item--reset {
  color: #ccc;
}
.rating-item--reset:hover {
  color: #111827;
}
.rating-item + .rating-item {
  padding-left: 2px;
}
.rating-item--active.rating-item--like, .rating-item--hover.rating-item--like {
  color: #2fb700 !important;
}
.rating-item--active.rating-item--dislike, .rating-item--hover.rating-item--dislike {
  color: #ef3340 !important;
}
.rating-item--active.rating-item--frown, .rating-item--hover.rating-item--frown {
  color: #ef3340 !important;
}
.rating-item--active.rating-item--meh, .rating-item--hover.rating-item--meh {
  color: #fdbc20 !important;
}
.rating-item--active.rating-item--smile, .rating-item--hover.rating-item--smile {
  color: #2fb700 !important;
}
.rating-link {
  font-size: 12px;
  line-height: 0;
  margin-left: 20px;
  color: #9ca3af;
}
.rating-link svg {
  margin-right: 5px;
}

/* Product card component: single source for catalog, rails, recently viewed and related grids. */
/* 7. Catalog / Product card */
.product_card {
  display: flex;
  width: 100%;
  height: 100%;
  margin: 0px 0px 18px;
  padding: 10px;
  border: 1px solid #e5eaf2;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0px 8px 20px rgba(24, 32, 56, 0.04);
}
.product_card-form {
  display: flex;
  width: 100%;
  flex: 1 1 auto;
  min-height: 100%;
  flex-direction: column;
  position: relative;
}
.product_card-thumb {
  position: relative;
  display: block;
  margin: 0px 0px 10px;
  border-radius: 12px;
  overflow: hidden;
  background: #f5f7fb;
}
.product_card-thumb-item {
  position: absolute;
  z-index: 1;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background: #f5f7fb center center no-repeat;
  background-size: contain;
  transition: all 0.4s linear;
}
.product_card-thumb-item--empty {
  background-color: #f5f7fb;
}
.product_card-thumb-item svg {
  color: #e5eaf2;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.product_card-thumb-item img,
.product_card-thumb-item source {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100% !important;
  height: 100% !important;
  will-change: transform;
  object-fit: contain;
}
.product_card-thumb-item--first {
  z-index: 1;
}
.product_card-thumb-item--second {
  z-index: 2;
  opacity: 0;
  visibility: hidden;
}
.product_card-thumb--1x1 {
  padding-top: 82%;
}
.product_card-thumb--2x3 {
  padding-top: 150%;
}
.product_card-thumb--3x4 {
  padding-top: 133%;
}
.product_card-thumb--4x3 {
  padding-top: 75%;
}
.product_card-thumb--contain .product_card-thumb-item {
  background-size: contain;
}
.product_card-thumb--contain .product_card-thumb-item img,
.product_card-thumb--contain .product_card-thumb-item source {
  object-fit: contain;
}
.product_card-thumb--cover .product_card-thumb-item {
  background-size: cover;
}
.product_card-thumb--cover .product_card-thumb-item img,
.product_card-thumb--cover .product_card-thumb-item source {
  object-fit: cover;
}
.product_card-favorite {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  min-width: 36px;
  min-height: 36px;
  padding: 0px;
  border: 1px solid #e5eaf2;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.94);
  color: #6b7280;
  box-shadow: 0px 4px 12px rgba(24, 32, 56, 0.04);
}
.product_card-favorite:hover, .product_card-favorite.is-active, .product_card-favorite.is-added {
  border-color: #fff1f3;
  background: #fff;
  color: #ef3340;
}
.product_card-compare {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  min-width: 36px;
  height: 36px;
  min-height: 36px;
  padding: 0px;
  border: 1px solid #e5eaf2;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.94);
  color: #0a2f83;
  box-shadow: 0px 4px 12px rgba(24, 32, 56, 0.04);
}
.product_card-compare:hover, .product_card-compare.is-added {
  border-color: #c7d9f6;
  background: #0a2f83 !important;
  color: #fff !important;
}
.product_card-title {
  font-size: 13px;
  line-height: 18px;
  margin-bottom: 8px;
}
.product_card-title a {
  display: block;
  min-height: 54px;
  max-height: 54px;
  height: auto;
  overflow: hidden;
  color: #111827;
}
.product_card-title a:hover {
  color: #0a2f83;
}
.product_card-footer {
  margin-top: auto;
  display: flex;
  flex-direction: column;
  min-height: 0px;
}
.product_card-meta {
  display: flex;
  align-items: center;
  min-height: 20px;
  margin: 0px 0px 6px;
}
.product_card-meta--empty {
  pointer-events: none;
}
.product_card-meta--empty .rating-link {
  color: #9ca3af;
}
.product_card-rating {
  line-height: 18px;
  min-width: 0;
  margin: 0px;
}
.product_card-rating a {
  display: flex;
  align-items: center;
  min-width: 0;
  color: inherit;
}
.product_card-rating .rating-link {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  margin-left: 10px;
}
.product_card-buyline {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: stretch;
  gap: 8px;
  width: 100%;
  margin-top: 0px;
}
.product_card-prices {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 4px 8px;
  min-width: 0;
  min-height: 27px;
  margin: 0px 0px 5px;
  font-weight: 600;
  color: #111827;
}
.product_card-price {
  display: inline-flex;
  align-items: baseline;
  font-size: 18px;
  line-height: 23px;
  font-weight: 600;
  white-space: nowrap;
  color: #111827;
}
.product_card-price--sale {
  color: #111827;
}
.product_card-old_price {
  color: #9ca3af;
  font-size: 12px;
  line-height: 16px;
  white-space: nowrap;
  text-decoration: line-through;
}
.product_card-discount_inline {
  display: inline-flex;
  align-items: center;
  min-height: 18px;
  padding: 0 7px;
  border-radius: 999px;
  background: #fff1f3;
  color: #ef3340;
  font-size: 12px;
  line-height: 16px;
  font-weight: 600;
  white-space: nowrap;
}
.product_card-add {
  display: inline-flex;
  align-items: center;
  justify-content: stretch;
  height: auto;
  width: 100%;
  min-width: 0;
}
.product_card-add .button--empty--inverse {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 40px;
  padding: 0 12px;
  border-radius: 999px;
  color: #fff;
  background: #0a2f83;
  box-shadow: 0 6px 14px rgba(47, 125, 240, 0.18);
}
.product_card-add .button--empty--inverse span:last-child {
  white-space: nowrap;
}
.product_card-add .button--empty--inverse:hover {
  color: #fff;
  background: #061b55;
}
.product_card-add .button--empty--inverse.is-in-cart {
  color: #167a2e !important;
  background: #effaf2;
  box-shadow: none;
}
.product_card-add .button--empty--inverse.is-in-cart:hover {
  color: #167a2e !important;
  background: #effaf2;
}
.product_card-add .button--disabled {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 40px;
  padding: 0 12px;
  border-radius: 999px;
  background: #f5f7fb;
  color: #6b7280;
}
.product_card-add .button--disabled span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.product_card-actions {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.product_card--soldout {
  border-color: #e5eaf2;
  box-shadow: 0px 8px 20px rgba(24, 32, 56, 0.04);
}
.product_card--soldout .product_card-thumb-item img,
.product_card--soldout .product_card-thumb-item source {
  filter: grayscale(1);
  opacity: 0.75;
}
.product_card--soldout .product_card-add .button--disabled {
  min-height: 36px;
  height: 36px;
  padding: 0 10px;
  background: #f5f7fb;
  color: #6b7280;
  box-shadow: none;
  font-size: 12px;
  line-height: 16px;
}

.collection-products-grid {
  align-items: stretch;
}
.collection-products-grid > .col-6 {
  display: flex;
  align-items: stretch;
  margin-bottom: 18px;
}

@media (min-width: 768px) {
  .product_card:hover .product_card-thumb-item--first {
    opacity: 0;
    visibility: hidden;
  }
  .product_card:hover .product_card-thumb-item--second {
    opacity: 1;
    visibility: visible;
  }
  .product_card--shadow {
    position: relative;
    z-index: 1;
    transition: box-shadow 0.2s linear, border-color 0.2s linear, transform 0.2s linear;
  }
  .product_card--shadow:hover {
    z-index: 2;
    border-color: #c7d9f6;
    box-shadow: 0px 0px 0px 10px rgb(255, 255, 255), 0px 0px 15px 10px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
  }
  .products-slider-item .product_card,
  .products-slider-item .product_card:hover {
    transition: none;
    box-shadow: none;
  }
}
@media (max-width: 767px) {
  .product_card {
    padding: 8px;
  }
  .product_card-form {
    min-height: 0px;
  }
  .product_card-thumb--1x1 {
    padding-top: 88%;
  }
  .product_card-title {
    margin-bottom: 8px;
  }
  .product_card-title a {
    display: -webkit-box;
    height: 72px;
    min-height: 72px;
    max-height: 72px;
    overflow: hidden;
    -webkit-line-clamp: 4;
    line-clamp: 4;
    -webkit-box-orient: vertical;
  }
  .product_card-footer {
    min-height: 0px;
    margin-top: 0px;
  }
  .product_card-meta {
    margin-bottom: 6px;
    gap: 6px;
  }
  .product_card-prices {
    min-height: 28px;
    margin-bottom: 5px;
  }
  .product_card-price {
    font-size: 18px;
    line-height: 22px;
  }
  .product_card-buyline {
    display: flex;
    align-items: center;
    gap: 6px;
  }
  .product_card-add {
    flex: 0 0 auto;
    width: auto;
  }
  .product_card-add .button--empty--inverse,
  .product_card-add .button--disabled {
    height: 38px;
    min-height: 38px;
    justify-content: center;
  }
  .product_card-add .button--empty--inverse {
    width: 38px;
    min-width: 38px;
    padding: 0px;
    border-radius: 50%;
  }
  .product_card-add .button--empty--inverse span:last-child {
    display: none;
  }
  .product_card-add .button--disabled {
    width: auto;
    min-width: 92px;
    padding: 0 10px;
    font-size: 11px;
    line-height: 14px;
  }
  .product_card-favorite, .product_card-compare {
    width: 38px;
    min-width: 38px;
    height: 38px;
    min-height: 38px;
  }
  .product_card-actions {
    flex: 1 1 auto;
    justify-content: flex-end;
    gap: 5px;
  }
  .product_card--soldout .product_card-add {
    display: none;
  }
  .product_card--soldout .product_card-buyline {
    justify-content: flex-end;
  }
  .product_card--soldout .product_card-actions {
    flex: 0 0 auto;
  }
}
/* Layout: page chrome and shared section shells. */
/* Section shell */
/* Generic section shell and title layout shared across pages. */
@media (min-width: 1025px) {
  .index-widgets > .insales-section:first-child {
    padding-top: 40px;
  }
  .index-widgets > .insales-section-slider:first-child {
    padding-top: 0px;
  }
}
.insales-section {
  position: relative;
}
.insales-section-header {
  z-index: 1500;
}
.insales-section-collection--favorites {
  display: none;
}
.insales-section-cart .popup--empty, .insales-section-compares .popup--empty, .insales-section-favorites .popup--empty, .insales-section-search .popup--empty, .insales-section-page_404 .popup--empty {
  margin: 0px 0px 40px;
}
.insales-section-cart .popup--empty svg, .insales-section-compares .popup--empty svg, .insales-section-favorites .popup--empty svg, .insales-section-search .popup--empty svg, .insales-section-page_404 .popup--empty svg {
  width: 100px;
  height: 100px;
}
.insales-section-cart .text-title, .insales-section-compares .text-title {
  margin: 0px;
  border-style: none;
}
.insales-section-page--sitemap .text-content {
  margin-bottom: 20px;
}
.insales-section-page--sitemap .text-content a {
  text-decoration: none;
}
.insales-section-page--sitemap .text-content ul ul {
  margin-top: 0px;
  margin-bottom: 0px;
}

.section-title {
  font-size: 24px;
  line-height: 28px;
  color: #111827;
  margin: 0px 0px 20px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.section-title-description {
  font-size: 16px;
  line-height: 20px;
  font-weight: 400;
  color: #374151;
  margin: 5px 0px 0px;
}
.section-title a {
  color: currentColor;
}
.section-title a:hover {
  color: #0a2f83;
}
.section-title[data-product_count]:not([data-product_count=""]):after {
  content: attr(data-product_count);
  white-space: nowrap;
  display: inline-block;
  vertical-align: middle;
  font-size: 16px;
  line-height: 28px;
  color: #9ca3af;
  font-weight: 400;
  margin: 0px 0px 0px 10px;
  padding: 0px 0px 0px 10px;
  border-left: 1px solid #e5eaf2;
}

@media (max-width: 767px) {
  .section-title[data-product_count]:not([data-product_count=""]):after {
    display: block;
    margin: 0px;
    padding: 0px;
    line-height: 20px;
    border: none;
  }
}
/* 4. Header / Main structure */
.insales-section-header {
  position: relative;
  z-index: 3000;
  background: #fff;
  color: #111827;
  border-bottom: 1px solid #e5eaf2;
}

.site-header {
  position: relative;
  z-index: 3000;
  font-size: 14px;
  background: #fff;
}
.site-header:has(.site-header-search .search-results.is-show) {
  z-index: 6950;
}
.site-header:has(.site-header-search .search-results.is-show) .site-header-main,
.site-header:has(.site-header-search .search-results.is-show) .site-header-search,
.site-header:has(.site-header-search .search-results.is-show) .site-header-search .search-form {
  z-index: 6960 !important;
}
.site-header:has(.site-header-search .search-results.is-show) .site-header-categories,
.site-header:has(.site-header-search .search-results.is-show) .site-header-categories .sticky-wrapper,
.site-header:has(.site-header-search .search-results.is-show) .site-header-categories-scroll {
  z-index: 1 !important;
}
.site-header .container {
  max-width: 100% !important;
  padding-right: clamp(18px, 3vw, 48px);
  padding-left: clamp(18px, 3vw, 48px);
}

.site-header-service {
  padding: 14px 0px;
  color: #6b7280;
  background: rgba(248, 250, 252, 0.62);
  border-bottom: 1px solid #e5eaf2;
}
.site-header-service-inner {
  display: grid;
  grid-template-columns: minmax(260px, 360px) minmax(150px, 190px) minmax(300px, 1fr) auto;
  gap: clamp(18px, 2.6vw, 46px);
  align-items: center;
}
.site-header-service-logo {
  display: block;
  line-height: 0px;
}
.site-header-service-logo img {
  display: block;
  width: auto;
  height: auto;
  max-width: clamp(250px, 21vw, 390px);
  max-height: 82px;
}
.site-header-service-phone {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0px 0px 7px;
  color: #111827;
  font-weight: 600;
  white-space: nowrap;
}
.site-header-service-hours, .site-header-service-address {
  font-size: 13px;
  line-height: 1.35;
}
.site-header-service-hours span, .site-header-service-address span {
  display: block;
}
.site-header-service-address {
  max-width: 440px;
}
.site-header-service-links {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}
.site-header-service-links a {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 8px 14px;
  border: 1px solid #e5eaf2;
  border-radius: 14px;
  background: #fff;
  color: #111827;
  font-weight: 600;
  box-shadow: 0px 4px 12px rgba(24, 32, 56, 0.04);
}
.site-header-service-links a:hover {
  border-color: rgba(47, 118, 239, 0.28);
  color: #0a2f83;
}

.site-header-main {
  position: relative;
  z-index: 3220;
  padding: 12px 0px;
  border-bottom: 1px solid #e5eaf2;
}
.site-header-main:focus-within {
  z-index: 6960;
}
.site-header-main-inner {
  display: grid;
  grid-template-columns: minmax(160px, 180px) minmax(360px, 1fr) minmax(260px, max-content);
  gap: clamp(16px, 2vw, 28px);
  align-items: center;
}

.site-header-catalog-col {
  position: relative;
  z-index: 3200;
}

.site-header-catalog-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  min-height: 48px;
  padding: 0px 18px;
  border-radius: 14px;
  background: #0a2f83;
  color: #fff !important;
  font-weight: 600;
  box-shadow: 0px 10px 24px rgba(10, 47, 131, 0.18);
}
.site-header-catalog-button .hamburger {
  position: relative;
  width: 22px;
  height: 16px;
  color: currentColor;
}
.site-header-catalog-button .hamburger > span {
  position: absolute;
  left: 0px;
  width: 100%;
  height: 2px;
  border-radius: 999px;
  background: currentColor;
}
.site-header-catalog-button .hamburger > span:nth-child(1) {
  top: 0px;
}
.site-header-catalog-button .hamburger > span:nth-child(2) {
  top: 7px;
}
.site-header-catalog-button .hamburger > span:nth-child(3) {
  bottom: 0px;
}

.site-header .site-header-search {
  position: relative;
  z-index: 3224;
  min-width: 0px;
}
.site-header .site-header-search:focus-within {
  z-index: 6970;
}
.site-header .site-header-search.search--header {
  margin: 0px;
}
.site-header .site-header-search .search-form {
  position: relative;
  z-index: 3224;
}
.site-header .site-header-search .search-input {
  height: 48px;
  border: 1px solid #e5eaf2;
  border-radius: 14px;
  background: #fbfcff;
  padding: 0px 104px 0px 24px;
  font-size: 15px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
}
.site-header .site-header-search .search-input:focus {
  border-color: rgba(47, 118, 239, 0.45);
  box-shadow: 0 0 0 4px rgba(47, 118, 239, 0.08);
}
.site-header .site-header-search .search-button,
.site-header .site-header-search .search-voice-trigger {
  position: absolute;
  top: 50%;
  border: 0px;
  background: transparent;
  transform: translateY(-50%);
  line-height: 0px;
}
.site-header .site-header-search .search-button {
  right: 14px;
  padding: 8px;
  color: #0a2f83;
  font-size: 26px;
}
.site-header .site-header-search .search-voice-trigger {
  right: 58px;
  padding: 8px;
  color: #6b7280;
}

.site-header-actions {
  min-width: 0px;
  max-width: none;
}

.site-header-actions .user_icons-items {
  display: flex !important;
  align-items: center;
  justify-content: flex-end;
  gap: 14px;
  flex-wrap: nowrap;
}

.user_icons {
  position: static;
  width: auto;
  padding: 0px;
  background: transparent;
  box-shadow: none;
}
.user_icons-item {
  position: relative;
  display: inline-flex;
  align-items: center;
  margin: 0px;
}
.user_icons-icon {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  min-height: 34px;
  padding: 0px;
  border: 0px;
  background: transparent;
  color: #111827;
  cursor: pointer;
  font-size: 22px;
  line-height: 0px;
}
.user_icons-icon svg, .user_icons-icon .far {
  display: block;
  width: 25px;
  height: 25px;
}
.user_icons-icon .bage {
  position: absolute;
  top: -4px;
  right: -6px;
  opacity: 0;
  visibility: hidden;
}
.user_icons-icon.is-active .bage {
  opacity: 1;
  visibility: visible;
}
.user_icons-cart {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: max-content;
}
.user_icons-cart span {
  display: block;
  margin: 0px;
  font-size: 13px;
  line-height: 13px;
}
.user_icons-popup {
  position: absolute;
  top: 100%;
  right: 0px;
  z-index: 3200;
  padding-top: 10px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(10px);
  transition: 0.2s ease;
}
.user_icons-item:hover .user_icons-icon, .user_icons-item.is-open .user_icons-icon {
  color: #0a2f83;
}
.user_icons-item:hover .user_icons-popup, .user_icons-item.is-open .user_icons-popup {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0px);
}
.user_icons-clone {
  display: none;
}

.site-header-cart {
  display: flex !important;
  flex-direction: column;
  justify-content: center;
  min-width: 92px;
  max-width: 132px;
  margin-left: 8px;
  color: #111827;
  font-size: 13px;
  line-height: 14px;
  white-space: nowrap;
  overflow: visible;
}
.site-header-cart span {
  margin: 0px !important;
  font-size: inherit !important;
  line-height: inherit !important;
}

.site-header-cart-title {
  display: none !important;
}

.site-header-cart-total {
  color: #0a2f83;
  font-weight: 600;
}

.js-user_icons-icon-cart {
  gap: 8px;
  min-width: auto;
  font-size: 22px;
  line-height: 1;
}
.js-user_icons-icon-cart > .row {
  display: inline-flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 8px;
}

.bage {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 16px;
  height: 16px;
  padding: 0px 5px;
  border-radius: 999px;
  background: #0a2f83;
  color: #fff;
  font-size: 10px;
  line-height: 16px;
  font-weight: 600;
  box-shadow: 0px 0px 0px 2px #fff;
}

.popup {
  position: relative;
  width: 340px;
  padding: 18px;
  border: 1px solid #e5eaf2;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0px 18px 50px rgba(24, 32, 56, 0.2);
}
.popup:before, .popup:after {
  content: "";
  position: absolute;
  right: 16px;
  border: 9px solid transparent;
}
.popup:before {
  top: -18px;
  border-bottom-color: #e5eaf2;
}
.popup:after {
  top: -17px;
  border-bottom-color: #fff;
}
.popup--empty {
  margin: 0px;
  color: #6b7280;
  text-align: center;
}
.popup--empty svg {
  display: block;
  margin: 0px auto 10px;
  color: #d5dde8;
}

.site-header-categories {
  position: relative;
  z-index: 3010;
  background: #fff;
  border-bottom: 1px solid #e5eaf2;
}
.site-header-categories .sticky-wrapper {
  position: relative;
  z-index: 3010;
  overflow: visible !important;
}
.site-header-categories-scroll {
  position: relative;
  z-index: 3010;
  overflow: visible !important;
  background: rgba(255, 255, 255, 0.98);
  border-bottom: 1px solid #e5eaf2;
  box-shadow: none;
  backdrop-filter: saturate(180%) blur(10px);
}
.site-header-categories-scroll[style*="position: fixed"], .site-header-categories-scroll.is-sticky {
  box-shadow: 0px 10px 28px rgba(15, 23, 42, 0.08);
}
.site-header-categories-items {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(22px, 3vw, 58px);
  min-height: 56px;
  white-space: nowrap;
}
.site-header-categories-item {
  position: relative;
}
.site-header-categories-link {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  color: #111827;
  font-weight: 600;
}
.site-header-categories-link:hover, .site-header-categories-link.is-active {
  color: #0a2f83;
}
.site-header-categories-link.is-accent {
  padding: 0px 16px;
  border-radius: 14px;
  background: #f3f7ff;
}
.site-header-categories-submenu {
  position: absolute;
  top: calc(100% + 8px);
  left: 50%;
  z-index: 3200;
  min-width: 220px;
  padding: 10px;
  border: 1px solid #e5eaf2;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0px 18px 50px rgba(24, 32, 56, 0.2);
  max-height: min(420px, 100vh - 90px);
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, 8px);
  transition: 0.18s ease;
}
.site-header-categories-submenu a {
  display: block;
  padding: 8px 12px;
  border-radius: 8px;
  color: #111827;
}
.site-header-categories-submenu a:hover {
  background: #f5f8fc;
  color: #0a2f83;
}
.site-header-categories-item:hover .site-header-categories-submenu {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0px);
}

.logo {
  display: inline-block;
  vertical-align: middle;
  line-height: 0px;
}
.logo img {
  display: block;
  width: auto;
  height: auto;
  max-width: 300px;
  max-height: 120px;
}

@media (max-width: 1399px) {
  .site-header-service-inner {
    grid-template-columns: minmax(250px, 320px) minmax(145px, 180px) minmax(280px, 1fr) auto;
    gap: 24px;
  }
  .site-header-main-inner {
    grid-template-columns: minmax(148px, 168px) minmax(340px, 1fr) minmax(252px, max-content);
  }
  .site-header-actions .user_icons-items {
    gap: 11px;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .site-header-actions .user_icons-icon {
    min-width: 30px;
    min-height: 32px;
    font-size: 20px;
  }
  .site-header-actions .user_icons-icon svg,
  .site-header-actions .user_icons-icon .far {
    width: 22px;
    height: 22px;
  }
}
@media (min-width: 1025px) and (max-width: 1199px) {
  .site-header .container {
    padding-right: 22px;
    padding-left: 22px;
  }
  .site-header-service-inner {
    grid-template-columns: minmax(220px, 280px) minmax(140px, 170px) minmax(240px, 1fr) auto;
    gap: 18px;
  }
  .site-header-service-logo img {
    max-width: 285px;
    max-height: 70px;
  }
  .site-header-service-links {
    gap: 8px;
  }
  .site-header-service-links a {
    min-height: 34px;
    padding: 7px 11px;
    font-size: 13px;
  }
  .site-header-main-inner {
    grid-template-columns: 148px minmax(320px, 1fr) minmax(242px, max-content);
    gap: 16px;
  }
  .site-header-catalog-button {
    min-height: 46px;
    padding: 0px 14px;
  }
  .site-header .site-header-search .search-input {
    height: 46px;
    padding-right: 90px;
  }
  .site-header .site-header-search .search-button {
    right: 10px;
    font-size: 23px;
  }
  .site-header .site-header-search .search-voice-trigger {
    right: 47px;
  }
  .site-header-actions .user_icons-items {
    gap: 9px;
  }
  .site-header-cart {
    min-width: 86px;
    max-width: 124px;
    margin-left: 6px;
    font-size: 12px;
    line-height: 13px;
  }
  .site-header-cart-title {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .site-header .container {
    padding-right: 18px;
    padding-left: 18px;
  }
  .site-header-service {
    padding: 10px 0px;
  }
  .site-header-service-inner {
    grid-template-columns: minmax(190px, 240px) minmax(135px, 170px) minmax(220px, 1fr);
    gap: 14px 18px;
    align-items: center;
  }
  .site-header-service-logo img {
    max-width: 235px;
    max-height: 62px;
  }
  .site-header-service-phone {
    margin-bottom: 4px;
    font-size: 13px;
  }
  .site-header-service-hours, .site-header-service-address {
    font-size: 12px;
    line-height: 1.3;
  }
  .site-header-service-links {
    grid-column: 1/-1;
    justify-content: flex-end;
    gap: 8px;
  }
  .site-header-service-links a {
    min-height: 32px;
    padding: 6px 10px;
    font-size: 12px;
  }
  .site-header-main {
    padding: 10px 0px;
  }
  .site-header-main-inner {
    grid-template-columns: 142px minmax(260px, 1fr) fit-content(190px);
    gap: 14px;
  }
  .site-header-catalog-button {
    min-height: 44px;
    padding: 0px 12px;
    gap: 8px;
    font-size: 13px;
  }
  .site-header-catalog-button .hamburger {
    width: 19px;
  }
  .site-header .site-header-search .search-input {
    height: 44px;
    padding: 0px 84px 0px 16px;
    font-size: 14px;
  }
  .site-header .site-header-search .search-button {
    right: 9px;
    font-size: 22px;
  }
  .site-header .site-header-search .search-voice-trigger {
    right: 44px;
  }
  .site-header-actions .user_icons-items {
    gap: 8px;
  }
  .site-header-cart {
    display: none !important;
  }
  .site-header-categories-items {
    justify-content: center;
    gap: 28px;
    min-height: 50px;
    overflow-x: auto;
    overflow-y: visible;
    scrollbar-width: none;
  }
  .site-header-categories-items::-webkit-scrollbar {
    display: none;
  }
  .site-header-categories-link {
    min-height: 34px;
  }
}
@media (min-width: 900px) and (max-width: 1024px) {
  .site-header-service-inner {
    grid-template-columns: minmax(190px, 220px) minmax(128px, 148px) minmax(230px, 1fr) auto;
    gap: 12px 18px;
  }
  .site-header-service-logo img {
    max-width: 220px;
    max-height: 58px;
  }
  .site-header-service-links {
    grid-column: auto;
    align-self: center;
  }
  .site-header-service-links a {
    min-height: 30px;
    padding: 6px 9px;
  }
}
@media (max-width: 767px) {
  .site-header .container {
    padding-right: 14px;
    padding-left: 14px;
  }
}
/* 4. Header / Messengers and social */
.messengers {
  font-size: 20px;
  line-height: 0;
  margin: 0px -10px;
}
.messengers a {
  color: #9ca3af;
}
.messengers a:hover {
  color: #111827;
}
.messengers-item {
  display: inline-block;
  vertical-align: middle;
  margin: 0px 10px;
}
.messengers-item--vk a {
  color: #45668e !important;
}
.messengers-item--telegram-plane a {
  color: #0088cc !important;
}
.messengers-item--facebook-messenger a {
  color: #0084ff !important;
}
.messengers-item--viber a {
  color: #59267c !important;
}
.messengers-item--whatsapp a {
  color: #25d366 !important;
}
.messengers-item--skype a {
  color: #00aff0 !important;
}
.messengers--footer .messengers {
  font-size: 24px;
}
.messengers--footer .messengers-item {
  margin-top: 10px;
}

.social {
  font-size: 16px;
  line-height: 0;
  margin: 0px -10px;
}
.social a {
  color: #9ca3af;
}
.social a:hover {
  color: #111827;
}
.social-item {
  display: inline-block;
  vertical-align: middle;
  margin: 0px 10px;
}
.social-item--vk a {
  color: #45668e !important;
}
.social-item--facebook-f a {
  color: #3b5998 !important;
}
.social-item--instagram a {
  color: #111827 !important;
}
.social-item--odnoklassniki a {
  color: #ed812b !important;
}
.social-item--youtube a {
  color: #ff0000 !important;
}
.social-item--twitter a {
  color: #1da1f2 !important;
}
.social-item--pinterest a {
  color: #bd081c !important;
}
.social-item--telegram-plane a {
  color: #0088cc !important;
}
.social--footer {
  font-size: 20px;
}
.social--footer .social-item {
  margin-top: 10px;
}

.popup-content {
  margin: -7px 0px;
}
.popup-content-contacts-item {
  padding: 7px 0px;
  color: #9ca3af;
  font-size: 14px;
  line-height: 16px;
}
.popup-content-contacts-item a {
  color: #9ca3af;
}
.popup-content-contacts-item a:hover {
  color: #0a2f83;
}
.popup-content-contacts-item svg {
  margin-right: 5px;
  color: #0a2f83;
}
.popup-content-contacts-messengers {
  padding: 7px 0px;
}
.popup-content-contacts-messengers-item {
  display: inline-block !important;
  margin: 0px 10px !important;
}
.popup-content-contact {
  padding: 7px 0px;
}
.popup-content-contact > a {
  color: #9ca3af;
}
.popup-content-contact > a:hover {
  color: #111827;
}
.popup-content-contact > a svg {
  color: #0a2f83;
  margin-right: 5px;
}

/* 4. Header / Search */
.search .search-form {
  position: relative;
}
.search .search-input {
  width: 100%;
  border-width: 1px;
  border-style: solid;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  line-height: 22px;
  padding: 8px 44px 8px 14px;
  border-color: #e5eaf2;
  border-radius: 14px;
  background: #f9fafb;
  transition: border-color 0.2s linear, background-color 0.2s linear, box-shadow 0.2s linear;
}
.search .search-input:focus {
  border-color: #7fa8ee;
  background: #fff;
  box-shadow: 0 0 0 3px rgba(10, 47, 131, 0.14);
}
.search .search-button {
  position: absolute;
  top: 4px;
  right: 4px;
  padding: 8px;
  margin: 0px;
  border: none;
  border-radius: 12px;
  cursor: pointer;
  font-size: 20px;
  line-height: 0;
  background: transparent;
  color: #0a2f83;
}
.search .search-button svg,
.search .search-button .far {
  display: block;
  width: 20px;
  height: 20px;
}
.search .search-voice-trigger {
  position: absolute;
  z-index: 1;
  top: 5px;
  right: 47px;
  padding: 9px;
  margin: 0px;
  border: none;
  cursor: pointer;
  font-size: 16px;
  line-height: 0;
  background: no-repeat;
  color: #9ca3af;
}
.search .search-voice-trigger svg {
  display: block;
}
.search .search-voice-trigger:after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 30px;
  width: 30px;
  opacity: 0;
  background: #e5eaf2;
  border-radius: 50%;
}
.search .search-voice-trigger.is-active:after {
  animation: pulsate 1s ease-out;
  animation-iteration-count: infinite;
}
.search--popup .search-input {
  border-width: 0px;
  border-radius: 0px;
  box-shadow: none !important;
  padding: 13px 70px 13px 20px;
}
.search--popup .search-button {
  top: 0px;
  right: 0px;
  padding: 14px;
  border-radius: 0px;
}
.search--popup .search-voice-trigger {
  top: 0px;
  right: 49px;
  padding: 16px;
}

@-webkit-keyframes pulsate {
  0% {
    transform: translate(-50%, -50%) scale(0.1);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: translate(-50%, -50%) scale(1.2);
    opacity: 0;
  }
}
@keyframes pulsate {
  0% {
    transform: translate(-50%, -50%) scale(0.1);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: translate(-50%, -50%) scale(1.2);
    opacity: 0;
  }
}
.popup-content-search {
  position: relative;
  z-index: 1;
  margin: -20px -20px 20px !important;
  border-top: 1px solid #e5eaf2;
  border-bottom: 1px solid #e5eaf2;
}

.search-results {
  position: absolute;
  z-index: 7005;
  top: calc(100% + 12px);
  left: 0px;
  right: 0px;
  border: 1px solid #e5eaf2;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 42px rgba(18, 31, 53, 0.16);
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
  transform: translate(0px, 0px);
  transition: all 0.2s linear;
}
.search-results.is-show {
  opacity: 1;
  visibility: visible;
  transform: translate(0px, 0px);
}
.search-results:before, .search-results:after {
  content: "";
  position: absolute;
  z-index: 3;
  top: -22px;
  left: 10px;
  border-width: 10px;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
}
.search-results:after {
  z-index: 2;
  border-bottom-color: #e5eaf2;
  top: -23px;
}

.autocomplete-suggestions {
  display: block !important;
  position: static !important;
  z-index: 7006 !important;
  box-shadow: none;
  background: transparent;
  width: 100% !important;
  min-width: 100%;
  max-width: none;
  padding: 10px 0px;
  max-height: min(420px, 100vh - 260px);
  overflow: auto;
}
.autocomplete-suggestion-link {
  position: relative;
  display: block;
  padding: 7px 20px 7px 86px;
  color: #111827;
  min-height: 72px;
}
.autocomplete-suggestion-link:hover {
  color: #0a2f83;
  /*background: $ds-color-page;*/
}
.autocomplete-suggestion-thumb {
  position: absolute;
  top: 7px;
  left: 14px;
  width: 58px;
  height: 58px;
  background: #fff center center no-repeat;
  background-size: contain;
}
.autocomplete-suggestion-title {
  display: block;
  font-size: 12px;
  line-height: 18px;
}
.autocomplete-suggestion-price {
  display: block;
  font-size: 14px;
  line-height: 22px;
  font-weight: 600;
  color: #111827;
}
.autocomplete-no-suggestion {
  padding: 12px 20px;
}

@media (max-width: 767px) {
  .mobile-header-search {
    position: relative;
    z-index: 3201;
  }
  .mobile-header-search .search-form {
    position: relative;
  }
  .mobile-header-search .search-input {
    width: 100%;
    height: 44px;
    padding: 0px 84px 0px 16px !important;
    border-radius: 14px;
  }
  .mobile-header-search .search-button,
  .mobile-header-search .search-voice-trigger {
    position: absolute;
    top: 50% !important;
    border: 0px;
    background: transparent;
    transform: translateY(-50%) !important;
  }
  .mobile-header-search .search-button {
    right: 8px !important;
    padding: 8px;
    color: #0a2f83;
    font-size: 22px;
  }
  .mobile-header-search .search-voice-trigger {
    right: 44px !important;
    padding: 8px;
    color: #6b7280;
  }
}
@media (max-width: 767px) {
  .site-header {
    --mobile-header-main-height: 115px;
    --mobile-header-categories-height: 52px;
    padding-top: calc(var(--mobile-header-main-height) + var(--mobile-header-categories-height));
  }
  .site-header-service {
    padding: 10px 0px;
  }
  .site-header-service-inner {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px 14px;
    align-items: start;
  }
  .site-header-service-logo {
    text-align: center;
  }
  .site-header-service-logo img {
    max-width: 230px;
    margin: 0px auto;
  }
  .site-header-service-contact, .site-header-service-address {
    font-size: 12px;
    line-height: 1.35;
    text-align: center;
  }
  .site-header-service-links {
    grid-column: 1/-1;
    justify-content: center;
    gap: 8px;
  }
  .site-header-service-links a {
    min-height: 32px;
    padding: 6px 10px;
    font-size: 12px;
  }
  .site-header-main {
    position: fixed;
    left: 0px;
    right: 0px;
    top: 0px;
    z-index: 3270;
    min-height: var(--mobile-header-main-height);
    padding: 10px 0px 12px;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0px 8px 20px rgba(15, 23, 42, 0.08);
    -webkit-backdrop-filter: saturate(180%) blur(12px);
    backdrop-filter: saturate(180%) blur(12px);
  }
  .site-header-main-inner {
    display: block;
  }
  .site-header-catalog-button {
    min-height: 46px;
    padding: 0px 14px;
    gap: 8px;
    font-size: 0px;
  }
  .site-header-catalog-button .hamburger {
    width: 20px;
  }
  .site-header-search {
    order: -1;
    grid-column: 1/-1;
  }
  .site-header-search .search-input {
    height: 44px;
    padding: 0px 88px 0px 16px;
    font-size: 14px;
    border-radius: 16px;
  }
  .site-header-search .search-button {
    right: 10px;
    font-size: 22px;
  }
  .site-header-search .search-voice-trigger {
    right: 48px;
  }
  .site-header-categories {
    position: fixed;
    left: 0px;
    right: 0px;
    top: var(--mobile-header-main-height);
    z-index: 3260;
    display: block;
    min-height: var(--mobile-header-categories-height);
    background: rgba(255, 255, 255, 0.98);
    border-bottom: 1px solid #e5eaf2;
    box-shadow: 0px 8px 16px rgba(15, 23, 42, 0.05);
    -webkit-backdrop-filter: saturate(180%) blur(12px);
    backdrop-filter: saturate(180%) blur(12px);
  }
  .site-header-categories-scroll {
    overflow-x: auto !important;
    overflow-y: visible !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .site-header-categories-scroll::-webkit-scrollbar {
    display: none;
  }
  .site-header-categories-items {
    justify-content: flex-start;
    gap: 10px;
    min-height: 50px;
    width: max-content;
    padding: 0px 14px;
  }
  .site-header-categories .container {
    padding-right: 0px;
    padding-left: 0px;
  }
  .site-header-categories-link {
    min-height: 34px;
    padding: 0px 12px;
    border-radius: 999px;
    font-size: 13px;
    line-height: 16px;
  }
  .site-header-categories-link.is-active, .site-header-categories-link.is-accent {
    background: #eef4ff;
  }
  .site-header-categories-submenu {
    display: none;
  }
  .user_icons-main {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    align-items: center;
  }
  .user_icons-items {
    display: grid !important;
    grid-template-columns: minmax(0px, 1fr) 38px 38px 38px;
    gap: 8px;
    align-items: center;
    width: auto;
    margin: 0px;
  }
  .user_icons-item-menu {
    position: absolute;
    width: 0px;
    height: 0px;
    overflow: visible;
    display: block !important;
    pointer-events: none;
  }
  .user_icons-item-menu > .user_icons-icon-menu {
    display: none !important;
  }
  .user_icons-item-menu.is-open {
    pointer-events: auto;
  }
  .user_icons-item-logo {
    grid-column: 1;
    display: inline-flex !important;
    justify-content: flex-start;
    min-width: 0px;
  }
  .user_icons-item-logo .logo img {
    width: auto;
    max-width: min(170px, 48vw);
    max-height: 42px;
  }
  .user_icons-item:not(.user_icons-item-menu):not(.user_icons-item-logo) {
    display: none !important;
  }
  .user_icons-main .user_icons-items .user_icons-item.user_icons-item-compares, .user_icons-main .user_icons-items .user_icons-item.user_icons-item-favorites, .user_icons-main .user_icons-items .user_icons-item.user_icons-item-mobile-contact {
    display: inline-flex !important;
    justify-content: center;
    min-width: 0px;
  }
  .user_icons-main .user_icons-items .user_icons-item.user_icons-item-compares .user_icons-icon, .user_icons-main .user_icons-items .user_icons-item.user_icons-item-favorites .user_icons-icon, .user_icons-main .user_icons-items .user_icons-item.user_icons-item-mobile-contact .user_icons-icon {
    min-width: 38px;
    min-height: 38px;
    border: 1px solid #dfe8f5;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.92);
    color: #526071;
    box-shadow: 0px 4px 12px rgba(15, 23, 42, 0.05);
  }
  .user_icons-main .user_icons-items .user_icons-item.user_icons-item-compares .user_icons-icon svg,
  .user_icons-main .user_icons-items .user_icons-item.user_icons-item-compares .user_icons-icon .far, .user_icons-main .user_icons-items .user_icons-item.user_icons-item-favorites .user_icons-icon svg,
  .user_icons-main .user_icons-items .user_icons-item.user_icons-item-favorites .user_icons-icon .far, .user_icons-main .user_icons-items .user_icons-item.user_icons-item-mobile-contact .user_icons-icon svg,
  .user_icons-main .user_icons-items .user_icons-item.user_icons-item-mobile-contact .user_icons-icon .far {
    width: 20px;
    height: 20px;
  }
  .user_icons-main .user_icons-items .user_icons-item.user_icons-item-compares .user_icons-icon .bage, .user_icons-main .user_icons-items .user_icons-item.user_icons-item-favorites .user_icons-icon .bage, .user_icons-main .user_icons-items .user_icons-item.user_icons-item-mobile-contact .user_icons-icon .bage {
    top: -4px;
    right: -4px;
  }
  .user_icons-main .user_icons-items .user_icons-item.user_icons-item-mobile-contact .user_icons-icon {
    border: 1px solid rgba(15, 61, 145, 0.18);
    color: #0a2f83;
  }
  .user_icons-main .user_icons-items .user_icons-item.user_icons-item-mobile-contact .user_icons-icon.is-active {
    border-color: #0a2f83;
    background: #0a2f83;
    color: #fff;
  }
  .user_icons-icon {
    min-width: 38px;
    min-height: 38px;
    font-size: 19px;
  }
  .user_icons-icon-menu {
    border-radius: 14px;
    background: #0a2f83;
    color: #fff !important;
  }
  .user_icons .site-header-cart {
    display: none !important;
  }
  .user_icons-popup {
    position: fixed;
    inset: 0px;
    z-index: 7000;
    padding: 0px;
    background: rgba(15, 23, 42, 0.45);
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transform: none;
  }
  .user_icons-item:not(.is-open):hover .user_icons-popup {
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
  }
  .user_icons-item.is-open .user_icons-popup {
    pointer-events: auto;
    opacity: 1;
    visibility: visible;
    transform: none;
  }
  .user_icons-popup .popup {
    position: absolute;
    z-index: 2;
    top: 0px;
    left: 0px;
    width: min(94vw, 380px);
    height: 100%;
    max-height: 100dvh;
    overflow: auto;
    padding: 0px;
    border: 0px;
    border-radius: 0px 18px 18px 0px;
    transform: translateX(-105%);
    transition: 0.2s ease;
  }
  .user_icons-popup .popup:before, .user_icons-popup .popup:after {
    display: none;
  }
  .user_icons-item.is-open .user_icons-popup .popup {
    transform: translateX(0px);
  }
  .user_icons-popup .popup-shade {
    position: fixed;
    z-index: 1;
    inset: 0px;
    cursor: pointer;
  }
  .user_icons-item-compares .user_icons-popup, .user_icons-item-favorites .user_icons-popup {
    background: rgba(15, 23, 42, 0.48);
  }
  .user_icons-item-compares .user_icons-popup .popup, .user_icons-item-favorites .user_icons-popup .popup {
    position: fixed;
    inset: 0px;
    width: 100vw;
    max-width: 100vw;
    height: 100dvh;
    max-height: 100dvh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border-radius: 0px;
    background: #fff;
    transform: translateY(18px);
    opacity: 0;
    visibility: hidden;
  }
  .user_icons-item-compares.is-open .user_icons-popup .popup, .user_icons-item-favorites.is-open .user_icons-popup .popup {
    transform: translateY(0px);
    opacity: 1;
    visibility: visible;
  }
  .user_icons-item-compares .popup-title, .user_icons-item-favorites .popup-title {
    position: sticky;
    top: 0px;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 58px;
    margin: 0px;
    padding: 0px 18px;
    border-bottom: 1px solid #e5eaf2;
    background: rgba(255, 255, 255, 0.96);
    color: #111827;
    font-size: 20px;
    line-height: 24px;
    font-weight: 600;
  }
  .user_icons-item-compares .popup-close, .user_icons-item-favorites .popup-close {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #f5f7fb;
    color: #111827;
  }
  .user_icons-item-compares .js-popup-compares,
  .user_icons-item-compares .js-popup-favorites, .user_icons-item-favorites .js-popup-compares,
  .user_icons-item-favorites .js-popup-favorites {
    flex: 1 1 auto;
    min-height: 0px;
    padding: 16px 18px calc(24px + env(safe-area-inset-bottom));
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .user_icons-item-compares .dropdown_products, .user_icons-item-favorites .dropdown_products {
    max-height: none;
    margin: 0px;
    padding: 0px;
    overflow: visible;
  }
  .site-header-catalog-col .nav-collections,
  .nav-collections--dropdown {
    display: none !important;
    pointer-events: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
  }
  .mobile-header-search {
    display: block;
    width: 100%;
  }
  .mobile-header-search .search-form {
    position: relative;
  }
  .mobile-header-search .search-input {
    height: 44px;
    padding: 0px 84px 0px 16px;
    border: 1px solid #e5eaf2;
    border-radius: 14px;
    background: #fbfcff;
    font-size: 14px;
  }
  .mobile-header-search .search-button,
  .mobile-header-search .search-voice-trigger {
    position: absolute;
    top: 50%;
    border: 0px;
    background: transparent;
    transform: translateY(-50%);
    line-height: 0px;
  }
  .mobile-header-search .search-button {
    right: 8px;
    padding: 8px;
    color: #0a2f83;
    font-size: 22px;
  }
  .mobile-header-search .search-voice-trigger {
    right: 44px;
    padding: 8px;
    color: #6b7280;
  }
}
@media (max-width: 767px) {
  .user_icons-item-menu .js-popup-menu {
    background: #fff;
  }
  .user_icons-item-menu .js-popup-menu .popup-scroll {
    position: relative;
    height: 100%;
    padding: 0px 14px calc(96px + env(safe-area-inset-bottom));
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }
  .user_icons-item-menu .js-popup-menu .popup-title {
    position: sticky;
    top: 0px;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 58px;
    margin: 0px -14px 12px;
    padding: 0px 14px;
    border-bottom: 1px solid #e5eaf2;
    background: rgba(255, 255, 255, 0.96);
    backdrop-filter: saturate(180%) blur(12px);
    color: #111827;
    font-size: 18px;
    font-weight: 700;
    line-height: 22px;
  }
  .user_icons-item-menu .js-popup-menu .popup-close {
    width: 40px;
    min-width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #f3f6fb;
    color: #111827;
  }
  .user_icons-item-menu .js-popup-menu .popup-content-search {
    margin: 0px 0px 14px !important;
    border: 0px;
  }
  .user_icons-item-menu .js-popup-menu .search--popup .search-input {
    height: 46px;
    padding: 0px 82px 0px 16px;
    border: 1px solid #e5eaf2;
    border-radius: 14px;
    background: #f8fafc;
    font-size: 14px;
  }
  .user_icons-item-menu .js-popup-menu .search--popup .search-button,
  .user_icons-item-menu .js-popup-menu .search--popup .search-voice-trigger {
    top: 50%;
    transform: translateY(-50%);
  }
  .user_icons-item-menu .js-popup-menu .js-popup-nav-sidebar {
    margin: 0px !important;
    padding: 0px 0px 12px;
    border-bottom: 1px solid #e5eaf2;
  }
  .user_icons-item-menu .js-popup-menu .nav-sidebar {
    font-size: 14px;
    line-height: 18px;
  }
  .user_icons-item-menu .js-popup-menu .nav-sidebar > ul {
    margin: 0px;
    padding: 0px;
  }
  .user_icons-item-menu .js-popup-menu .nav-sidebar > ul > li {
    margin: 0px !important;
  }
  .user_icons-item-menu .js-popup-menu .nav-sidebar ul li {
    margin: 0px;
  }
  .user_icons-item-menu .js-popup-menu .nav-sidebar a {
    position: relative;
    display: block;
    min-height: 0px;
    padding: 11px 36px 11px 0px !important;
    border: 0px;
    border-bottom: 1px solid #edf2f7;
    border-radius: 0px;
    background: transparent;
    color: #111827;
    font-weight: 600;
    text-decoration: none;
  }
  .user_icons-item-menu .js-popup-menu .nav-sidebar li.is-active > a,
  .user_icons-item-menu .js-popup-menu .nav-sidebar a:hover {
    border-color: #edf2f7;
    background: transparent;
    color: #111827;
  }
  .user_icons-item-menu .js-popup-menu .nav-sidebar a:focus {
    outline: none;
    background: transparent;
    color: #111827;
  }
  .user_icons-item-menu .js-popup-menu .nav-sidebar a:focus-visible {
    outline: 2px solid rgba(47, 125, 240, 0.28);
    outline-offset: -2px;
  }
  .user_icons-item-menu .js-popup-menu .nav-sidebar li.is-active > a {
    background: transparent;
    font-weight: 700;
  }
  .user_icons-item-menu .js-popup-menu .nav-sidebar .nav-thumb {
    position: absolute;
    left: 0px;
    top: 50%;
    display: block;
    width: 32px;
    height: 32px;
    margin-top: -16px;
    border-radius: 8px;
    background: #f8fafc;
    box-shadow: inset 0 0 0 1px #edf2f7;
    object-fit: contain;
  }
  .user_icons-item-menu .js-popup-menu .nav-sidebar .nav-thumb--placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #0a2f83;
    font-size: 13px;
    font-weight: 800;
  }
  .user_icons-item-menu .js-popup-menu .nav-sidebar .nav-thumb--promo {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #0a2f83;
    background: #eef5ff;
  }
  .user_icons-item-menu .js-popup-menu .nav-sidebar .nav-thumb svg {
    display: block;
    width: 20px;
    height: 20px;
  }
  .user_icons-item-menu .js-popup-menu .nav-sidebar .nav-l0 {
    padding-left: 44px !important;
  }
  .user_icons-item-menu .js-popup-menu .nav-sidebar .nav-arrow-toggle {
    position: absolute;
    top: 50%;
    right: 0px !important;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    min-height: 0px;
    color: #6b7280;
    transform: translate(0px, -50%);
  }
  .user_icons-item-menu .js-popup-menu .nav-sidebar li.is-open > a .nav-arrow-toggle {
    color: #0a2f83;
    transform: translate(0px, -50%) rotate(90deg);
  }
  .user_icons-item-menu .js-popup-menu .nav-sidebar li > ul {
    display: none;
    margin: 0px;
    padding: 0px 0px 0px 14px !important;
    border-left: 0px;
  }
  .user_icons-item-menu .js-popup-menu .nav-sidebar li.is-open > ul {
    display: block;
    max-height: 60vh;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .user_icons-item-menu .js-popup-menu .nav-sidebar li li a {
    min-height: 0px;
    padding-left: 0px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    background: transparent;
    color: #6b7280;
    font-size: 13px;
    font-weight: 500;
  }
  .user_icons-item-menu .js-popup-menu .popup-content-links {
    display: grid;
    gap: 8px;
    margin: 14px 0px !important;
    padding: 12px 0px 0px !important;
    border-top: 1px solid #e5eaf2;
    background: transparent;
  }
  .user_icons-item-menu .js-popup-menu .popup-content-links li {
    margin: 0px;
  }
  .user_icons-item-menu .js-popup-menu .popup-content-links a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 44px;
    padding: 0px 12px;
    border: 1px solid #e5eaf2;
    border-radius: 14px;
    background: #fff;
    color: #111827;
    font-weight: 700;
    box-shadow: 0 8px 18px rgba(17, 24, 39, 0.04);
  }
  .user_icons-item-menu .js-popup-menu .popup-content-links a:after {
    content: "";
    display: block;
    width: 7px;
    height: 7px;
    border-top: 2px solid currentColor;
    border-right: 2px solid currentColor;
    opacity: 0.45;
    transform: rotate(45deg);
  }
  .user_icons-item-menu .js-popup-menu .popup-content-links .popup-content-link.is-current a,
  .user_icons-item-menu .js-popup-menu .popup-content-links a:hover {
    border-color: rgba(47, 125, 240, 0.35);
    background: #f3f7ff;
    color: #0a2f83;
  }
  .user_icons-item-menu .js-popup-menu .popup-content-contacts {
    margin: 12px 0px 0px;
    padding: 12px;
    border-radius: 8px;
    background: #f8fafc;
    color: #6b7280;
    font-size: 13px;
    line-height: 18px;
  }
  body.is-mobile-catalog-open .site-header-main {
    height: 100dvh;
    min-height: 100dvh;
    background: transparent;
    box-shadow: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
  body.is-mobile-catalog-open .site-header-categories {
    display: none !important;
  }
  body.is-mobile-catalog-open .user_icons-main,
  body.is-mobile-catalog-open .user_icons-items,
  body.is-mobile-catalog-open .user_icons-item-menu,
  body.is-mobile-catalog-open .user_icons-item-menu .user_icons-popup {
    height: 100dvh;
    min-height: 100dvh;
  }
  body.is-mobile-catalog-open .user_icons-item-menu .user_icons-popup {
    width: 100vw;
    max-width: 100vw;
    background: #fff;
  }
  body.is-mobile-catalog-open .user_icons-item-menu .js-popup-menu {
    width: 100vw;
    max-width: 100vw;
    height: 100dvh;
    max-height: 100dvh;
    border-radius: 0px;
    overflow: hidden;
  }
  body.is-mobile-catalog-open .user_icons-item-menu .js-popup-menu .popup-scroll {
    height: 100dvh;
    padding-bottom: calc(24px + env(safe-area-inset-bottom));
  }
  body.is-mobile-catalog-open .user_icons-item-menu .js-popup-menu .popup-title {
    min-height: 54px;
    margin-bottom: 10px;
  }
}
@media (max-width: 767px) {
  .mobile-contact-sheet {
    position: fixed;
    inset: 0px;
    z-index: 99990;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.18s ease, visibility 0.18s ease;
  }
  .mobile-contact-sheet.is-open {
    pointer-events: auto;
    opacity: 1;
    visibility: visible;
  }
  .mobile-contact-sheet.is-open .mobile-contact-sheet-card {
    transform: translateY(0px);
  }
  .mobile-contact-sheet-shade {
    position: absolute;
    inset: 0px;
    background: rgba(15, 23, 42, 0.48);
  }
  .mobile-contact-sheet-card {
    position: absolute;
    right: 0px;
    bottom: 0px;
    left: 0px;
    max-height: min(86dvh, 620px);
    padding: 18px 18px calc(20px + env(safe-area-inset-bottom));
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    border-radius: 24px 24px 0px 0px;
    background: #fff;
    box-shadow: 0px -18px 42px rgba(15, 23, 42, 0.18);
    transform: translateY(105%);
    transition: transform 0.22s ease;
  }
  .mobile-contact-sheet-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 16px;
  }
  .mobile-contact-sheet-title {
    color: #111827;
    font-size: 22px;
    line-height: 26px;
    font-weight: 600;
  }
  .mobile-contact-sheet-caption {
    margin-top: 4px;
    color: #6b7280;
    font-size: 14px;
    line-height: 18px;
  }
  .mobile-contact-sheet-close {
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    border: 0px;
    border-radius: 50%;
    background: #f5f7fb;
    color: #111827;
    font-size: 18px;
  }
  .mobile-contact-phones {
    display: grid;
    gap: 10px;
  }
  .mobile-contact-phone,
  .mobile-contact-info-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px;
    border: 1px solid #e5eaf2;
    border-radius: 18px;
    background: #fff;
    color: #111827;
    text-decoration: none;
    box-shadow: 0px 8px 22px rgba(15, 23, 42, 0.04);
  }
  .mobile-contact-phone > .far,
  .mobile-contact-phone > .fas,
  .mobile-contact-info-item > .far,
  .mobile-contact-info-item > .fas {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(15, 61, 145, 0.08);
    color: #0a2f83;
    font-size: 16px;
  }
  .mobile-contact-phone small,
  .mobile-contact-phone span,
  .mobile-contact-info-item small,
  .mobile-contact-info-item span {
    display: block;
  }
  .mobile-contact-phone small,
  .mobile-contact-info-item small {
    margin-bottom: 2px;
    color: #6b7280;
    font-size: 12px;
    line-height: 15px;
  }
  .mobile-contact-phone strong,
  .mobile-contact-info-item strong {
    color: #111827;
    font-size: 17px;
    line-height: 21px;
    font-weight: 600;
  }
  .mobile-contact-messengers {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin: 14px 0px;
  }
  .mobile-contact-messengers .messengers-items {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0px;
  }
  .mobile-contact-messengers .messengers-item a,
  .mobile-contact-messengers .mobile-contact-messenger {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 38px;
    padding: 0px 13px;
    border: 1px solid rgba(15, 61, 145, 0.14);
    border-radius: 999px;
    background: rgba(15, 61, 145, 0.07);
    color: #0a2f83;
    font-size: 14px;
    line-height: 18px;
    font-weight: 600;
    text-decoration: none;
  }
  .mobile-contact-messengers .mobile-contact-messenger-whatsapp {
    border-color: rgba(31, 140, 63, 0.18);
    background: rgba(31, 140, 63, 0.09);
    color: #188038;
  }
  .mobile-contact-messengers .mobile-contact-messenger-telegram {
    border-color: rgba(0, 136, 204, 0.18);
    background: rgba(0, 136, 204, 0.09);
    color: #0088cc;
  }
  .mobile-contact-info {
    display: grid;
    gap: 10px;
  }
  .mobile-contact-info-item {
    align-items: flex-start;
  }
  .mobile-contact-info-item div {
    min-width: 0px;
  }
  .mobile-contact-info-item span:not(.far):not(.fas) {
    margin-top: 3px;
    color: #6b7280;
    font-size: 14px;
    line-height: 18px;
  }
  .mobile-contact-map-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    margin-top: 10px;
    padding: 0px 14px;
    border-radius: 999px;
    background: rgba(15, 61, 145, 0.08);
    color: #0a2f83;
    font-size: 14px;
    line-height: 18px;
    font-weight: 600;
    text-decoration: none;
  }
  body.is-mobile-contact-open .site-header-categories {
    display: none !important;
  }
}
.mobile-bottom-nav {
  display: none;
}

@media (max-width: 767px) {
  body {
    padding-bottom: 86px;
  }
  .mobile-bottom-nav {
    position: fixed;
    left: 12px;
    right: 12px;
    bottom: max(12px, env(safe-area-inset-bottom));
    z-index: 3300;
    display: grid;
    grid-template-columns: repeat(4, minmax(0px, 1fr));
    gap: 2px;
    padding: 8px;
    border: 1px solid rgba(180, 202, 236, 0.64);
    border-radius: 28px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(246, 250, 255, 0.9));
    box-shadow: 0px 18px 44px rgba(15, 23, 42, 0.18), 0px 0px 0px 1px rgba(255, 255, 255, 0.78) inset;
    -webkit-backdrop-filter: saturate(180%) blur(20px);
    backdrop-filter: saturate(180%) blur(20px);
  }
  .mobile-bottom-nav-item {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 0px;
    min-height: 58px;
    padding: 5px 4px 7px;
    border: 1px solid transparent;
    border-radius: 22px;
    outline: none;
    background: transparent;
    color: #5b6677;
    box-shadow: none;
    cursor: pointer;
    font-family: "Inter", sans-serif;
    font-size: 10px;
    font-weight: 600;
    line-height: 1.1;
    text-decoration: none;
    -webkit-appearance: none;
    appearance: none;
    transition: color 0.22s ease, background-color 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease;
  }
  .mobile-bottom-nav-item:hover {
    color: #0a2f83;
    background: rgba(232, 240, 255, 0.72);
  }
  .mobile-bottom-nav-item.is-active, .mobile-bottom-nav-item.is-open {
    border-color: rgba(17, 57, 146, 0.14);
    background: rgba(232, 240, 255, 0.76);
    color: #0a2f83;
    box-shadow: 0px 8px 18px rgba(17, 57, 146, 0.12);
  }
  .mobile-bottom-nav-icon {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    margin-bottom: 4px;
    border: 1px solid rgba(180, 202, 236, 0.62);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.82);
    color: currentColor;
    box-shadow: 0px 5px 14px rgba(15, 23, 42, 0.07);
    transition: background-color 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease, color 0.22s ease;
  }
  .mobile-bottom-nav-icon.svg-inline--fa {
    width: 34px;
    height: 34px;
    padding: 7px;
  }
  .mobile-bottom-nav-icon svg,
  .mobile-bottom-nav-icon .far {
    width: 18px;
    height: 18px;
  }
  .mobile-bottom-nav-item.is-active .mobile-bottom-nav-icon, .mobile-bottom-nav-item.is-open .mobile-bottom-nav-icon {
    border-color: rgba(17, 57, 146, 0.2);
    background: #0a2f83;
    color: #fff;
    box-shadow: 0px 9px 18px rgba(17, 57, 146, 0.24);
  }
  .mobile-bottom-nav .js-mobile-catalog-trigger {
    color: #0a2f83;
  }
  .mobile-bottom-nav .js-mobile-catalog-trigger .mobile-bottom-nav-icon {
    border-color: rgba(17, 57, 146, 0.22);
    background: rgba(232, 240, 255, 0.95);
    color: #0a2f83;
  }
  .mobile-bottom-nav .js-mobile-catalog-trigger.is-open .mobile-bottom-nav-icon {
    background: #0a2f83;
    color: #fff;
  }
  .mobile-bottom-nav-label {
    display: block;
    max-width: 100%;
    overflow: hidden;
    color: currentColor;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .mobile-bottom-nav-bage,
  .mobile-bottom-nav .bage {
    position: absolute;
    top: 4px;
    right: max(8px, 50% - 26px);
    left: auto;
    min-width: 17px;
    height: 17px;
    padding: 0px 4px;
    border: 2px solid rgba(255, 255, 255, 0.94);
    background: #0a2f83;
    color: #fff;
    font-size: 9px;
    line-height: 13px;
    transform: none;
  }
  body.is-mobile-catalog-open .mobile-bottom-nav {
    z-index: 7002;
  }
  body.is-mobile-contact-open .mobile-bottom-nav {
    display: none !important;
  }
}
/* Navigation: desktop dropdowns, sidebar navigation and hamburger controls. */
/* Base navigation */
/* 4. Header / Navigation */
.nav-loader {
  text-align: center;
  font-size: 30px;
  color: #0a2f83;
  padding: 10px 0px;
}

.nav-l0 {
  padding-left: 44px !important;
}

.nav-thumb {
  position: absolute;
  left: 10px;
  top: 50%;
  margin-top: -12px;
  width: 24px;
  height: 24px;
  object-fit: contain;
}

.nav-collections {
  font-size: 14px;
  line-height: 18px;
}
.nav-collections--sidebar {
  position: relative;
  z-index: 3010;
  top: 0px;
  left: 0px;
  margin: -72px 20px 40px 0px;
}
.nav-collections--sidebar li {
  position: relative;
  height: auto;
}
.nav-collections--sidebar ul > li > ul {
  top: -8px;
}
.nav-collections--dropdown {
  position: absolute;
  z-index: 3200;
  top: 100%;
  left: 10px;
  width: 270px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.16s ease, transform 0.16s ease, visibility 0s 0.16s;
  transform: translate(0px, 10px);
}
.nav-collections a {
  position: relative;
  display: block;
  padding: 9px 20px;
  color: #111827;
}
.nav-collections ul,
.nav-collections li {
  display: block;
}
.nav-collections ul {
  position: relative;
  background: #fff;
  padding: 6px 0px;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
}
.nav-collections ul > li > ul {
  position: absolute;
  z-index: 3200;
  left: 100%;
  top: 0px;
  width: 100%;
  min-height: 100%;
  opacity: 0;
  visibility: hidden;
  transition: visibility 0s 0.4s, opacity 0.4s, transform 0.4s;
  transform: translate(10px, 0px);
}
.nav-collections ul li:hover > a, .nav-collections ul li.is-active > a {
  color: #0a2f83;
  z-index: 2;
}
.nav-collections ul li:hover > ul {
  z-index: 3200;
  opacity: 1;
  visibility: visible;
  transform: translate(0px, 0px);
  transition-delay: 0s;
}
.nav-collections ul li.is-active > a {
  font-weight: 600;
}
.nav-collections-toggle .nav-arrow-toggle {
  position: absolute;
  top: 50%;
  transform: translate(0px, -50%);
  padding: 8px 0px;
  width: 30px;
}
.nav-collections-toggle .nav-arrow-toggle svg {
  display: block;
  margin: 0px auto;
}
.nav-collections-toggle--next {
  padding-right: 40px !important;
}
.nav-collections-toggle--next .nav-arrow-toggle {
  right: 5px;
}
.nav-collections-toggle--back {
  padding-left: 40px !important;
}
.nav-collections-toggle--back .nav-arrow-toggle {
  left: 5px;
}
.nav-collections.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(0px, 0px);
  transition-delay: 0s;
}
.nav-collections--sidebar .nav-collections-submenu {
  width: 740px;
}
.nav-collections--dropdown .nav-collections-submenu {
  width: 680px;
}
.nav-collections--sidebar .nav-collections-submenu, .nav-collections--dropdown .nav-collections-submenu {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  align-content: start;
  padding: 15px 10px 0px;
}
.nav-collections--sidebar .nav-collections-submenu > li, .nav-collections--dropdown .nav-collections-submenu > li {
  -ms-flex: 0 0 33.333333%;
  flex: 0 0 33.333333%;
  max-width: 33.333333%;
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 14px;
}
.nav-collections--sidebar .nav-collections-submenu > li > a, .nav-collections--dropdown .nav-collections-submenu > li > a {
  padding: 0px !important;
}
.nav-collections--sidebar .nav-collections-submenu > li > a .nav-arrow-toggle, .nav-collections--dropdown .nav-collections-submenu > li > a .nav-arrow-toggle {
  display: none;
}
.nav-collections--sidebar .nav-collections-submenu > li > ul, .nav-collections--dropdown .nav-collections-submenu > li > ul {
  position: static;
  top: 0px;
  left: 0px;
  opacity: unset;
  visibility: unset;
  padding: 0px 0px 0px 15px;
  box-shadow: none;
  transform: none;
  font-size: 12px;
  line-height: 16px;
  min-height: auto;
  transition: none;
}
.nav-collections--sidebar .nav-collections-submenu > li > ul > li, .nav-collections--dropdown .nav-collections-submenu > li > ul > li {
  margin: 5px 0px 0px 0px;
}
.nav-collections--sidebar .nav-collections-submenu > li > ul > li > a, .nav-collections--dropdown .nav-collections-submenu > li > ul > li > a {
  padding: 0px !important;
}

/* Dropdown navigation */
@media (min-width: 768px) {
  .site-header-catalog-col .nav-collections--dropdown {
    left: 0px;
    width: min(1080px, 100vw - 32px);
    top: calc(100% - 1px);
    padding-top: 1px;
    transform: translate(0px, 0px);
  }
  .site-header-catalog-col .nav-collections--dropdown:not(.is-active) > ul,
  .site-header-catalog-col .nav-collections--dropdown:not(.is-active) > ul > li > ul {
    visibility: hidden !important;
    pointer-events: none !important;
  }
  .site-header-catalog-col .nav-collections--dropdown > ul {
    display: grid;
    grid-template-columns: minmax(250px, 300px) minmax(0px, 1fr);
    max-height: min(720px, 100vh - 170px);
    min-height: 430px;
    padding: 12px;
    border: 1px solid #e5eaf2;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0px 22px 60px rgba(15, 23, 42, 0.14);
    overflow: hidden;
  }
  .site-header-catalog-col .nav-collections--dropdown > ul > li {
    grid-column: 1;
    position: static;
  }
  .site-header-catalog-col .nav-collections--dropdown > ul > li > a {
    display: flex;
    align-items: center;
    min-height: 46px;
    margin: 2px 0px;
    padding: 10px 42px 10px 48px !important;
    border-radius: 14px;
    font-weight: 600;
    color: #111827;
    transition: background 0.2s ease, color 0.2s ease;
  }
  .site-header-catalog-col .nav-collections--dropdown > ul > li:hover > a, .site-header-catalog-col .nav-collections--dropdown > ul > li.is-catalog-hover > a, .site-header-catalog-col .nav-collections--dropdown > ul > li.is-active > a {
    background: #eef4ff;
    color: #0a2f83;
  }
  .site-header-catalog-col .nav-collections--dropdown > ul > li > ul {
    left: 312px;
    top: 12px;
    bottom: 12px;
    width: calc(100% - 324px);
    min-height: calc(100% - 24px);
    padding: 22px 24px;
    border-left: 1px solid #e5eaf2;
    box-shadow: none;
    background: linear-gradient(180deg, #fbfdff 0%, #fff 100%);
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: #c7d9f6 transparent;
  }
  .site-header-catalog-col .nav-collections--dropdown > ul > li.is-catalog-hover > ul, .site-header-catalog-col .nav-collections--dropdown > ul > li.is-active > ul {
    z-index: 3200;
    opacity: 1;
    visibility: visible;
    transform: translate(0px, 0px);
    transition-delay: 0s;
    pointer-events: auto;
  }
  .site-header-catalog-col .nav-collections--dropdown > ul > li:not(.is-catalog-hover):not(.is-active) > ul {
    z-index: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translate(10px, 0px) !important;
    pointer-events: none !important;
  }
  .site-header-catalog-col .nav-collections--dropdown:not(.is-active) > ul,
  .site-header-catalog-col .nav-collections--dropdown:not(.is-active) > ul > li,
  .site-header-catalog-col .nav-collections--dropdown:not(.is-active) > ul > li > ul,
  .site-header-catalog-col .nav-collections--dropdown:not(.is-active) .nav-collections-submenu {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-thumb {
    left: 14px;
    width: 26px;
    height: 26px;
    margin-top: -13px;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-arrow-toggle {
    right: 10px;
    color: #6b7280;
  }
  .site-header-catalog-col .nav-collections--dropdown > ul > li > ul,
  .site-header-catalog-col .nav-collections--dropdown .nav-collections-submenu {
    display: grid;
    grid-template-columns: repeat(2, minmax(0px, 1fr));
    align-content: start;
    gap: 12px 16px;
    padding: 18px 22px !important;
  }
  .site-header-catalog-col .nav-collections--dropdown > ul > li > ul > li,
  .site-header-catalog-col .nav-collections--dropdown .nav-collections-submenu > li {
    flex: none;
    max-width: none;
    min-width: 0px;
    padding: 0px;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-group {
    display: flex;
    flex-direction: column;
    min-height: auto;
    padding: 10px;
    border: 1px solid #e5eaf2;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0px 4px 12px rgba(24, 32, 56, 0.04);
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-card {
    display: grid;
    align-items: center;
    width: 100%;
    min-width: 0px;
    text-align: left;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-card--group {
    grid-template-columns: 36px minmax(0px, 1fr);
    gap: 10px;
    min-height: 38px;
    padding: 0px !important;
    color: #111827;
    font-weight: 600;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-card--child {
    grid-template-columns: 28px minmax(0px, 1fr);
    gap: 8px;
    min-height: 34px;
    padding: 5px 6px !important;
    border-radius: 9px;
    color: #111827;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-card--grandchild {
    grid-template-columns: 20px minmax(0px, 1fr);
    gap: 7px;
    min-height: 28px;
    padding: 3px 6px !important;
    border-radius: 7px;
    color: #6b7280;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-card-thumb {
    position: relative;
    display: block;
    flex: 0 0 auto;
    margin: 0px;
    padding: 0px !important;
    border-radius: 8px;
    background: #f5f7fb;
    overflow: hidden;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-card-image,
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-card-thumb img,
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-card-thumb source {
    position: absolute;
    inset: 0px;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-card-placeholder {
    position: absolute;
    inset: 0px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #0a2f83;
    font-size: 18px;
    font-weight: 600;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-card--group .nav-subcollection-card-thumb {
    width: 36px;
    height: 36px;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-card--child .nav-subcollection-card-thumb {
    width: 28px;
    height: 28px;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-card--grandchild .nav-subcollection-card-thumb {
    width: 20px;
    height: 20px;
    border-radius: 6px;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-card--group .nav-subcollection-card-title {
    font-size: 13px;
    line-height: 17px;
    font-weight: 600;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-card--child .nav-subcollection-card-title {
    font-size: 12px;
    line-height: 15px;
    font-weight: 500;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-card--grandchild .nav-subcollection-card-title {
    font-size: 11px;
    line-height: 14px;
    font-weight: 500;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-children,
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-grandchildren {
    position: static !important;
    display: grid;
    width: auto !important;
    min-height: 0px !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    transition: none !important;
    background: transparent;
    box-shadow: none;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-children {
    grid-template-columns: 1fr;
    gap: 4px;
    margin: 8px 0px 0px !important;
    padding: 8px 0px 0px !important;
    border-top: 1px solid #e5eaf2 !important;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-grandchildren {
    grid-template-columns: 1fr;
    gap: 2px;
    margin: 2px 0px 2px 36px !important;
    padding: 0px !important;
    border: 0px !important;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-children > li,
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-grandchildren > li {
    margin: 0px !important;
    padding: 0px !important;
  }
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-card--child:hover,
  .site-header-catalog-col .nav-collections--dropdown .nav-subcollection-card--grandchild:hover {
    background: #eef4ff;
    color: #0a2f83;
  }
  .site-header-catalog-col .nav-collections--dropdown.is-catalog-controlled > ul > li:not(.is-catalog-hover) > ul {
    z-index: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translate(10px, 0px) !important;
    pointer-events: none !important;
  }
  .site-header-catalog-col .nav-collections--dropdown.is-catalog-controlled > ul > li.is-catalog-hover > ul {
    z-index: 3200 !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: translate(0px, 0px) !important;
    pointer-events: auto !important;
  }
}
/* Sidebar navigation */
.container--nav_layout_sidebar--index .nav-collections--sidebar {
  margin-top: 0px;
}

@media (min-width: 1200px) {
  .nav-collections--sidebar .nav-collections-submenu {
    width: 875px;
  }
}
@media (min-width: 1200px) {
  .nav-collections--dropdown .nav-collections-submenu {
    width: 860px;
  }
}
.nav-sidebar {
  font-size: 14px;
  line-height: 18px;
}
.nav-sidebar.js-popup-nav-sidebar > ul {
  display: block !important;
}
.nav-sidebar.js-popup-nav-sidebar > ul > .is-active {
  order: 0;
}
.nav-sidebar.js-popup-nav-sidebar > ul > li {
  margin: 0px !important;
}
.nav-sidebar.js-popup-nav-sidebar > ul > li.is-active.is-open > ul {
  display: block !important;
}
.nav-sidebar .nav-l0 {
  padding-left: 34px !important;
}
.nav-sidebar .nav-thumb {
  left: 0px;
}
.nav-sidebar:not(.js-popup-nav-sidebar) > ul {
  display: flex !important;
  flex-direction: column;
}
.nav-sidebar:not(.js-popup-nav-sidebar) > ul > .is-active {
  order: -1;
}
.nav-sidebar:not(.js-popup-nav-sidebar) > ul > li {
  margin: 15px 0px 0px !important;
}
.nav-sidebar:not(.js-popup-nav-sidebar) > ul > li > ul {
  padding-left: 0px !important;
}
.nav-sidebar:not(.js-popup-nav-sidebar) > ul > li.is-active.is-open > ul {
  display: flex !important;
  flex-direction: column;
}
.nav-sidebar:not(.js-popup-nav-sidebar) > ul > li.is-active.is-open > ul > .is-active {
  order: -1;
}
.nav-sidebar a {
  display: block;
  color: #111827;
  position: relative;
}
.nav-sidebar ul {
  position: relative;
}
.nav-sidebar ul li {
  margin: 10px 0px 0px;
}
.nav-sidebar ul li > ul {
  display: none;
  padding-left: 5px;
  font-size: 13px;
  line-height: 16px;
}
.nav-sidebar ul li:hover > a, .nav-sidebar ul li.is-active > a {
  color: #0a2f83;
}
.nav-sidebar ul li.is-active > a {
  font-weight: 600;
}
.nav-sidebar ul li.is-open > a .nav-arrow-toggle {
  transform: translate(0px, -50%) rotate(90deg);
}
.nav-sidebar ul li.is-open > ul {
  display: block;
}
.nav-sidebar .nav-collections-toggle--next .nav-arrow-toggle {
  right: 0px;
}
.nav-sidebar.js-inner-nav-sidebar .nav-l0 {
  display: flex;
  align-items: center;
  min-height: 42px;
  margin: 2px 0px;
  padding: 9px 36px 9px 42px !important;
  border-radius: 14px;
  color: #111827;
  font-weight: 600;
  transition: background 0.2s ease, color 0.2s ease;
}
.nav-sidebar.js-inner-nav-sidebar .nav-thumb {
  left: 10px;
  width: 24px;
  height: 24px;
  margin-top: -12px;
}
.nav-sidebar.js-inner-nav-sidebar .nav-arrow-toggle {
  right: 4px;
  width: 28px;
  color: #6b7280;
}
.nav-sidebar.js-inner-nav-sidebar > ul {
  gap: 4px;
}
.nav-sidebar.js-inner-nav-sidebar > ul > li {
  margin: 0px !important;
}
.nav-sidebar.js-inner-nav-sidebar > ul > li.is-active > .nav-l0,
.nav-sidebar.js-inner-nav-sidebar > ul > li.is-open > .nav-l0,
.nav-sidebar.js-inner-nav-sidebar > ul > li > .nav-l0:hover {
  background: #eef4ff;
  color: #0a2f83;
}
.nav-sidebar.js-inner-nav-sidebar > ul > li > ul {
  margin: 4px 0px 10px;
  padding: 0px 0px 0px 34px !important;
  border-left: 1px solid #e5eaf2;
}
.nav-sidebar.js-inner-nav-sidebar li.is-open > ul {
  display: grid !important;
  gap: 5px;
}
.nav-sidebar.js-inner-nav-sidebar li li {
  margin: 0px;
}
.nav-sidebar.js-inner-nav-sidebar li li > a {
  min-height: 34px;
  padding: 7px 10px !important;
  border-radius: 9px;
  color: #111827;
  font-size: 13px;
  line-height: 16px;
  font-weight: 500;
}
.nav-sidebar.js-inner-nav-sidebar li li > a:hover,
.nav-sidebar.js-inner-nav-sidebar li li.is-active > a {
  background: #eef4ff;
  color: #0a2f83;
}
.nav-sidebar.js-inner-nav-sidebar li li > .nav-subcollection-card {
  display: grid;
  grid-template-columns: 34px minmax(0px, 1fr);
  align-items: center;
  gap: 10px;
  min-height: 44px;
  padding: 5px 8px 5px 5px !important;
  border-radius: 10px;
  background: #fff;
  color: #111827;
}
.nav-sidebar.js-inner-nav-sidebar li li > .nav-subcollection-card:hover,
.nav-sidebar.js-inner-nav-sidebar li li.is-active > .nav-subcollection-card {
  background: #eef4ff;
  color: #0a2f83;
}
.nav-sidebar.js-inner-nav-sidebar li li > .nav-subcollection-card .nav-subcollection-card-thumb {
  position: relative;
  display: block;
  width: 34px;
  height: 34px;
  border-radius: 8px;
  background: #f5f7fb;
  overflow: hidden;
}
.nav-sidebar.js-inner-nav-sidebar li li > .nav-subcollection-card .nav-subcollection-card-image,
.nav-sidebar.js-inner-nav-sidebar li li > .nav-subcollection-card .nav-subcollection-card-thumb img,
.nav-sidebar.js-inner-nav-sidebar li li > .nav-subcollection-card .nav-subcollection-card-thumb source {
  position: absolute;
  inset: 0px;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain;
}
.nav-sidebar.js-inner-nav-sidebar li li > .nav-subcollection-card .nav-subcollection-card-placeholder {
  position: absolute;
  inset: 0px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #0a2f83;
  font-size: 16px;
  font-weight: 600;
}
.nav-sidebar.js-inner-nav-sidebar li li > .nav-subcollection-card .nav-subcollection-card-title {
  display: block;
  min-width: 0px;
  color: inherit;
  font-size: 13px;
  line-height: 16px;
  font-weight: 600;
}

@media (max-width: 767px) {
  body.is-mobile-catalog-open .popup-content-links,
  body.is-mobile-catalog-open .popup-content-contacts {
    display: none !important;
  }
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar {
    padding: 0px 14px 24px;
    font-size: 15px;
    line-height: 20px;
  }
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar > ul {
    display: grid !important;
    gap: 8px;
    padding: 0px;
  }
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar li {
    margin: 0px !important;
  }
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar a {
    display: flex;
    align-items: center;
    min-height: 52px;
    padding: 10px 42px 10px 52px;
    border: 1px solid #e5eaf2;
    border-radius: 14px;
    background: #fff;
    color: #111827;
    font-weight: 600;
    box-shadow: 0px 4px 12px rgba(24, 32, 56, 0.04);
  }
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar .nav-l0 {
    padding-left: 52px !important;
  }
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar .nav-thumb {
    left: 12px;
    width: 28px;
    height: 28px;
    margin-top: -14px;
  }
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar .nav-arrow-toggle {
    right: 9px;
    width: 34px;
    height: 34px;
    padding: 8px;
    border-radius: 50%;
    color: #6b7280;
    background: #f5f7fb;
  }
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar li.is-active > a,
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar li.is-open > a {
    border-color: #c7d9f6;
    background: #eef4ff;
    color: #0a2f83;
  }
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar li > ul {
    display: none;
    margin: 8px 0px 4px;
    padding: 0px 0px 0px 12px;
    border-left: 2px solid #eef4ff;
    font-size: 14px;
    line-height: 19px;
  }
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar li.is-open > ul {
    display: grid;
    gap: 7px;
  }
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar li li a {
    min-height: 44px;
    padding: 9px 38px 9px 20px;
    border-radius: 8px;
    background: #fbfcff;
    font-weight: 600;
  }
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar li li > .nav-subcollection-card {
    display: grid;
    grid-template-columns: 48px minmax(0px, 1fr);
    column-gap: 12px;
    align-items: center;
    min-height: 64px;
    padding: 8px 42px 8px 12px !important;
    background: #fff;
  }
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar li li > .nav-subcollection-card .nav-subcollection-card-thumb {
    position: relative;
    display: block;
    width: 48px;
    height: 48px;
    border-radius: 8px;
    background: #f5f7fb;
    overflow: hidden;
  }
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar li li > .nav-subcollection-card .nav-subcollection-card-image,
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar li li > .nav-subcollection-card .nav-subcollection-card-thumb img,
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar li li > .nav-subcollection-card .nav-subcollection-card-thumb source {
    position: absolute;
    inset: 0px;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain;
  }
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar li li > .nav-subcollection-card .nav-subcollection-card-placeholder {
    position: absolute;
    inset: 0px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #0a2f83;
    font-size: 20px;
    font-weight: 600;
  }
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar li li > .nav-subcollection-card .nav-subcollection-card-title {
    display: block;
    color: #111827;
    font-size: 14px;
    line-height: 18px;
    font-weight: 600;
  }
  body.is-mobile-catalog-open .nav-sidebar.js-popup-nav-sidebar li li .nav-arrow-toggle {
    width: 30px;
    height: 30px;
    right: 7px;
    background: transparent;
  }
}
/* Hamburger control */
.hamburger {
  display: inline-block;
  width: 20px;
  height: 16px;
  color: #fff;
}
.hamburger > span {
  position: absolute;
  width: 100%;
  height: 2px;
  transition: 0.4s;
}
.hamburger > span:nth-child(1) {
  top: 0px;
}
.hamburger > span:nth-child(2) {
  top: calc(50% - 1px);
}
.hamburger > span:nth-child(3) {
  bottom: 0px;
}
.hamburger > span:before, .hamburger > span:after {
  content: "";
  position: absolute;
  width: 50%;
  height: 100%;
  background: currentColor;
  transition: 0.4s;
}
.hamburger > span:before {
  left: 0px;
}
.hamburger > span:after {
  right: 0px;
}

/* 5. Footer */
.footer-subscribe {
  padding: 28px 0px;
  background-color: #0a2f83;
  color: #fff;
}
.footer-subscribe-title {
  font-size: 14px;
  line-height: 18px;
  font-weight: 600;
  margin: 0px 0px 5px;
}
.footer-subscribe-policy {
  font-size: 12px;
  line-height: 16px;
  margin: 5px 0px 0px;
}
.footer-subscribe-form {
  padding: 6px;
  background: #fff;
  border-radius: 18px;
  box-shadow: 0px 14px 28px rgba(10, 47, 131, 0.22);
}
.footer-subscribe-description {
  font-size: 14px;
  line-height: 18px;
}
.footer-subscribe-yamarket {
  font-size: 12px;
  line-height: 16px;
  text-align: center;
}
.footer-subscribe-yamarket img {
  margin: 0px auto;
}
.footer-subscribe-yamarket span {
  display: block;
  margin: 5px 0px 0px;
}
.footer-subscribe a {
  color: #fff;
  text-decoration: underline;
}
.footer-subscribe a:hover {
  color: #fff !important;
}
.footer-menu {
  padding: 36px 0px 12px;
  background-color: #fff;
  color: #6b7280;
  border-top: 1px solid #e5eaf2;
}
.footer-menu a {
  color: #374151;
}
.footer-menu a:hover {
  color: #0a2f83;
}
.footer-menu-block {
  margin: 0px 0px 28px;
}
.footer-menu-title {
  font-size: 15px;
  line-height: 20px;
  font-weight: 600;
  color: #111827;
  margin: 0px 0px 14px;
}
.footer-menu-title--second {
  margin: 20px 0px 0px;
}
.footer-menu-title .logo {
  margin: 0px 0px 10px;
}
.footer-menu-title .logo img {
  max-width: 200px;
}
.footer-menu-items {
  font-size: 14px;
  line-height: 20px;
}
.footer-menu-item {
  margin: 0px 0px 11px;
}
.footer-menu-item:last-child {
  margin: 0px;
}
.footer-menu-item--social {
  margin-top: 10px;
}
.footer-menu-item--icon {
  position: relative;
  padding-left: 25px;
}
.footer-menu-item--icon svg {
  position: absolute;
  left: 0px;
  top: 3px;
  color: #0a2f83;
}
.footer-menu-item--phone > a {
  display: inline-block;
  font-size: 17px;
  line-height: 22px;
  font-weight: 600;
  color: #111827;
}
.footer-menu-item--phone span {
  display: inline-block;
  font-size: 12px;
  line-height: 16px;
  border-bottom: 1px dotted currentColor;
  cursor: pointer;
  transition: color 0.2s linear;
}
.footer-menu-item--phone span:hover {
  color: #0a2f83;
}
.footer-copyright {
  font-size: 12px;
  line-height: 16px;
  padding: 18px 0px;
  background-color: #111827;
  color: #fff;
  border-top: none;
}
.footer-copyright a {
  color: #fff;
  text-decoration: underline;
}
.footer-copyright a:hover {
  color: #0a2f83;
}
.footer-copyright-small {
  display: block;
  font-size: 11px;
  line-height: 14px;
  max-width: 880px;
  margin: 5px 0px 0px;
}

.payments {
  margin: 0px -5px;
}
.payments li {
  display: inline-block;
  vertical-align: middle;
  margin: 5px;
}
.payments li img {
  width: auto;
  height: 18px;
}

@media (max-width: 767px) {
  .footer-subscribe-yamarket {
    margin: 20px 0px 0px;
  }
  .footer-subscribe-description {
    font-size: 14px;
    margin: 20px 0px 0px;
  }
}
@media (max-width: 1024px) {
  .payments {
    margin: 0px 0px 10px;
  }
}
.scroll-top {
  position: fixed;
  bottom: 20px;
  z-index: 100;
  border: none;
  background-color: #0a2f83;
  border-radius: 50%;
  display: none;
  width: 40px;
  height: 40px;
  cursor: pointer;
  color: #111827;
  font-size: 18px;
  line-height: 40px;
  padding: 0px;
}
.scroll-top--left {
  left: 20px;
}
.scroll-top--right {
  right: 20px;
}
.scroll-top:hover {
  color: #fff;
  background-color: #111827;
}

/* Pages and section-level composition. Keep visual cascade order stable. */
/* Product-card usage variants owned by product sections, not by the card component. */
.insales-section-products--popular {
  padding: 10px 0px 34px;
}
.insales-section-products--popular .products {
  padding: 24px 28px 28px;
  border: 1px solid #e5eaf2;
  border-radius: 28px;
  background: linear-gradient(180deg, #fff 0%, #f8fbff 100%);
  box-shadow: 0 18px 46px rgba(15, 23, 42, 0.06);
}
.insales-section-products--popular .products-title {
  margin-bottom: 18px;
  color: #111827;
  font-size: 30px;
  line-height: 36px;
  font-weight: 600;
  text-align: left !important;
}
.insales-section-products--popular .products-title a {
  color: inherit;
}
.insales-section-products--popular .products-title a:hover {
  color: #0a2f83;
}
.insales-section-products--popular .home-rail-wrap {
  min-width: 0;
}
.insales-section-products--popular .products-rail {
  grid-auto-columns: minmax(206px, 228px);
  gap: 14px;
  margin: 0px -4px;
  padding: 4px 4px 14px;
}
.insales-section-products--popular .products-rail-item {
  display: flex;
  min-width: 0;
}
.insales-section-products--popular .product_card {
  min-height: 350px;
  margin-bottom: 0px;
  border-radius: 22px;
  box-shadow: 0 12px 34px rgba(15, 23, 42, 0.06);
}
.insales-section-products--popular .product_card-thumb {
  border-radius: 18px;
  background: #f4f7fb;
}

.products-rail-item .product_card {
  height: 100%;
  margin-bottom: 0px;
}

/* Product-card related product-section variants moved from _ui.scss. */
.insales-section-products--related_products, .insales-section-products--similar_products, .insales-section-products--recently {
  padding-top: 40px;
  border-top: 1px solid #e5eaf2;
}
.insales-section-products--recently .products-title {
  display: flex;
  align-items: center;
  gap: 12px;
}
.insales-section-products--recently .js-recently-clear {
  margin-left: 0px;
}
.insales-section-products--recently .product_card--recently {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 10px;
}
.insales-section-products--recently .product_card--recently .product_card-thumb {
  margin-bottom: 8px;
  border-radius: 12px;
}
.insales-section-products--recently .product_card--recently .product_card-prices {
  min-height: 24px;
  margin-bottom: 6px;
}
.insales-section-products--recently .product_card--recently .product_card-price {
  font-size: 16px;
  line-height: 21px;
}
.insales-section-products--recently .product_card--recently .product_card-old_price {
  font-size: 11px;
  line-height: 15px;
}
.insales-section-products--recently .product_card--recently .product_card-title {
  margin-bottom: 0px;
  font-size: 13px;
  line-height: 17px;
}
.insales-section-products--recently .product_card--recently .product_card-title a {
  display: -webkit-box;
  height: auto;
  min-height: 51px;
  overflow: hidden;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
}
.insales-section-products--recently .product_card--recently .product_card-meta {
  min-height: 18px;
  margin: 8px 0px 10px;
}
.insales-section-products--recently .product_card--recently .product_card-rating {
  min-width: 0;
}
.insales-section-products--recently .product_card--recently .product_card-rating a {
  overflow: hidden;
  white-space: nowrap;
}
.insales-section-products--recently .product_card--recently .product_card-rating .rating-item {
  font-size: 12px;
  line-height: 16px;
}
.insales-section-products--recently .product_card--recently .product_card-rating .rating-link {
  gap: 3px;
  margin-left: 6px;
  font-size: 12px;
  line-height: 16px;
}
.insales-section-products--recently .product_card--recently .product_card-footer {
  margin-top: auto;
}
.insales-section-products--recently .product_card--recently .product_card-buyline {
  display: block;
}
.insales-section-products--recently .recently-rail-wrap {
  min-width: 0;
}
.insales-section-products--recently .products-rail--recently {
  grid-auto-columns: minmax(164px, 188px);
  gap: 12px;
  padding-bottom: 14px;
}
.insales-section-products--recently .recently-rail-controls {
  margin-top: 0px;
}
.insales-section-products--product-alternatives .product-alternatives-controls {
  margin-top: 2px;
}
@media (min-width: 768px) {
  .insales-section-products--recently .products-rail--recently {
    grid-auto-columns: minmax(206px, 240px);
    gap: 18px;
  }
  .insales-section-products--recently .product_card--recently .product_card-add {
    width: 100%;
  }
  .insales-section-products--recently .product_card--recently .product_card-add .button--empty--inverse,
  .insales-section-products--recently .product_card--recently .product_card-add .button--disabled {
    min-height: 36px;
    width: 100%;
  }
}

/* 6. Home page / Horizontal rails */
.products-rail,
.collections-rail {
  display: grid;
  grid-auto-flow: column;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x proximity;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.products-rail::-webkit-scrollbar,
.collections-rail::-webkit-scrollbar {
  display: none;
}

.products-rail {
  grid-auto-columns: minmax(178px, 220px);
  gap: 16px;
  padding: 4px 2px 18px;
  margin: 0px -2px;
}

.products-rail-item {
  min-width: 0;
  scroll-snap-align: start;
}

.collections--rail {
  margin-bottom: 28px;
}

.collections-rail {
  grid-auto-columns: minmax(132px, 168px);
  gap: 16px;
  padding: 4px 2px 18px;
  margin: 0px -2px;
}

.collections-rail-item {
  min-width: 0;
  scroll-snap-align: start;
}
.collections-rail-item .subcollection_card {
  height: 100%;
  margin-bottom: 0px;
  padding: 14px;
  border: 1px solid #e5eaf2;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0px 8px 20px rgba(24, 32, 56, 0.04);
}
.collections-rail-item .subcollection_card-thumb {
  margin-bottom: 10px;
}
.collections-rail-item .subcollection_card-title {
  font-size: 14px;
  line-height: 18px;
  font-weight: 600;
}

.home-rail-wrap {
  position: relative;
  min-width: 0;
}

.home-scroll-nav {
  position: absolute;
  z-index: 5;
  top: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  margin-top: -23px;
  padding: 0px;
  border: 1px solid rgba(180, 202, 236, 0.92);
  border-radius: 999px;
  color: #0a2f83;
  background: rgba(255, 255, 255, 0.97);
  box-shadow: 0 16px 34px rgba(18, 31, 53, 0.18);
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.2s, visibility 0.2s, border-color 0.2s, background-color 0.2s, transform 0.2s;
}
.home-scroll-nav:not(:disabled):hover {
  border-color: rgba(47, 118, 239, 0.38);
  background: #eef4ff;
  transform: translateY(-1px);
}
.home-scroll-nav:disabled {
  cursor: default;
  opacity: 0.34;
  pointer-events: none;
  transform: none;
}

.home-rail-nav--prev {
  left: -12px;
}
.home-rail-nav--next {
  right: -12px;
}

.home-rail-wrap.is-scrollable .home-rail-nav {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.home-rail-wrap.is-scrollable .home-rail-nav:disabled {
  opacity: 0.34;
  pointer-events: none;
}

@media (min-width: 768px) {
  .products-rail {
    grid-auto-columns: minmax(206px, 248px);
    gap: 20px;
    padding-bottom: 24px;
  }
  .collections-rail {
    grid-auto-columns: minmax(150px, 190px);
    gap: 18px;
    padding-bottom: 24px;
  }
}
.insales-section-home-categories {
  padding: 0px 0px 28px;
}

.home-categories-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
}

.home-categories-title {
  color: #111827;
  font-size: 24px;
  line-height: 30px;
  font-weight: 600;
}

.home-categories-track {
  position: relative;
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(164px, 196px);
  gap: 14px;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x proximity;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  padding: 2px 2px 16px;
  margin: 0px -2px;
}
.home-categories-track::-webkit-scrollbar {
  display: none;
}

.home-categories-card {
  display: grid;
  grid-template-rows: 132px auto;
  min-width: 0;
  min-height: 206px;
  padding: 12px;
  border: 1px solid #e5eaf2;
  border-radius: 22px;
  color: #111827;
  background: #fff;
  box-shadow: 0px 8px 20px rgba(24, 32, 56, 0.04);
  scroll-snap-align: start;
  transition: border-color 0.24s ease, box-shadow 0.24s ease, transform 0.24s ease, background-color 0.24s ease;
}
.home-categories-card:hover {
  color: #111827;
  border-color: #c7d9f6;
  background: linear-gradient(180deg, #fff 0%, #f7faff 100%);
  box-shadow: 0 18px 42px rgba(17, 57, 146, 0.11);
  transform: translateY(-4px);
}

.home-categories-card-media {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  padding: 4px;
  border-radius: 14px;
  background: transparent;
  overflow: hidden;
}
.home-categories-card-media picture {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.home-categories-card-image {
  display: block;
  width: auto !important;
  height: auto !important;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  transition: transform 0.28s ease, filter 0.28s ease;
}

.home-categories-card:hover .home-categories-card-image {
  transform: translateY(-3px) scale(1.045);
  filter: drop-shadow(0 12px 14px rgba(15, 23, 42, 0.12));
}

.home-categories-card-placeholder {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 58px;
  height: 58px;
  border-radius: 999px;
  color: #0a2f83;
  background: #eef4ff;
  font-size: 24px;
  line-height: 1;
  font-weight: 600;
}

.home-categories-card-body {
  display: grid;
  align-content: start;
  gap: 1px;
  min-width: 0;
  padding-top: 9px;
}

.home-categories-card-title {
  display: -webkit-box;
  min-height: 38px;
  overflow: hidden;
  color: #111827;
  font-size: 15px;
  line-height: 20px;
  font-weight: 600;
  text-align: center;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.home-categories-card-meta {
  color: #0a2f83;
  font-size: 15px;
  line-height: 18px;
  font-weight: 800;
  text-align: center;
  font-variant-numeric: tabular-nums;
}

@media (min-width: 1025px) {
  .home-categories-track {
    grid-auto-columns: minmax(166px, 192px);
  }
}
@media (max-width: 767px) {
  .home-scroll-nav {
    display: none !important;
  }
  .insales-section-home-categories {
    padding-bottom: 22px;
  }
  .home-categories-title {
    font-size: 21px;
    line-height: 27px;
  }
  .home-categories-track {
    grid-auto-columns: minmax(150px, 38vw);
    gap: 12px;
  }
  .home-categories-card {
    grid-template-rows: 112px auto;
    min-height: 184px;
    padding: 12px;
    border-radius: 14px;
  }
}
@media (max-width: 575px) {
  .insales-section-home-categories {
    padding-top: 16px;
  }
  .home-categories-head {
    margin-bottom: 10px;
  }
  .home-categories-track {
    grid-auto-columns: minmax(142px, 43vw);
    padding-bottom: 12px;
  }
  .home-categories-card {
    grid-template-rows: 104px auto;
    min-height: 174px;
  }
  .home-categories-card-title {
    min-height: 38px;
    font-size: 14px;
    line-height: 19px;
  }
  .home-categories-card-meta {
    font-size: 12px;
    line-height: 17px;
  }
}
.home-day {
  position: relative;
  min-width: 0;
  width: 100%;
  margin-top: 0px;
  overflow: visible;
}

.home-day-section-title {
  display: none;
}

.home-day-track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 100%;
  gap: 12px;
  height: 100%;
  min-width: 0;
  overflow-x: hidden;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.home-day-nav {
  z-index: 3;
  top: 104px;
  width: 42px;
  height: 42px;
  margin-top: -21px;
}
.home-day-nav--prev {
  left: -20px;
}
.home-day-nav--next {
  right: -20px;
}

.home-day.is-scrollable .home-day-nav {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.home-day.is-scrollable .home-day-nav:disabled {
  opacity: 0.34;
  pointer-events: none;
}

.home-day-track::-webkit-scrollbar {
  display: none;
  height: 0;
}

.home-day-track::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: #c9d5e6;
}

.home-day-dots {
  display: none;
}

.home-day-card {
  min-width: 0;
  border: 1px solid #e5eaf2;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0px 8px 20px rgba(24, 32, 56, 0.04);
  overflow: hidden;
}

@media (min-width: 901px) {
  .home-day-dots {
    display: none !important;
  }
}
.home-day-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto auto auto auto auto;
  align-items: start;
  align-content: start;
  gap: 8px;
  height: 100%;
  padding: 12px;
  scroll-snap-align: start;
}

.home-day-header {
  position: absolute;
  z-index: 2;
  top: 16px;
  left: 16px;
  right: 16px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 6px;
  pointer-events: none;
}

.home-day-eyebrow,
.home-day-status {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 10px;
  border-radius: 999px;
  font-size: 12px;
  line-height: 16px;
  font-weight: 600;
}

.home-day-eyebrow {
  color: #fff;
  background: #0a2f83;
}

.home-day-status {
  color: #167a2e;
  background: #effaf2;
}
.home-day-status--available {
  display: none;
}
.home-day-status--soldout {
  color: #ef3340;
  background: #fff1f3;
}

.home-day-image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 132px;
  padding: 30px 10px 10px;
  border-radius: 14px;
  background: #f5f7fb;
}
.home-day-image picture,
.home-day-image img {
  display: block;
  max-width: 100%;
  max-height: 132px;
  width: auto;
  height: auto;
  object-fit: contain;
}

.home-day-title {
  color: #111827;
  font-size: 14px;
  line-height: 17px;
  font-weight: 600;
  display: -webkit-box;
  min-height: 42px;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.home-day-price {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: start;
  gap: 4px 7px;
  color: #111827;
}

.home-day-price-current {
  font-size: 21px;
  line-height: 25px;
  font-weight: 600;
  white-space: nowrap;
}

.home-day-price-old {
  flex: 0 0 auto;
  color: #9ca3af;
  font-size: 14px;
  line-height: 18px;
  text-decoration: line-through;
  white-space: nowrap;
}

.home-day-discount {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 10px;
  border-radius: 999px;
  color: #ef3340;
  background: #fff1f3;
  font-size: 12px;
  line-height: 16px;
  font-weight: 600;
  white-space: nowrap;
}

.home-day-header .home-day-discount {
  position: static;
  margin-left: auto;
}

.home-day-price .home-day-discount {
  position: absolute;
  z-index: 2;
  top: 16px;
  left: auto;
  right: 16px;
}

.home-day-meta {
  min-height: 19px;
  margin: 0px;
}

.home-day-rating {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  min-width: 0;
}

.home-day-rating .rating-item {
  color: #ffad1f;
  font-size: 13px;
  line-height: 1;
}

.home-day-rating .rating-item--unactive {
  color: #c7cfda;
}

.home-day-rating .rating-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-left: 5px;
  color: #9ca3af;
  font-size: 12px;
  line-height: 16px;
}

.home-day-action {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
  margin-top: 4px;
  padding-top: 2px;
}

.home-day-action-icons {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}
.home-day-action-icons .button {
  width: 36px;
  min-width: 36px;
  height: 36px;
  min-height: 36px;
  padding: 0px;
  border: 1px solid #e5eaf2;
  border-radius: 999px;
  color: #0a2f83;
  background: #fff;
}

.home-day-action-cart {
  min-width: 0;
  margin: 0px;
}

.home-day-action-cart-wrap {
  min-width: 0;
}

.home-day-cart-button {
  width: auto;
  min-width: 112px;
  max-width: none;
  min-height: 36px;
  padding: 0px 14px;
  border-radius: 999px;
  background: #0a2f83;
  color: #fff;
  box-shadow: 0px 8px 20px rgba(47, 125, 240, 0.2);
}
.home-day-cart-button:hover {
  background: #061b55;
  color: #fff;
}
.home-day-cart-button .far,
.home-day-cart-button .fa,
.home-day-cart-button svg,
.home-day-cart-button [class*=fa-] {
  line-height: 1;
}

@media (max-width: 1024px) and (min-width: 901px) {
  .home-hero--with-day {
    grid-template-columns: minmax(0, 1.7fr) minmax(280px, 0.62fr);
  }
  .home-hero-slide {
    min-height: 280px;
    height: clamp(280px, 28vw, 320px);
  }
  .home-day-card {
    padding: 12px;
  }
  .home-day-image {
    min-height: 142px;
    height: 142px;
  }
  .home-day-image img {
    max-height: 116px;
  }
}
@media (min-width: 901px) {
  .home-hero--with-day {
    min-height: clamp(380px, 24vw, 430px);
  }
  .home-day {
    box-sizing: border-box;
    display: grid;
    height: 100%;
    padding: 12px 22px;
    border: 1px solid #e5eaf2;
    border-radius: 22px;
    background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
    box-shadow: 0 12px 30px rgba(17, 24, 39, 0.06);
    align-self: stretch;
  }
  .home-day-track {
    justify-items: stretch;
    height: 100%;
  }
  .home-day-card {
    width: 100%;
    max-width: none;
    grid-template-rows: 148px auto auto minmax(76px, 1fr) auto;
    align-content: stretch;
    min-height: 100%;
  }
  .home-day-image {
    min-height: 148px;
    height: 148px;
  }
  .home-day-image picture,
  .home-day-image img {
    max-height: 122px;
  }
  .home-day-title {
    min-height: 76px;
    line-clamp: 4;
    -webkit-line-clamp: 4;
  }
  .home-day-action {
    grid-row: 5;
    align-self: end;
  }
  .home-day-nav {
    top: 50%;
    margin-top: -21px;
  }
  .home-day-nav--prev {
    left: -22px;
  }
  .home-day-nav--next {
    right: -22px;
  }
  .home-hero--with-day .home-hero-slider > div,
  .home-hero--with-day .home-hero-slide {
    height: 100%;
    min-height: 100%;
  }
}
@media (max-width: 900px) {
  .insales-section-home_hero {
    padding-bottom: 14px;
  }
  .home-hero {
    gap: 16px;
  }
  .home-hero--with-day,
  .home-hero--day-only {
    grid-template-columns: minmax(0, 1fr);
  }
  .home-day {
    max-width: none;
    height: auto;
    padding: 14px 10px 16px;
    border: 1px solid #e5eaf2;
    border-radius: 22px;
    background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
    box-shadow: 0 12px 30px rgba(17, 24, 39, 0.06);
    overflow: visible;
  }
  .home-day-section-title {
    display: block;
    margin: 0px 2px 12px;
    color: #111827;
    font-size: 20px;
    line-height: 25px;
    font-weight: 600;
  }
  .home-day-track {
    grid-auto-columns: minmax(182px, 44vw);
    align-items: stretch;
    height: auto;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .home-day-dots {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    width: 100%;
    min-height: 18px;
    margin: 16px 0 0;
    line-height: 0;
    pointer-events: auto;
  }
  .home-day-dots:empty {
    display: none;
  }
  .home-day-dots.is-visible {
    display: flex;
  }
  .home-day-dot {
    width: 7px;
    height: 7px;
    padding: 0px;
    border: 0px;
    border-radius: 999px;
    background: #d8e2f2;
    box-shadow: 0 0 0 1px rgba(17, 24, 39, 0.05);
    transition: width 0.2s, background-color 0.2s, box-shadow 0.2s;
  }
  .home-day-dot.is-active {
    width: 26px;
    background: #0a2f83;
    box-shadow: 0 7px 16px rgba(47, 125, 240, 0.22);
  }
  .home-day-card {
    position: relative;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(150px, auto) auto auto minmax(68px, auto) auto;
    align-items: start;
    align-content: start;
    gap: 7px;
    height: 100%;
    min-height: 356px;
    max-height: none;
    padding: 10px;
    border-radius: 18px;
  }
  .home-day-header,
  .home-day-action {
    grid-column: 1/-1;
  }
  .home-day-action {
    margin-top: 4px;
    padding-top: 4px;
  }
  .home-day-header {
    position: absolute;
    z-index: 2;
    top: 14px;
    left: 14px;
    right: auto;
    display: flex;
    grid-column: auto;
    gap: 6px;
    pointer-events: none;
  }
  .home-day-eyebrow,
  .home-day-status {
    min-height: 22px;
    padding: 4px 8px;
    font-size: 11px;
    line-height: 14px;
  }
  .home-day-eyebrow {
    color: #fff;
    background: #0a2f83;
  }
  .home-day-status {
    color: #167a2e;
    background: #effaf2;
  }
  .home-day-action {
    gap: 8px;
    margin-top: 4px;
    padding-top: 4px;
  }
  .home-day-cart-button {
    width: 38px;
    min-width: 38px;
    max-width: 38px;
    min-height: 38px;
    padding: 0px;
    font-size: 0px;
    line-height: 0;
  }
  .home-day-cart-button .home-day-cart-text,
  .home-day-cart-button span:not(:first-child) {
    display: none !important;
  }
  .home-day-cart-button .far,
  .home-day-cart-button .fa,
  .home-day-cart-button svg,
  .home-day-cart-button [class*=fa-] {
    font-size: 16px;
    line-height: 1;
  }
  .home-day-image {
    grid-row: auto;
    width: 100%;
    min-height: 150px;
    padding: 32px 8px 8px;
    border-radius: 14px;
  }
  .home-day-image picture,
  .home-day-image img {
    max-height: 128px;
  }
  .home-day-title {
    font-size: 13px;
    line-height: 17px;
    display: -webkit-box;
    min-height: 68px;
    line-clamp: 4;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .home-day-price {
    grid-column: auto;
    display: flex;
    gap: 3px 5px;
  }
  .home-day-price-current {
    font-size: 18px;
    line-height: 22px;
  }
  .home-day-price-old {
    font-size: 11px;
    line-height: 15px;
  }
  .home-day-discount {
    min-height: 22px;
    padding: 4px 8px;
    font-size: 11px;
    line-height: 14px;
  }
  .home-day-price .home-day-discount {
    top: 14px;
    left: auto;
    right: 14px;
  }
  .home-day-meta {
    min-height: 18px;
  }
  .home-day-rating .rating-item {
    font-size: 12px;
  }
  .home-day-action-icons {
    gap: 6px;
  }
  .home-day-action-icons .button {
    width: 34px;
    min-width: 34px;
    height: 34px;
    min-height: 34px;
  }
}
@media (max-width: 575px) {
  .insales-section-home_hero {
    padding: 12px 0px 14px;
  }
  .home-hero-slide {
    min-height: 192px;
    height: clamp(192px, 46vw, 214px);
    background: #fff;
  }
  .home-hero-slide:before {
    display: none !important;
  }
  .home-hero-slide:after {
    content: "";
    position: absolute;
    z-index: 1;
    inset: 0;
    display: block !important;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.04) 52%, rgba(255, 255, 255, 0.28) 74%, rgba(255, 255, 255, 0.5) 100%);
    pointer-events: none;
  }
  .home-hero-slide--text_left:after {
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.99) 0%, rgba(255, 255, 255, 0.96) 34%, rgba(255, 255, 255, 0.16) 58%, rgba(255, 255, 255, 0) 100%);
  }
  .home-hero-slide--text_center:after {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.88) 100%);
  }
  .home-hero-slide--dark:after {
    background: linear-gradient(90deg, rgba(16, 24, 39, 0) 0%, rgba(16, 24, 39, 0.18) 42%, rgba(16, 24, 39, 0.74) 70%, rgba(16, 24, 39, 0.82) 100%);
  }
  .home-hero-slide--dark.home-hero-slide--text_left:after {
    background: linear-gradient(90deg, rgba(16, 24, 39, 0.82) 0%, rgba(16, 24, 39, 0.74) 30%, rgba(16, 24, 39, 0.18) 58%, rgba(16, 24, 39, 0) 100%);
  }
  .home-hero-slide--dark.home-hero-slide--text_center:after {
    background: linear-gradient(180deg, rgba(16, 24, 39, 0) 0%, rgba(16, 24, 39, 0.76) 100%);
  }
  .home-hero-slide-media {
    position: absolute;
    z-index: 0;
    inset: 0;
    min-height: 0;
    max-height: none;
    overflow: hidden;
    border-radius: 0;
    background: transparent;
  }
  .home-hero-slide-media picture,
  .home-hero-slide-media img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: none;
    object-fit: cover;
  }
  .home-hero-slide--text_right .home-hero-slide-media img {
    object-position: left top;
    transform: none;
  }
  .home-hero-slide--text_left .home-hero-slide-media img {
    object-position: center top;
  }
  .home-hero-slide--text_center .home-hero-slide-media img {
    object-position: center top;
  }
  .home-day-nav {
    display: none;
  }
  .home-hero-slide-content,
  .home-hero-slide--text_center .home-hero-slide-content,
  .home-hero-slide--text_right .home-hero-slide-content,
  .home-hero-slide--text_left .home-hero-slide-content {
    position: absolute;
    z-index: 2;
    top: 50%;
    right: 12px;
    left: 61%;
    bottom: auto;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
    align-items: flex-start;
    text-align: left;
    gap: 9px;
    transform: translateY(-50%);
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    color: #101827;
  }
  .home-hero-slide--text_right .home-hero-slide-content {
    top: 46%;
    left: 58%;
    right: 14px;
    max-width: 40%;
  }
  .home-hero-slide--text_left .home-hero-slide-content {
    left: 16px;
    right: auto;
    max-width: 48%;
  }
  .home-hero-slide--text_center .home-hero-slide-content {
    left: 16px;
    right: 16px;
    top: auto;
    bottom: 16px;
    width: auto;
    transform: none;
  }
  .home-hero-slide--dark .home-hero-slide-content {
    color: #fff;
  }
  .home-hero-slide-badge {
    display: inline-flex;
    min-height: 20px;
    padding: 3px 7px;
    font-size: 10px;
    line-height: 14px;
  }
  .home-hero-slide-title {
    max-width: 100%;
    display: block;
    overflow: visible;
    font-size: clamp(16px, 4.1vw, 18px);
    line-height: 1.06;
    color: currentColor !important;
  }
  .home-hero-slide-subtitle {
    max-width: 100%;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    overflow: hidden;
    font-size: 10.5px;
    line-height: 1.36;
    color: rgba(75, 85, 99, 0.95) !important;
  }
  .home-hero-slide--dark .home-hero-slide-subtitle {
    color: rgba(255, 255, 255, 0.84) !important;
  }
  .home-hero-slide-button {
    min-height: 29px;
    padding: 6px 10px;
    font-size: 11px;
    line-height: 14px;
  }
  .home-hero-slider {
    border-radius: 18px;
  }
  .home-hero-slider .owl-dots {
    top: 14px;
    bottom: auto;
    left: 18px;
    z-index: 3;
    transform: none;
  }
  .home-hero-nav {
    display: none;
  }
}
@media (max-width: 390px) {
  .home-hero-slide-content,
  .home-hero-slide--text_right .home-hero-slide-content,
  .home-hero-slide--text_left .home-hero-slide-content {
    width: auto;
    left: 59%;
    right: 10px;
    gap: 7px;
  }
  .home-hero-slide-subtitle {
    display: -webkit-box;
    font-size: 10px;
    line-height: 1.28;
    -webkit-line-clamp: 2;
    line-clamp: 2;
  }
  .home-hero-slide-badge {
    min-height: 18px;
    padding: 2px 6px;
    font-size: 9px;
    line-height: 13px;
  }
}
/* 6. Home page / Category picker widget */
.insales-section-home-category-picker {
  padding: 10px 0px 34px;
}

.home-category-picker {
  position: relative;
  padding: 24px 28px 20px;
  border: 1px solid #e5eaf2;
  border-radius: 28px;
  background: linear-gradient(180deg, #fff 0%, #f8fbff 100%);
  box-shadow: 0 18px 46px rgba(15, 23, 42, 0.06);
  overflow: hidden;
}

.home-category-picker-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 18px;
}

.home-category-picker-title {
  color: #111827;
  font-size: 30px;
  line-height: 36px;
  font-weight: 600;
}

.home-category-picker-track {
  display: flex;
  gap: 14px;
  min-height: 334px;
  margin: 0px -4px;
  padding: 4px 4px 14px;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x proximity;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.home-category-picker-track::-webkit-scrollbar {
  display: none;
}

.home-category-picker-card {
  display: grid;
  grid-template-rows: 160px 1fr;
  flex: 0 0 170px;
  gap: 14px;
  min-width: 0;
  min-height: 314px;
  padding: 14px;
  border: 1px solid #e5eaf2;
  border-radius: 22px;
  background: #fff;
  color: #111827;
  box-shadow: 0 12px 34px rgba(15, 23, 42, 0.06);
  scroll-snap-align: start;
  transition: flex-basis 0.58s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.28s ease, box-shadow 0.28s ease, transform 0.28s ease, background-color 0.38s ease;
}
.home-category-picker-card:hover {
  color: #111827;
  border-color: #c7d9f6;
  box-shadow: 0px 14px 34px rgba(24, 32, 56, 0.05);
  transform: translateY(-2px);
}
.home-category-picker-card.is-active {
  flex-basis: min(520px, 42vw);
  grid-template-columns: minmax(180px, 46%) minmax(190px, 1fr);
  grid-template-rows: minmax(260px, 1fr);
  align-items: stretch;
  border-color: rgba(17, 57, 146, 0.24);
  background: linear-gradient(135deg, #fff 0%, #f3f7ff 100%);
}

.home-category-picker-card-media {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  overflow: visible;
  border-radius: 18px;
  background: #f4f7fb;
  transition: transform 0.58s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.42s ease;
}
.home-category-picker-card-media picture {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.home-category-picker-card-image {
  display: block;
  width: auto !important;
  height: auto !important;
  max-width: 94%;
  max-height: 94%;
  object-fit: contain;
  transition: transform 0.58s cubic-bezier(0.22, 1, 0.36, 1), filter 0.38s ease, opacity 0.42s ease;
}

.home-category-picker-card-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  border-radius: 18px;
  color: #0a2f83;
  font-size: 26px;
  line-height: 1;
  font-weight: 800;
  background: #eef4ff;
}

.home-category-picker-card-content {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-width: 0;
  overflow: hidden;
}

.home-category-picker-card-title {
  display: block;
  color: #111827;
  font-size: 17px;
  line-height: 22px;
  font-weight: 600;
}

.home-category-picker-card-description {
  display: none;
  margin-top: 10px;
  color: #6b7280;
  font-size: 14px;
  line-height: 20px;
}

.home-category-picker-card.is-active .home-category-picker-card-description {
  display: block;
}

.home-category-picker-card-price {
  display: block;
  margin-top: auto;
  padding-top: 18px;
  color: #0a2f83;
  font-size: 17px;
  line-height: 21px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}

.home-category-picker-card.is-active .home-category-picker-card-media {
  transform: translateX(-6px);
}

.home-category-picker-card.is-active .home-category-picker-card-image {
  max-width: 90%;
  max-height: 90%;
  transform: translateX(-8px) scale(0.98);
  filter: drop-shadow(0 18px 18px rgba(15, 23, 42, 0.14));
}

.home-category-picker-card.is-active .home-category-picker-card-content {
  justify-content: center;
}

.home-category-picker-card.is-active .home-category-picker-card-title {
  animation: categoryPickerTitleIn 0.54s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.home-category-picker-card.is-active .home-category-picker-card-price {
  margin-top: 18px;
  padding-top: 0px;
  animation: categoryPickerPriceIn 0.54s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.home-category-picker-card.is-leaving .home-category-picker-card-media {
  opacity: 0.58;
  transform: translateX(-24px);
}

.home-category-picker-card.is-leaving .home-category-picker-card-image {
  transform: translateX(-34px) scale(0.94);
}

.home-category-picker-card.is-leaving .home-category-picker-card-title {
  animation: categoryPickerTitleOut 0.34s cubic-bezier(0.4, 0, 0.2, 1) both;
}

.home-category-picker-card.is-leaving .home-category-picker-card-price {
  animation: categoryPickerPriceOut 0.34s cubic-bezier(0.4, 0, 0.2, 1) both;
}

.home-category-picker-card.is-entering .home-category-picker-card-media {
  animation: categoryPickerImageIn 0.56s cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes categoryPickerImageIn {
  from {
    opacity: 0.62;
    transform: translateX(20px);
  }
  to {
    opacity: 1;
    transform: translateX(-6px);
  }
}
@keyframes categoryPickerTitleIn {
  from {
    opacity: 0;
    transform: translateY(-14px);
  }
  to {
    opacity: 1;
    transform: translateY(0px);
  }
}
@keyframes categoryPickerPriceIn {
  from {
    opacity: 0;
    transform: translateY(14px);
  }
  to {
    opacity: 1;
    transform: translateY(0px);
  }
}
@keyframes categoryPickerTitleOut {
  to {
    opacity: 0;
    transform: translateY(-12px);
  }
}
@keyframes categoryPickerPriceOut {
  to {
    opacity: 0;
    transform: translateY(12px);
  }
}
.home-category-picker-controls {
  margin-top: 0px;
}

@media (max-width: 767px) {
  .insales-section-home-category-picker {
    padding: 8px 0px 28px;
  }
  .home-category-picker-title {
    font-size: 24px;
    line-height: 30px;
  }
  .home-category-picker {
    padding: 20px 14px 18px;
    border-radius: 26px;
  }
  .home-category-picker-head {
    margin-bottom: 16px;
  }
  .home-category-picker-track {
    gap: 12px;
    min-height: 378px;
    margin: 0px -14px;
    padding: 0px 14px 14px;
    scroll-snap-type: x mandatory;
  }
  .home-category-picker-card {
    flex: 0 0 78vw;
    grid-template-rows: 190px 1fr;
    min-height: 354px;
    padding: 12px;
    scroll-snap-align: center;
  }
  .home-category-picker-card.is-active {
    flex-basis: 78vw;
    grid-template-columns: minmax(118px, 46%) minmax(0, 1fr);
    grid-template-rows: minmax(300px, 1fr);
    gap: 10px;
  }
  .home-category-picker-card.is-active .home-category-picker-card-media {
    min-height: 0;
    transform: translateX(-4px);
  }
  .home-category-picker-card.is-active .home-category-picker-card-image {
    max-width: 92%;
    max-height: 92%;
    transform: translateX(-6px) scale(0.96);
  }
  .home-category-picker-card-title {
    font-size: 18px;
    line-height: 23px;
  }
  .home-category-picker-card.is-active .home-category-picker-card-description {
    display: block;
  }
  .home-category-picker-card-price {
    padding-top: 14px;
  }
}
/* 6. Home page / Featured progress carousel */
.home-featured-carousel {
  position: relative;
  min-height: 720px;
  border: 1px solid rgba(180, 202, 236, 0.72);
  border-radius: 34px;
  background: #fff;
  box-shadow: 0 24px 60px rgba(17, 57, 146, 0.1);
  overflow: hidden;
  isolation: isolate;
}

.home-featured-carousel + .home-featured-carousel {
  margin-top: 28px;
}

.home-featured-carousel-bg {
  position: absolute;
  inset: 0px;
  z-index: 0;
  opacity: 0;
  transform: scale(1.05);
  transition: opacity 720ms cubic-bezier(0.22, 0.74, 0.46, 0.97), transform 900ms cubic-bezier(0.22, 0.74, 0.46, 0.97);
  pointer-events: none;
}
.home-featured-carousel-bg::before {
  content: "";
  position: absolute;
  inset: 0px;
  background: radial-gradient(circle at 72% 26%, rgba(255, 255, 255, 0.38), transparent 26%), radial-gradient(circle at 18% 84%, rgba(255, 255, 255, 0.24), transparent 28%), linear-gradient(145deg, var(--from), var(--to));
}
.home-featured-carousel-bg::after {
  content: "";
  position: absolute;
  inset: 0px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.52), rgba(255, 255, 255, 0.12) 38%, rgba(255, 255, 255, 0.7)), radial-gradient(circle at 50% 48%, transparent 0 24%, rgba(255, 255, 255, 0.46) 58%, rgba(244, 247, 251, 0.94) 100%);
}
.home-featured-carousel-bg.is-active {
  opacity: 1;
  transform: scale(1);
}

.home-featured-carousel-inner {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-rows: auto 1fr auto;
  min-height: 720px;
  padding: 30px 34px 34px;
}

.home-featured-carousel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
}

.home-featured-carousel-title {
  display: block;
  color: #111827;
  font-size: clamp(34px, 4.5vw, 58px);
  line-height: 0.98;
  font-weight: 900;
}
.home-featured-carousel-title:hover {
  color: #0a2f83;
}

.home-featured-carousel-count {
  min-width: 96px;
  padding-top: 6px;
  color: rgba(var(--featured-color, 84, 139, 255), 0.9);
  text-align: right;
  font-size: 15px;
  line-height: 20px;
  font-weight: 900;
  font-variant-numeric: tabular-nums;
}

.home-featured-carousel-stage {
  position: relative;
  display: grid;
  align-items: center;
  min-height: 548px;
  overflow: visible;
  perspective: 1200px;
  touch-action: pan-y;
  user-select: none;
  cursor: grab;
}
.home-featured-carousel-stage:active {
  cursor: grabbing;
}

.home-featured-carousel-slide {
  --offset: 0;
  --abs: 0;
  --mx: 0;
  --my: 0;
  --speed: 760ms;
  position: absolute;
  left: 50%;
  top: 50%;
  display: grid;
  place-items: center;
  width: min(430px, 76vw);
  height: 530px;
  opacity: calc(1 - var(--abs) * 0.42);
  z-index: 1;
  pointer-events: auto;
  transform: translate3d(calc(-50% + var(--offset) * 365px), -50%, 0) rotateY(calc(var(--offset) * -18deg)) scale(calc(1 - var(--abs) * 0.14));
  transition: transform var(--speed) cubic-bezier(0.22, 0.74, 0.46, 0.97), opacity var(--speed) cubic-bezier(0.22, 0.74, 0.46, 0.97);
}
.home-featured-carousel-slide.is-active {
  z-index: 5;
}

.home-featured-carousel-slide:not(.is-active) {
  cursor: pointer;
}
.home-featured-carousel-slide:not(.is-active) a,
.home-featured-carousel-slide:not(.is-active) button {
  pointer-events: none;
}

.home-featured-carousel-card {
  position: relative;
  width: 100%;
  height: 100%;
  padding: 0px;
  border: 0px;
  border-radius: 30px;
  background: radial-gradient(circle at calc(50% + var(--mx) * 12px) calc(28% + var(--my) * 10px), rgba(255, 255, 255, 0.86), transparent 34%), linear-gradient(160deg, rgba(255, 255, 255, 0.94), rgba(255, 255, 255, 0.62));
  box-shadow: 0 34px 70px rgba(17, 57, 146, 0.16);
  overflow: visible;
  transform: translate3d(calc(var(--mx) * 8px), calc(var(--my) * 6px), 0);
  transition: transform 180ms ease, box-shadow 280ms ease;
  cursor: pointer;
}
.home-featured-carousel-card::before {
  content: "";
  position: absolute;
  inset: 0px;
  border: 1px solid rgba(255, 255, 255, 0.72);
  border-radius: inherit;
  pointer-events: none;
}
.home-featured-carousel-card:hover {
  box-shadow: 0 42px 86px rgba(17, 57, 146, 0.2);
}

.home-featured-carousel-product {
  position: absolute;
  left: 50%;
  top: 28%;
  z-index: 4;
  display: grid;
  place-items: center;
  width: 120%;
  height: 258px;
  transform: translate3d(calc(-50% + var(--offset) * -92px + var(--mx) * 10px), calc(-50% + var(--my) * 8px), 0) rotate(calc(var(--offset) * -10deg));
  transition: transform var(--speed) cubic-bezier(0.22, 0.74, 0.46, 0.97);
}
.home-featured-carousel-product picture {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
}
.home-featured-carousel-product .home-featured-card-img {
  display: block;
  width: auto !important;
  height: auto !important;
  max-width: 86%;
  max-height: 258px;
  object-fit: contain;
  filter: drop-shadow(0 26px 18px rgba(17, 24, 39, 0.18));
  pointer-events: none;
}

.home-featured-carousel-shadow {
  position: absolute;
  left: 50%;
  top: 53%;
  z-index: 1;
  width: 72px;
  height: 22px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.28);
  filter: blur(18px);
  opacity: calc(0.86 - var(--abs) * 0.38);
  transform: translate3d(calc(-50% + var(--offset) * -44px), 0, 0) scale(calc(1 - var(--abs) * 0.24));
  transition: transform var(--speed) cubic-bezier(0.22, 0.74, 0.46, 0.97), opacity var(--speed) cubic-bezier(0.22, 0.74, 0.46, 0.97);
}

.home-featured-carousel-info {
  position: absolute;
  left: 0px;
  right: 0px;
  bottom: 0px;
  z-index: 5;
  min-height: 220px;
  padding: 28px 86px 32px 28px;
  border-radius: 0px 0px 30px 30px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.78) 22%, rgba(255, 255, 255, 0.9) 100%);
  backdrop-filter: blur(8px);
}

.home-featured-carousel .text-mask {
  overflow: hidden;
}

.home-featured-carousel .text-mask > span {
  display: inline-flex;
  transform: translate3d(0, calc(var(--abs) * 54px), 0);
  transition: transform var(--speed) cubic-bezier(0.22, 0.74, 0.46, 0.97);
}

.home-featured-carousel-kicker {
  display: block;
  color: rgba(17, 24, 39, 0.46);
  font-size: 12px;
  line-height: 15px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.home-featured-carousel-name {
  display: block;
  margin-top: 8px;
  overflow: hidden;
  color: #111827;
  font-size: 18px;
  line-height: 1.16;
  font-weight: 900;
  max-height: 83.52px;
  text-wrap: balance;
}
.home-featured-carousel-name:hover {
  color: #0a2f83;
}

.home-featured-carousel-name.text-mask > span {
  display: -webkit-box;
  overflow: hidden;
  line-clamp: 4;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}

.home-featured-carousel-price {
  display: block;
  margin-top: 12px;
  color: rgb(var(--featured-color, 84, 139, 255));
  font-size: 19px;
  line-height: 22px;
  font-weight: 900;
  font-variant-numeric: tabular-nums;
}

.home-featured-carousel-old-price {
  margin-right: 8px;
  color: rgba(17, 24, 39, 0.36);
  font-size: 15px;
  text-decoration: line-through;
}

.home-featured-carousel-button {
  position: absolute;
  right: 22px;
  bottom: 28px;
  z-index: 8;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  padding: 0px;
  border: 1px solid #0a2f83;
  border-radius: 50%;
  background: #0a2f83;
  color: #fff;
  box-shadow: 0 12px 24px rgba(17, 57, 146, 0.2);
  cursor: pointer;
  pointer-events: auto;
  transition: background-color 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease;
}
.home-featured-carousel-button:hover {
  background: #06225f;
  border-color: #06225f;
  color: #fff;
  box-shadow: 0 16px 30px rgba(17, 57, 146, 0.28);
  transform: translateY(-2px);
}
.home-featured-carousel-button .far {
  display: block;
  font-size: 18px;
  line-height: 1;
}

.home-featured-carousel-button--choose {
  width: auto;
  min-width: 112px;
  padding: 0px 18px;
  border-radius: 999px;
  font-size: 14px;
  line-height: 18px;
  font-weight: 800;
}

.home-featured-carousel-controls {
  display: grid;
  grid-template-columns: 160px 1fr 160px;
  gap: 18px;
  align-items: center;
  margin-top: 8px;
}

.home-featured-carousel-nav {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 9px;
  padding: 0px;
  border: 0px;
  background: transparent;
  color: #111827;
  cursor: pointer;
  font-size: 13px;
  line-height: 18px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.home-featured-carousel-nav::before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: rgba(16, 24, 40, 0.28);
  transition: background-color 0.24s ease;
}
.home-featured-carousel-nav span {
  transition: transform 0.26s cubic-bezier(0.22, 0.74, 0.46, 0.97), color 0.26s ease;
}
.home-featured-carousel-nav:hover::before {
  background: rgb(var(--featured-color, 84, 139, 255));
}
.home-featured-carousel-nav:hover span {
  color: rgb(var(--featured-color, 84, 139, 255));
}

.home-featured-carousel-nav--prev {
  align-items: flex-end;
}
.home-featured-carousel-nav--prev:hover span {
  transform: translateX(-10px);
}

.home-featured-carousel-nav--next {
  align-items: flex-start;
  justify-self: end;
}
.home-featured-carousel-nav--next:hover span {
  transform: translateX(10px);
}

.home-featured-carousel-dots {
  display: flex;
  justify-content: center;
  gap: 6px;
}

.home-featured-carousel-dot {
  width: 18px;
  height: 6px;
  padding: 0px;
  border: 0px;
  border-radius: 999px;
  background: #d4dce8;
  cursor: pointer;
  overflow: hidden;
  transition: width 0.2s, background-color 0.2s;
}
.home-featured-carousel-dot span {
  display: none;
}
.home-featured-carousel-dot.is-active {
  width: 32px;
  background: #0a2f83;
}

.insales-section-home-featured-picks {
  padding: 12px 0px 34px;
}

@media (max-width: 767px) {
  .home-featured-carousel {
    min-height: clamp(560px, 100svh - 20px, 660px);
    border-radius: 28px;
  }
  .home-featured-carousel-inner {
    min-height: clamp(560px, 100svh - 20px, 660px);
    padding: 18px 14px 18px;
  }
  .home-featured-carousel-head {
    flex-direction: column;
    gap: 10px;
  }
  .home-featured-carousel-title {
    font-size: clamp(34px, 10vw, 44px);
    line-height: 0.96;
  }
  .home-featured-carousel-count {
    min-width: 0px;
    text-align: left;
    padding-top: 0px;
    font-size: 20px;
    line-height: 24px;
  }
  .home-featured-carousel-stage {
    min-height: 408px;
  }
  .home-featured-carousel-slide {
    width: min(340px, 88vw);
    height: 392px;
    transform: translate3d(calc(-50% + var(--offset) * 270px), -50%, 0) rotateY(calc(var(--offset) * -14deg)) scale(calc(1 - var(--abs) * 0.12));
  }
  .home-featured-carousel-product {
    top: 25%;
    width: 116%;
    height: 186px;
  }
  .home-featured-carousel-product .home-featured-card-img {
    max-height: 186px;
  }
  .home-featured-carousel-info {
    min-height: 188px;
    padding: 20px 70px 24px 22px;
  }
  .home-featured-carousel-name {
    font-size: 17px;
    line-height: 1.15;
    max-height: 97.75px;
  }
  .home-featured-carousel-name.text-mask > span {
    line-clamp: 5;
    -webkit-line-clamp: 5;
  }
  .home-featured-carousel-price {
    margin-top: 8px;
    font-size: 20px;
    line-height: 24px;
  }
  .home-featured-carousel-controls {
    grid-template-columns: 1fr;
    margin-top: 0px;
  }
  .home-featured-carousel-nav {
    display: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .home-featured-carousel-bg,
  .home-featured-carousel-slide,
  .home-featured-carousel-card,
  .home-featured-carousel-product,
  .home-featured-carousel-shadow,
  .home-featured-carousel .text-mask > span,
  .home-featured-carousel-nav span,
  .home-featured-carousel-dot span {
    transition: none !important;
  }
}
.insales-section-home_hero {
  padding: 14px 0px 20px;
}

@media (min-width: 1025px) {
  .insales-section-home_hero {
    padding-top: 30px;
    padding-bottom: 26px;
  }
}
.home-hero {
  display: grid;
  gap: 24px;
  align-items: stretch;
  min-width: 0;
}

.home-hero--with-day {
  grid-template-columns: minmax(0, 2fr) minmax(300px, 0.58fr);
}

.home-hero--day-only {
  grid-template-columns: minmax(0, 420px);
}

.home-hero-slider {
  min-width: 0;
  border: 1px solid #e5eaf2;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0px 8px 20px rgba(24, 32, 56, 0.04);
  overflow: hidden;
}

.home-hero-slider {
  position: relative;
  min-height: 100%;
}
.home-hero-slider .owl-carousel {
  height: 100%;
  padding-bottom: 0px;
}
.home-hero-slider .owl-stage-outer,
.home-hero-slider .owl-stage,
.home-hero-slider .owl-item {
  height: 100%;
}
.home-hero-slider .owl-dots {
  position: absolute;
  left: 24px;
  bottom: 18px;
  display: flex;
  gap: 8px;
  width: auto;
  line-height: 0;
}
.home-hero-slider .owl-dot {
  width: 8px;
  height: 8px;
  margin: 0px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.72);
  box-shadow: 0 0 0 1px rgba(17, 24, 39, 0.08);
  transition: width 0.2s, background-color 0.2s;
}
.home-hero-slider .owl-dot.active {
  width: 28px;
  background: #0a2f83;
}

.home-hero-nav {
  z-index: 4;
  opacity: 0.96;
  visibility: visible;
  pointer-events: auto;
}
.home-hero-nav--prev {
  left: 8px;
}
.home-hero-nav--next {
  right: 8px;
}

.home-hero-slider:hover .home-hero-nav,
.home-hero-nav:focus {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.home-hero-slide {
  position: relative;
  display: block;
  min-height: 300px;
  height: clamp(280px, 23vw, 350px);
  color: #111827;
}
.home-hero-slide:before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  display: none;
  pointer-events: none;
}
.home-hero-slide--dark {
  color: #fff;
}
.home-hero-slide--dark:before {
  display: block;
  background: linear-gradient(90deg, rgba(16, 24, 39, 0.02) 0%, rgba(16, 24, 39, 0.22) 48%, rgba(16, 24, 39, 0.42) 100%);
}
.home-hero-slide--dark.home-hero-slide--text_left:before {
  background: linear-gradient(90deg, rgba(16, 24, 39, 0.42) 0%, rgba(16, 24, 39, 0.22) 52%, rgba(16, 24, 39, 0.02) 100%);
}
.home-hero-slide--text_center:before {
  display: block;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.34) 45%, rgba(255, 255, 255, 0.08) 100%);
}
.home-hero-slide--dark.home-hero-slide--text_center:before {
  display: block;
  background: rgba(16, 24, 39, 0.34);
}

.home-hero-slide-media {
  position: absolute;
  inset: 0;
  display: block;
}
.home-hero-slide-media picture {
  display: block;
  width: 100%;
  height: 100%;
}
.home-hero-slide-media img,
.home-hero-slide-media source {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}

.home-hero-slide--text_right .home-hero-slide-media img {
  object-position: left center;
}

.home-hero-slide--text_left .home-hero-slide-media img {
  object-position: right center;
}

.home-hero-slide--text_center .home-hero-slide-media img {
  object-position: center center;
}

.home-hero-slide-content {
  position: relative;
  z-index: 2;
  display: flex;
  width: min(48%, 500px);
  height: 100%;
  flex-direction: column;
  justify-content: center;
  gap: 14px;
  padding: 42px;
}

.home-hero-slide--text_center .home-hero-slide-content {
  margin: 0 auto;
  align-items: center;
  text-align: center;
}

.home-hero-slide--text_right .home-hero-slide-content {
  margin-left: auto;
  align-items: flex-start;
  width: min(44%, 480px);
  padding-right: clamp(32px, 5vw, 72px);
}

.home-hero-slide-badge {
  align-self: flex-start;
  padding: 5px 10px;
  border-radius: 999px;
  color: #0a2f83;
  background: rgba(47, 125, 240, 0.12);
  font-size: 12px;
  line-height: 16px;
  font-weight: 600;
}

.home-hero-slide-title {
  display: block;
  max-width: 13em;
  font-size: clamp(28px, 2.5vw, 42px);
  line-height: 1.08;
  font-weight: 600;
  letter-spacing: 0;
  text-shadow: 0 1px 18px rgba(255, 255, 255, 0.46);
}

.home-hero-slide--light .home-hero-slide-title {
  color: #111827;
}

.home-hero-slide-subtitle {
  display: block;
  max-width: 28em;
  color: currentColor;
  font-size: 16px;
  line-height: 1.45;
  opacity: 0.78;
  text-shadow: 0 1px 18px rgba(255, 255, 255, 0.46);
}

.home-hero-slide--light .home-hero-slide-subtitle {
  color: #6b7280;
  opacity: 1;
}

.home-hero-slide--dark .home-hero-slide-title,
.home-hero-slide--dark .home-hero-slide-subtitle {
  text-shadow: 0 2px 20px rgba(0, 0, 0, 0.36);
}

.home-hero-slide-button {
  display: inline-flex;
  width: max-content;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 18px;
  border-radius: 14px;
  color: #fff;
  background: #0a2f83;
  font-size: 14px;
  line-height: 20px;
  font-weight: 600;
  box-shadow: 0 10px 24px rgba(47, 125, 240, 0.22);
  transition: background-color 0.2s linear, box-shadow 0.2s linear;
}

.home-hero-slide-button:hover {
  background: #061b55;
  box-shadow: 0 12px 28px rgba(31, 111, 229, 0.24);
}

/* 6. Home page / Benefits */
.benefits {
  margin: 0px 0px 20px;
}
.benefits-item {
  margin: 0px 0px 20px;
}
.benefits-item-image {
  width: 50px;
  min-height: 50px;
  margin: 0px auto 5px;
}
.benefits-item-image img,
.benefits-item-image svg {
  display: block;
  width: 100%;
  height: auto;
}
.benefits-item-title {
  margin: 0px 0px 0px 10px;
  font-size: 14px;
  line-height: 16px;
  font-weight: 600;
  color: #111827;
}
.benefits-item-description {
  margin: 2px 0px 0px 10px;
  font-size: 12px;
  line-height: 16px;
}
.benefits--top .benefits-item-title {
  margin: 0px;
  text-align: center;
}
.benefits--top .benefits-item-description {
  margin: 2px 0px 0px;
  text-align: center;
}
.benefits--inner .benefits-item-image {
  margin: 0px 10px 0px 0px;
}
.benefits--inner .benefits-item-title {
  margin: 0px;
}
.benefits--inner .benefits-item-description {
  margin: 5px 0px 0px;
}
.benefits--collection .benefits-item-image {
  width: 32px;
  min-height: 32px;
}
.benefits--full-title {
  background: #f5f7fb;
  padding: 10px 15px;
}
.benefits--full .benefits-item-image {
  width: 26px;
  min-height: 26px;
}
.benefits--full .benefits-item-description {
  position: relative;
  padding: 10px 15px;
  border: 1px solid #e5eaf2;
  margin: 2px 0px 0px;
}
.benefits--full .benefits-item-description:after, .benefits--full .benefits-item-description:before {
  content: "";
  position: absolute;
  z-index: 2;
  top: -20px;
  left: 15px;
  border-width: 10px;
  border-style: solid;
  border-color: transparent transparent #e5eaf2 transparent;
}
.benefits--full .benefits-item-description:after {
  border-bottom-color: #fff;
  z-index: 3;
  top: -19px;
}

@media (max-width: 767px) {
  .benefits--collection {
    margin: -20px 0px 10px;
  }
  .benefits--collection .benefits-item-image, .benefits--inner .benefits-item-image {
    width: 24px;
    min-height: 24px;
  }
  .benefits--collection .benefits-item-title, .benefits--inner .benefits-item-title {
    font-size: 14px;
    line-height: 18px;
    font-weight: 400;
  }
  .benefits--collection .benefits-item-title span, .benefits--inner .benefits-item-title span {
    border-bottom: 1px dashed currentColor;
  }
  .benefits--collection .benefits-item-description, .benefits--inner .benefits-item-description {
    display: none;
  }
  .benefits--collection .benefits-item, .benefits--inner .benefits-item {
    margin: 0px 0px 10px;
  }
  .benefits--collection .benefits-item.is-open .benefits-item-description, .benefits--inner .benefits-item.is-open .benefits-item-description {
    display: block;
  }
}
@media (min-width: 1025px) {
  .index-widgets > .insales-section-benefits:first-child .benefits {
    margin: -20px 0px 0px;
  }
}
.product-benefits-section,
.collection-benefits-section,
.section-benefits-section {
  margin: 0px 0px 40px;
  padding: 0px;
}
.product-benefits-section .benefits,
.collection-benefits-section .benefits,
.section-benefits-section .benefits {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(260px, 1fr);
  gap: 14px;
  margin: 0px;
  padding: 4px 2px 14px;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}
.product-benefits-section .benefits::-webkit-scrollbar,
.collection-benefits-section .benefits::-webkit-scrollbar,
.section-benefits-section .benefits::-webkit-scrollbar {
  display: none;
}
.product-benefits-section .benefits-item,
.collection-benefits-section .benefits-item,
.section-benefits-section .benefits-item {
  display: grid;
  grid-template-rows: auto 1fr;
  min-height: 150px;
  margin: 0px;
  border: 1px solid #e5eaf2;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0px 8px 20px rgba(24, 32, 56, 0.04);
  overflow: hidden;
  scroll-snap-align: start;
}
.product-benefits-section .benefits--full-title,
.collection-benefits-section .benefits--full-title,
.section-benefits-section .benefits--full-title {
  padding: 14px 16px 10px;
  background: transparent;
}
.product-benefits-section .benefits-item-image,
.collection-benefits-section .benefits-item-image,
.section-benefits-section .benefits-item-image {
  width: 28px;
  min-height: 28px;
  margin: 0px 10px 0px 0px;
}
.product-benefits-section .benefits-item-title,
.collection-benefits-section .benefits-item-title,
.section-benefits-section .benefits-item-title {
  margin: 0px;
  color: #111827;
  font-size: 14px;
  line-height: 18px;
}
.product-benefits-section .benefits-item-description,
.collection-benefits-section .benefits-item-description,
.section-benefits-section .benefits-item-description {
  display: block;
  position: static;
  margin: 0px;
  padding: 0px 16px 16px;
  border: 0px;
  color: #374151;
  font-size: 12px;
  line-height: 17px;
}
.product-benefits-section .benefits-item-description:before, .product-benefits-section .benefits-item-description:after,
.collection-benefits-section .benefits-item-description:before,
.collection-benefits-section .benefits-item-description:after,
.section-benefits-section .benefits-item-description:before,
.section-benefits-section .benefits-item-description:after {
  display: none;
}

.product-benefits-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 6px 0px 0px;
}
.product-benefits-controls.is-hidden {
  display: none;
}

.product-benefits-control {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  padding: 0px;
  border: 1px solid #e5eaf2;
  border-radius: 999px;
  background: #fff;
  color: #6b7280;
  cursor: pointer;
  transition: color 0.2s, border-color 0.2s, background-color 0.2s;
}
.product-benefits-control:hover {
  border-color: #c7d9f6;
  color: #0a2f83;
  background: #eef4ff;
}
.product-benefits-control:disabled {
  opacity: 0.4;
  cursor: default;
  background: #fff;
  color: #6b7280;
  border-color: #e5eaf2;
}

.product-benefits-pagination {
  display: flex;
  justify-content: center;
  gap: 6px;
}

.product-benefits-pagination-dot {
  width: 18px;
  height: 6px;
  border: 0px;
  border-radius: 999px;
  background: #d4dce8;
  padding: 0px;
  cursor: pointer;
  transition: width 0.2s, background-color 0.2s;
}
.product-benefits-pagination-dot.is-active {
  width: 32px;
  background: #0a2f83;
}

@media (min-width: 1025px) {
  .product-benefits-section .benefits,
  .collection-benefits-section .benefits,
  .section-benefits-section .benefits {
    grid-auto-columns: calc((100% - 42px) / 4);
  }
}
@media (max-width: 575px) {
  .product-benefits-section,
  .collection-benefits-section,
  .section-benefits-section {
    margin-bottom: 28px;
  }
  .product-benefits-section .container,
  .collection-benefits-section .container,
  .section-benefits-section .container {
    padding-left: 10px;
    padding-right: 10px;
  }
  .product-benefits-section .benefits,
  .collection-benefits-section .benefits,
  .section-benefits-section .benefits {
    grid-auto-columns: 100%;
    gap: 12px;
    padding-bottom: 12px;
  }
  .product-benefits-section .benefits-item,
  .collection-benefits-section .benefits-item,
  .section-benefits-section .benefits-item {
    min-width: 100%;
  }
}
/* 6. Home page / Slider */
.slider {
  margin: 0px 0px 40px;
}
.slider img {
  width: 100%;
  height: auto;
}
.slider-item {
  display: block;
}
.slider .owl-carousel {
  display: block;
  padding-bottom: 30px;
}
.slider .owl-carousel .owl-dots {
  position: absolute;
  left: 0px;
  bottom: 0px;
  width: 100%;
  text-align: center;
  line-height: 0px;
}
.slider .owl-carousel .owl-dot {
  position: relative;
  display: inline-block;
  width: 10px;
  height: 10px;
  background-color: #9ca3af;
  border-radius: 999px;
  transition: 0.2s;
  margin: 0px 5px;
}
.slider .owl-carousel .owl-dot.active {
  width: 30px;
  background-color: #0a2f83;
}
.slider .owl-carousel > .slider-item {
  display: none;
}
.slider .owl-carousel > .slider-item:first-child {
  display: block;
}

/* 6. Home page / Banners */
.banners {
  margin: 0px 0px 20px;
}
.banners-item {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background: #fff center center no-repeat;
  transition: 0.4s;
}
.banners-item img,
.banners-item source {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100% !important;
  height: 100% !important;
  will-change: transform;
  object-fit: contain;
}
.banners-item-title {
  position: absolute;
  z-index: 2;
  left: 50%;
  top: 50%;
  font-size: 18px;
  line-height: 22px;
  transform: translate(-50%, -50%);
  white-space: nowrap;
  color: #111827;
  text-align: center;
  max-width: 70%;
}
.banners-item-title:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.8);
  transition: all 0.2s linear;
  transform: translate(-50%, -50%);
  padding: 10px 15px;
  box-sizing: content-box;
}
.banners-item-title > span {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.banners-item:hover .banners-item-image {
  opacity: 0.5;
}
.banners-item:hover .banners-item-title:before {
  padding: 20px 30px;
}
.banners-thumb {
  position: relative;
  margin: 0px 0px 20px;
  display: block;
  overflow: hidden;
  background: #f5f7fb;
}
.banners-thumb--1x1 {
  padding-top: 100%;
}
.banners-thumb--2x3 {
  padding-top: 150%;
}
.banners-thumb--3x4 {
  padding-top: 133%;
}
.banners-thumb--4x3 {
  padding-top: 75%;
}
.banners-thumb--16x9 {
  padding-top: 56%;
}
.banners-thumb--contain .banners-item img,
.banners-thumb--contain .banners-item source {
  object-fit: contain;
}
.banners-thumb--cover .banners-item img,
.banners-thumb--cover .banners-item source {
  object-fit: cover;
}
.banners-name {
  display: block;
  padding: 10px;
  background: #f6f7f9;
  text-align: center;
}

@media (min-width: 768px) {
  .container-fluid .banners {
    padding: 0px 10px;
  }
}
/* 6. Home page / User reviews */
.insales-section-user_reviews {
  background: #f5f7fb;
  padding: 40px 0px;
  margin: 0px 0px 40px;
}

.user_review {
  text-align: center;
}
.user_review-data {
  position: relative;
}
.user_review-thumb {
  position: relative;
  display: block;
  margin: 5px auto 15px;
  width: 100px;
  height: 100px;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0px 0px 0px 5px #fff;
}
.user_review-thumb-item {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}
.user_review-content {
  margin: 15px 0px 0px;
}
.user_review-name {
  color: #111827;
  font-weight: 600;
  font-size: 16px;
  line-height: 20px;
}
.user_review-rating {
  line-height: 0px;
  color: #ccc;
  margin: 3px 0px 0px;
}
.user_review-rating svg {
  margin: 0px 1px;
}
.user_review-rating--active {
  color: #ffb020;
}
.user_review--left {
  text-align: left;
}
.user_review--left .user_review-data {
  min-height: 100px;
  padding-left: 120px;
}
.user_review--left .user_review-thumb {
  position: absolute;
  top: 0px;
  left: 0px;
  margin: 0px;
}
.user_review--hide_image .user_review-data {
  min-height: auto;
  padding-left: 0px;
}

.user_reviews-send {
  margin: 30px 0px -10px;
  text-align: center;
}

.sidebar-block {
  margin: 0px 0px 40px;
}
.sidebar-block-title {
  font-size: 14px;
  line-height: 18px;
  font-weight: 600;
  color: #111827;
  margin: 0px 0px 15px;
  padding: 0px 0px 15px;
  border-bottom: 1px solid #e5eaf2;
}
.sidebar-block-title a {
  position: relative;
  padding-left: 20px;
  display: inline-block;
}
.sidebar-block-title a svg {
  position: absolute;
  left: 0px;
  top: 50%;
  transform: translate(0, -50%);
}
.sidebar-banners-item {
  margin: 0px 0px 40px;
}
.sidebar-banners-item img {
  max-width: 100%;
  height: auto;
}

@media (min-width: 1025px) {
  .sidebar {
    padding-right: 20px;
  }
}
/* 7. Catalog / Filter */
.filter-item-title {
  color: #111827;
  font-weight: 600;
}
.filter-value {
  margin: 5px 0px 0px;
}
.filter-value:first-child {
  margin: 0px;
}
.filter-value-checkbox {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.filter-value-checkbox:checked + label {
  color: #0a2f83;
}
.filter-value-checkbox:checked + label:after {
  opacity: 1;
}
.filter-value-checkbox:checked + label:before {
  border-color: #0a2f83;
}
.filter-value-label {
  margin: 0px;
  position: relative;
  padding-left: 22px;
  cursor: pointer;
  transition: color 0.2s linear;
}
.filter-value-label-color {
  position: absolute;
  z-index: 3;
  width: 10px;
  height: 10px;
  left: 3px;
  top: 6px;
  background: center no-repeat;
  background-size: cover;
}
.filter-value-label:before, .filter-value-label:after {
  content: "";
  position: absolute;
  width: 16px;
  height: 16px;
  left: 0px;
  top: 3px;
  transition: opacity 0.2s linear;
}
.filter-value-label:before {
  border: 1px solid #e5eaf2;
  background-color: #f5f7fb;
}
.filter-value-label:after {
  width: 10px;
  height: 10px;
  background-color: #0a2f83;
  left: 3px;
  top: 6px;
  opacity: 0;
}

.filter-sidebar .filter {
  padding: 20px 20px 0px;
  border: 2px solid #e5eaf2;
}
.filter-sidebar .filter-item {
  margin: 0px 0px 20px;
}
.filter-sidebar .filter-item-title {
  margin: 0px 0px 5px;
}
.filter-sidebar .filter-item-title--content {
  display: none;
}
.filter-sidebar .filter-item-count {
  display: none;
}
.filter-sidebar .filter-value.is-hidden {
  display: none;
}
.filter-sidebar .filter-value-more {
  margin: 0px;
}
.filter-sidebar .filter-value-more .button span:before {
  content: attr(data-text-first);
}
.filter-sidebar .filter-value-more .button.is-active span:before {
  content: attr(data-text-second);
}

.filter-buttons {
  margin: 0px 0px 40px;
}

.filter-buttons--search {
  margin: -20px 0px 20px;
}

.filter-container + .filter-buttons {
  margin: -20px 0px 20px;
}

.collection-heading {
  row-gap: 12px;
}
.collection-heading .section-title {
  margin: 0px;
  font-size: 28px;
  line-height: 34px;
  letter-spacing: 0px;
}
.collection-heading-sort {
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}
.collection-heading .filter-sort {
  min-width: 260px;
}
.collection-heading .filter-sort .row {
  align-items: center;
  flex-wrap: nowrap;
  margin-left: -6px;
  margin-right: -6px;
}
.collection-heading .filter-sort [class*=col] {
  padding-left: 6px;
  padding-right: 6px;
}
.collection-heading .filter-sort label {
  margin: 0px;
  color: #6b7280;
  font-size: 14px;
  line-height: 18px;
}
.collection-heading .filter-sort .input--sort {
  min-width: 170px;
  height: 34px;
  padding-top: 0px;
  padding-bottom: 0px;
  border-color: #e5eaf2;
  border-radius: 14px;
  background-color: #f5f7fb;
  box-shadow: inset 0px 0px 0px 1px rgba(10, 47, 131, 0.04);
  font-weight: 600;
}

.js-collection-data {
  position: relative;
}
.js-collection-data.is-loading .js-products-data {
  opacity: 0.42;
  pointer-events: none;
}
.js-collection-data.is-loading:after {
  content: "";
  position: absolute;
  z-index: 20;
  left: 50%;
  top: 180px;
  width: 34px;
  height: 34px;
  margin-left: -17px;
  border: 3px solid #eef4ff;
  border-top-color: #0a2f83;
  border-radius: 50%;
  animation: catalog-filter-loading 0.8s linear infinite;
}

@keyframes catalog-filter-loading {
  to {
    transform: rotate(360deg);
  }
}
.collection-bottom-content {
  margin: 32px 0px 0px;
}

.collection-quick-subcollections {
  display: flex;
  gap: 10px;
  margin: -4px 0px 22px;
  padding: 0px 0px 2px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.collection-quick-subcollections::-webkit-scrollbar {
  display: none;
}

.sidebar-catalog-title {
  margin-bottom: 12px;
}

.sidebar-catalog-toggle {
  display: flex;
  width: 100%;
  min-height: 42px;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 9px 14px;
  border: 1px solid #e5eaf2;
  border-radius: 14px;
  background: #fff;
  color: #111827;
  font-size: 16px;
  line-height: 20px;
  font-weight: 600;
  text-align: left;
  box-shadow: none;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
.sidebar-catalog-toggle span {
  flex: 0 0 auto;
  color: #6b7280;
  font-size: 14px;
  transition: transform 0.2s ease, color 0.2s ease;
}
.sidebar-catalog-toggle:hover {
  border-color: #c7d9f6;
  background: #eef4ff;
  color: #0a2f83;
}
.sidebar-catalog-toggle:hover span {
  color: #0a2f83;
}

.sidebar-collections.is-collapsed .sidebar-block-content {
  display: none;
}
.sidebar-collections:not(.is-collapsed) .sidebar-catalog-toggle {
  border-color: #c7d9f6;
  background: #eef4ff;
  color: #0a2f83;
}
.sidebar-collections:not(.is-collapsed) .sidebar-catalog-toggle span {
  color: #0a2f83;
  transform: rotate(180deg);
}

.collection-quick-card {
  display: grid;
  flex: 0 0 206px;
  grid-template-columns: 54px minmax(0px, 1fr);
  align-items: center;
  gap: 10px;
  min-height: 72px;
  padding: 8px 10px 8px 8px;
  border: 1px solid #e5eaf2;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0px 8px 20px rgba(24, 32, 56, 0.04);
  color: #111827;
  transition: color 0.2s linear, border-color 0.2s linear, background-color 0.2s linear, transform 0.2s linear;
}
.collection-quick-card-media {
  position: relative;
  display: block;
  width: 54px;
  height: 54px;
  border-radius: 8px;
  background: #f5f7fb;
  overflow: hidden;
}
.collection-quick-card-media--all {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #eef4ff;
  color: #0a2f83;
  font-size: 13px;
  line-height: 16px;
  font-weight: 600;
}
.collection-quick-card-image, .collection-quick-card-media img, .collection-quick-card-media source {
  position: absolute;
  inset: 0px;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain;
}
.collection-quick-card-placeholder {
  position: absolute;
  inset: 0px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #0a2f83;
  font-size: 18px;
  font-weight: 600;
}
.collection-quick-card-body {
  display: grid;
  gap: 3px;
  min-width: 0px;
}
.collection-quick-card-title {
  display: block;
  color: inherit;
  font-size: 13px;
  line-height: 17px;
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
}
.collection-quick-card-meta {
  display: block;
  color: #0a2f83;
  font-size: 12px;
  line-height: 15px;
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.collection-quick-card:hover, .collection-quick-card.is-active {
  border-color: #c7d9f6;
  background: #eef4ff;
  color: #0a2f83;
}
.collection-quick-card:hover {
  transform: translateY(-1px);
}

@media (min-width: 1025px) {
  .collection-quick-subcollections--with-sidebar {
    display: none;
  }
}
@media (min-width: 1025px) {
  .filter-value-label:hover {
    color: #0a2f83;
  }
  .filter-value-label:hover:after {
    opacity: 0.5;
  }
}
@media (max-width: 1024px) {
  .sidebar-filter {
    position: fixed;
    z-index: 7020;
    left: 0px;
    top: 0px;
    width: 0px;
    height: 100%;
    margin: 0px;
    padding: 0px;
  }
  .filter-container {
    position: fixed;
    z-index: 7000;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    margin: 0px;
    padding: 0px;
    background: rgba(0, 0, 0, 0.5);
    opacity: 0;
    visibility: hidden;
    transition: 0.4s;
  }
  .filter-container > [class^=filter-] {
    height: 100%;
  }
  .filter-container .filter {
    position: absolute;
    z-index: 10;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    max-width: none;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.5);
    transform: translate(-110%, 0px);
    transition: 0.4s;
    background: #fff;
    border-style: none;
  }
  .filter-container .filter-form {
    flex: 1 1 auto;
    min-height: 0px;
    padding: 0px 18px calc(92px + env(safe-area-inset-bottom));
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .filter-container .filter-title {
    position: relative;
    flex: 0 0 auto;
    z-index: 3;
    top: 0px;
    min-height: 62px;
    margin: 0px;
    padding: 18px 58px 16px 20px;
    border-bottom: 1px solid #e5eaf2;
    background: #fff;
    font-size: 22px;
    line-height: 28px;
    font-weight: 600;
    color: #111827;
  }
  .filter-container .filter-title .button {
    position: absolute;
    top: 50%;
    right: 14px;
    width: 38px;
    height: 38px;
    margin-top: -19px;
    border-radius: 50%;
    background: #f5f7fb;
  }
  .filter-container .filter-item {
    margin: 0px;
    border-bottom: 1px solid #e5eaf2;
  }
  .filter-container .filter-item:last-child {
    border-bottom: 0px;
  }
  .filter-container .filter-item-title--sidebar {
    min-height: 56px;
    padding: 15px 34px 15px 0px;
    font-size: 17px;
    line-height: 22px;
  }
  .filter-container .filter-item-content {
    padding: 0px 0px 14px;
  }
  .filter-container .filter-item-reset {
    position: sticky;
    z-index: 4;
    bottom: 0px;
    display: flex !important;
    align-items: center;
    gap: 10px;
    margin: 0px -18px;
    padding: 12px 18px calc(12px + env(safe-area-inset-bottom));
    border-top: 1px solid #e5eaf2;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0px -10px 24px rgba(15, 23, 42, 0.08);
  }
  .filter-container .filter-item-reset .button,
  .filter-container .filter-item-reset a {
    flex: 1 1 0px;
    min-height: 44px;
    border-radius: 999px;
    font-size: 15px;
    line-height: 20px;
    text-align: center;
  }
  .filter-container .filter-item-reset.d-none a {
    display: none;
  }
  .filter-container .filter-shade {
    position: absolute;
    z-index: 5;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    cursor: pointer;
  }
  .filter-container.is-open {
    opacity: 1;
    visibility: visible;
  }
  .filter-container.is-open .filter {
    transform: translate(0px, 0px);
  }
  .filter-buttons {
    margin: 0px 0px 20px;
  }
  .collection-quick-subcollections {
    display: flex;
    gap: 8px;
    margin: -4px -10px 16px 0px;
    padding-right: 10px;
  }
  .collection-quick-card {
    flex: 0 0 164px;
    grid-template-columns: 44px minmax(0px, 1fr);
    min-height: 60px;
    gap: 8px;
    padding: 7px;
  }
  .collection-quick-card-media {
    width: 44px;
    height: 44px;
  }
  .collection-quick-card-title {
    font-size: 12px;
    line-height: 15px;
  }
  .collection-quick-card-meta {
    font-size: 11px;
    line-height: 14px;
  }
}
@media (max-width: 767px) {
  .collection-heading {
    padding-top: 10px;
    margin-bottom: 4px;
  }
  .collection-heading .section-title {
    font-size: 24px;
    line-height: 30px;
  }
}
@media (max-width: 575px) {
  .collection-heading {
    padding-top: 14px;
  }
}
/* 7. Catalog / Subcollections */
.collections,
.subcollections {
  margin: 0px 0px 20px;
}

/* 7. Catalog / Subcollection cards and brand logos */
.subcollection_card,
.brand_logo {
  margin: 0px 0px 20px;
}
.subcollection_card-thumb,
.brand_logo-thumb {
  position: relative;
  display: block;
  margin: 0px 0px 5px;
  overflow: hidden;
}
.subcollection_card-thumb-item,
.brand_logo-thumb-item {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background: #fff center center no-repeat;
  transition: 0.4s;
}
.subcollection_card-thumb-item--empty,
.brand_logo-thumb-item--empty {
  background-color: #f5f7fb;
}
.subcollection_card-thumb-item svg,
.brand_logo-thumb-item svg {
  color: #e5eaf2;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.subcollection_card-thumb-item img,
.subcollection_card-thumb-item source,
.brand_logo-thumb-item img,
.brand_logo-thumb-item source {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100% !important;
  height: 100% !important;
  will-change: transform;
  object-fit: contain;
}
.subcollection_card-thumb-item-title,
.brand_logo-thumb-item-title {
  position: absolute;
  z-index: 2;
  left: 50%;
  top: 50%;
  font-size: 14px;
  line-height: 20px;
  font-weight: 600;
  transform: translate(-50%, -50%);
  white-space: nowrap;
  color: #111827;
  text-align: center;
  max-width: 70%;
}
.subcollection_card-thumb-item-title:before,
.brand_logo-thumb-item-title:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.8);
  transition: all 0.2s linear;
  transform: translate(-50%, -50%);
  padding: 5px 10px;
  box-sizing: content-box;
}
.subcollection_card-thumb-item-title > span,
.brand_logo-thumb-item-title > span {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.subcollection_card-thumb--1x1,
.brand_logo-thumb--1x1 {
  padding-top: 100%;
}
.subcollection_card-thumb--2x3,
.brand_logo-thumb--2x3 {
  padding-top: 150%;
}
.subcollection_card-thumb--3x4,
.brand_logo-thumb--3x4 {
  padding-top: 133%;
}
.subcollection_card-thumb--4x3,
.brand_logo-thumb--4x3 {
  padding-top: 75%;
}
.subcollection_card-thumb--16x9,
.brand_logo-thumb--16x9 {
  padding-top: 56%;
}
.subcollection_card-thumb--contain .subcollection_card-thumb-item img,
.subcollection_card-thumb--contain .subcollection_card-thumb-item source,
.brand_logo-thumb--contain .subcollection_card-thumb-item img,
.brand_logo-thumb--contain .subcollection_card-thumb-item source {
  object-fit: contain;
}
.subcollection_card-thumb--contain .subcollection_card-thumb-item--brand img,
.subcollection_card-thumb--contain .subcollection_card-thumb-item--brand source,
.subcollection_card-thumb--contain .brand_logo-thumb-item img,
.subcollection_card-thumb--contain .brand_logo-thumb-item source,
.brand_logo-thumb--contain .subcollection_card-thumb-item--brand img,
.brand_logo-thumb--contain .subcollection_card-thumb-item--brand source,
.brand_logo-thumb--contain .brand_logo-thumb-item img,
.brand_logo-thumb--contain .brand_logo-thumb-item source {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  max-width: 80%;
  max-height: 80%;
  width: auto !important;
  height: auto !important;
}
.subcollection_card-thumb--cover .subcollection_card-thumb-item img,
.subcollection_card-thumb--cover .subcollection_card-thumb-item source,
.brand_logo-thumb--cover .subcollection_card-thumb-item img,
.brand_logo-thumb--cover .subcollection_card-thumb-item source {
  object-fit: cover;
}
.subcollection_card-title,
.brand_logo-title {
  font-size: 14px;
  line-height: 18px;
  text-align: center;
}
.subcollection_card-title a,
.brand_logo-title a {
  display: block;
  color: #111827;
}
.subcollection_card-title a:hover,
.brand_logo-title a:hover {
  color: #0a2f83;
}
.subcollection_card-products_count,
.brand_logo-products_count {
  font-size: 12px;
  line-height: 16px;
  text-align: center;
  color: #9ca3af;
  margin: 2px 0px 0px;
}
.subcollection_card:hover .subcollection_card-thumb-item span:before,
.brand_logo:hover .subcollection_card-thumb-item span:before {
  padding: 10px 15px;
}

.insales-section-brands .brand_logo {
  margin: 0px;
}

.brand_logo-thumb {
  margin: 0px;
}

.brand_logo-thumb-item-title {
  color: #fff;
}
.brand_logo-thumb-item-title:before {
  background: #111827;
}

.insales-section-brands {
  margin: 0px 0px 40px;
  padding: 20px 0px;
  background-color: #f5f7fb;
}

@media (min-width: 768px) {
  .container-fluid .brands {
    padding: 0px 30px;
  }
}
.brands-slider .owl-dots,
.user_reviews-slider .owl-dots {
  width: 100%;
  text-align: center;
  line-height: 0px;
  margin: 20px 0px 0px;
}
.brands-slider .owl-dots .owl-dot,
.user_reviews-slider .owl-dots .owl-dot {
  position: relative;
  display: inline-block;
  width: 10px;
  height: 10px;
  background-color: #9ca3af;
  border-radius: 999px;
  transition: 0.2s;
  margin: 0px 5px;
}
.brands-slider .owl-dots .owl-dot.active,
.user_reviews-slider .owl-dots .owl-dot.active {
  background-color: #0a2f83;
}
.brands-slider .owl-nav .owl-prev,
.brands-slider .owl-nav .owl-next,
.user_reviews-slider .owl-nav .owl-prev,
.user_reviews-slider .owl-nav .owl-next {
  position: absolute;
  top: 50%;
  width: 40px;
  height: 40px;
  margin-top: -20px;
  background: transparent;
  color: #111827;
  cursor: pointer;
}
.brands-slider .owl-nav .owl-prev:hover,
.brands-slider .owl-nav .owl-next:hover,
.user_reviews-slider .owl-nav .owl-prev:hover,
.user_reviews-slider .owl-nav .owl-next:hover {
  color: #0a2f83;
}
.brands-slider .owl-nav .owl-prev.disabled,
.brands-slider .owl-nav .owl-next.disabled,
.user_reviews-slider .owl-nav .owl-prev.disabled,
.user_reviews-slider .owl-nav .owl-next.disabled {
  opacity: 0.25;
  color: #111827;
  cursor: default;
}
.brands-slider .owl-nav .owl-prev,
.user_reviews-slider .owl-nav .owl-prev {
  left: -40px;
}
.brands-slider .owl-nav .owl-next,
.user_reviews-slider .owl-nav .owl-next {
  right: -40px;
}

.user_reviews-slider .owl-dots {
  margin: 35px 0px 0px;
}

/* 7. Catalog / Product lists */
.products {
  margin: 0px 0px 20px;
}
.products-title {
  margin: 0px 0px 20px;
}
.products-slider.owl-carousel .owl-nav .owl-prev,
.products-slider.owl-carousel .owl-nav .owl-next {
  position: absolute;
  top: -54px;
  right: 0px;
  width: 40px;
  height: 40px;
  background: #f5f7fb;
  color: #111827;
  cursor: pointer;
}
.products-slider.owl-carousel .owl-nav .owl-prev:hover,
.products-slider.owl-carousel .owl-nav .owl-next:hover {
  background: #111827;
  color: #fff;
}
.products-slider.owl-carousel .owl-nav .owl-prev.disabled,
.products-slider.owl-carousel .owl-nav .owl-next.disabled {
  opacity: 0.25;
  background: #f5f7fb;
  color: #111827;
  cursor: default;
}
.products-slider.owl-carousel .owl-nav .owl-prev {
  right: 50px;
}
.products-slider.owl-carousel .owl-dots {
  text-align: center;
  line-height: 0;
  margin: 0px 0px 40px;
}
.products-slider.owl-carousel .owl-dots .owl-dot {
  width: 10px;
  height: 10px;
  background: #ccc;
  border-radius: 50%;
  margin: 0px 5px;
}
.products-slider.owl-carousel .owl-dots .owl-dot.active {
  background: #111827;
}
.products--recently .section-title .button {
  margin-left: 0px;
}
.products--favorites .section-title .button {
  margin-left: 20px;
}

/* 8. Product page / Tabs, receiving and related sections */
.product-tabs-section {
  margin: 0px 0px 36px;
}
.product-tabs-section .tabs-list {
  display: flex;
  flex-wrap: nowrap;
  gap: 8px;
  justify-content: center;
  width: 100%;
  max-width: 100%;
  margin: 0px 0px 24px;
  padding: 4px 0px 8px;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scroll-padding-left: 10px;
  scrollbar-width: none;
}
.product-tabs-section .tabs-list::-webkit-scrollbar {
  display: none;
}
.product-tabs-section .tabs-list-item {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  margin: 0px;
  padding: 0px 16px;
  border: 1px solid #e5eaf2;
  border-radius: 999px;
  background: #fff;
  color: #6b7280;
  font-size: 14px;
  line-height: 18px;
  white-space: nowrap;
  box-shadow: 0px 8px 20px rgba(24, 32, 56, 0.04);
  transition: color 0.2s, border-color 0.2s, background-color 0.2s;
}
.product-tabs-section .tabs-list-item svg {
  margin: 0px;
}
.product-tabs-section .tabs-list-item:hover, .product-tabs-section .tabs-list-item.is-active {
  border-color: #c7d9f6;
  background: #eef4ff;
  color: #0a2f83;
}
.product-tabs-section .tabs-list-item.is-active {
  font-weight: 600;
}
.product-tabs-section .tabs-content {
  border-radius: 14px;
}

.product-receiving {
  display: block;
}

.product-receiving-inner {
  grid-column: 1/-1;
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
  max-width: 1180px;
  margin: 0px auto;
}

.product-receiving-head {
  max-width: 760px;
  margin: 0px 0px 4px;
  text-align: left;
}

.product-receiving-title {
  margin: 0px 0px 4px;
  color: #111827;
  font-size: 22px;
  line-height: 28px;
  font-weight: 600;
}

.product-receiving-lead {
  margin: 0px;
  color: #6b7280;
  font-size: 13px;
  line-height: 20px;
}

.product-receiving-grid {
  display: grid;
  gap: 12px;
}

.product-receiving-grid--secondary {
  grid-template-columns: repeat(2, minmax(0px, 1fr));
  align-items: start;
}

.product-receiving-card {
  border: 1px solid #e5eaf2;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0px 8px 20px rgba(24, 32, 56, 0.04);
  overflow: hidden;
}
.product-receiving-card[open] {
  box-shadow: 0px 14px 34px rgba(24, 32, 56, 0.05);
}

.product-receiving-card--main {
  border-color: #c7d9f6;
  background: linear-gradient(180deg, #fff 0%, #fff 100%);
}

.product-receiving-summary {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 58px;
  padding: 14px 16px;
  color: #111827;
  font-size: 15px;
  line-height: 20px;
  font-weight: 600;
  cursor: pointer;
  list-style: none;
}
.product-receiving-summary::-webkit-details-marker {
  display: none;
}
.product-receiving-summary:after {
  content: "+";
  margin-left: auto;
  color: #6b7280;
  font-size: 20px;
  line-height: 1;
}
.product-receiving-card[open] .product-receiving-summary:after {
  content: "–";
}

.product-receiving-icon {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 12px;
  background: #eef4ff;
  color: #0a2f83;
  line-height: 1;
}
.product-receiving-icon svg {
  display: block;
  width: 20px;
  height: 20px;
  fill: currentColor;
}

.product-receiving-card--compact .product-receiving-icon {
  width: 32px;
  height: 32px;
  border-radius: 10px;
}
.product-receiving-card--compact .product-receiving-icon svg {
  width: 18px;
  height: 18px;
}

.product-receiving-summary-title {
  display: block;
}

.product-receiving-summary-note {
  display: block;
  margin-top: 2px;
  color: #6b7280;
  font-size: 12px;
  line-height: 16px;
  font-weight: 400;
}

.product-receiving-content {
  padding: 0px 18px 18px;
}
.product-receiving-content .text-content {
  margin: 0px;
  font-size: 13px;
  line-height: 20px;
}
.product-receiving-content .insales-section-map {
  margin: 16px 0px 0px;
}
.product-receiving-content .insales-section-map iframe {
  display: block;
  border: 0px;
  border-radius: 12px;
}

.product-receiving-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0px, 1fr));
  gap: 10px;
}

.product-receiving-card--compact .product-receiving-options {
  grid-template-columns: 1fr;
}

.product-receiving-subcard {
  overflow: hidden;
  padding: 0px;
  border: 1px solid #e5eaf2;
  border-radius: 12px;
  background: #fff;
}
.product-receiving-subcard summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 14px;
  color: #111827;
  font-size: 13px;
  line-height: 18px;
  font-weight: 600;
  cursor: pointer;
  list-style: none;
}
.product-receiving-subcard summary::-webkit-details-marker {
  display: none;
}
.product-receiving-subcard summary:after {
  content: "+";
  flex: 0 0 auto;
  color: #6b7280;
  font-size: 18px;
  line-height: 1;
}
.product-receiving-subcard[open] summary:after {
  content: "–";
}
.product-receiving-subcard .text-content {
  margin: 0px;
  padding: 0px 14px 14px;
  color: #374151;
}

.product-related-section {
  margin: 0px 0px 36px;
}
.product-related-section hr {
  display: none;
}
.product-related-section .section-title {
  margin-bottom: 16px;
}
.product-related-section .tabs-list {
  margin: -4px 0px 18px;
}
.product-related-section .tabs-list-item {
  margin: 0px 5px 8px;
  border: 1px solid #e5eaf2;
  border-radius: 999px;
  padding: 8px 14px;
  background: #fff;
  font-size: 13px;
  line-height: 17px;
  box-shadow: 0px 8px 20px rgba(24, 32, 56, 0.04);
}
.product-related-section .tabs-list-item.is-active, .product-related-section .tabs-list-item:hover {
  border-color: #c7d9f6;
  background: #eef4ff;
  color: #0a2f83;
}
.product-related-section .insales-section-products,
.product-related-section .products {
  margin: 0px;
}
.product-related-section .products-slider.owl-carousel {
  padding-bottom: 26px;
}

@media (max-width: 575px) {
  .product-tabs-section {
    margin-bottom: 28px;
    overflow: hidden;
  }
  .product-tabs-section .tabs-list.row,
  .product-tabs-section .tabs-list {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    width: calc(100% + 20px);
    max-width: none;
    margin-left: -10px;
    margin-right: -10px;
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: auto;
    overflow-y: hidden;
    box-sizing: border-box;
    scrollbar-width: none;
  }
  .product-tabs-section .tabs-list.row::-webkit-scrollbar,
  .product-tabs-section .tabs-list::-webkit-scrollbar {
    display: none;
  }
  .product-tabs-section .tabs-list-item,
  .product-tabs-section .tabs-list-item.col-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: none;
    min-height: 38px;
    padding: 0px 12px;
    font-size: 13px;
    line-height: 16px;
  }
  .product-receiving {
    display: block;
  }
  .product-receiving-inner {
    gap: 10px;
  }
  .product-receiving-head {
    max-width: none;
    text-align: left;
  }
  .product-receiving-title {
    font-size: 20px;
    line-height: 26px;
  }
  .product-receiving-lead {
    font-size: 13px;
    line-height: 20px;
  }
  .product-receiving-grid--secondary {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .product-receiving-summary {
    min-height: 48px;
    padding: 12px 14px;
    font-size: 14px;
    line-height: 18px;
  }
  .product-receiving-content {
    padding: 0px 14px 14px;
  }
  .product-receiving-options {
    grid-template-columns: 1fr;
  }
  .product-related-section {
    margin-bottom: 28px;
  }
  .product-related-section .section-title {
    text-align: left !important;
  }
  .product-related-section .tabs-list {
    justify-content: flex-start;
    overflow-x: auto;
    flex-wrap: nowrap;
    padding-bottom: 4px;
  }
  .product-related-section .tabs-list-item {
    flex: 0 0 auto;
    white-space: nowrap;
  }
}
.product-layout-gallery {
  position: relative;
  grid-column: 1;
  display: grid;
  grid-template-rows: minmax(0px, 1fr) auto;
  overflow: hidden;
  min-height: clamp(560px, 45vw, 720px);
  border: 0px;
  border-radius: clamp(26px, 2vw, 38px);
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}
.product-layout-gallery:before {
  content: "";
  position: absolute;
  inset: 8% 0% 18%;
  z-index: 0;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.96) 0%, rgba(255, 255, 255, 0.72) 42%, rgba(249, 250, 251, 0) 72%), radial-gradient(circle, rgba(10, 47, 131, 0.045) 0%, rgba(10, 47, 131, 0) 70%);
  filter: blur(10px);
  pointer-events: none;
}
.product-layout-gallery .product-labels {
  top: clamp(14px, 1.4vw, 24px);
  left: clamp(14px, 1.4vw, 24px);
}
.product-layout-gallery .product-discount_bage {
  top: calc(clamp(14px, 1.4vw, 24px) + 28px);
  right: auto;
  left: clamp(14px, 1.4vw, 24px);
  width: auto;
  min-width: 0px;
  padding: 3px 8px;
  border-radius: 7px;
  line-height: 13px;
  font-size: 10px;
}

.product-gallery-favorite {
  position: absolute;
  z-index: 5;
  top: clamp(12px, 1.3vw, 20px);
  right: clamp(12px, 1.3vw, 20px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
  padding: 0px;
  border: 1px solid #e5eaf2;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.94);
  color: #6b7280;
  box-shadow: 0px 8px 20px rgba(24, 32, 56, 0.04);
}
.product-gallery-favorite:hover, .product-gallery-favorite.is-active, .product-gallery-favorite.is-added {
  border-color: #fff1f3;
  background: #fff;
  color: #ef3340;
}
.product-gallery-favorite .product-gallery-favorite-text {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0px;
  border: 0px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}

.product-media-stage {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0px;
  padding: clamp(30px, 4vw, 72px) clamp(22px, 3vw, 54px) clamp(20px, 2.6vw, 42px);
  border-radius: inherit;
  background: transparent;
  min-height: auto;
}

.product-media-main {
  position: relative;
  display: block;
  width: 100%;
  max-width: min(100%, 620px);
  margin: 0px auto;
  padding-top: 0px !important;
  aspect-ratio: 1/1;
  border-radius: clamp(18px, 1.6vw, 28px);
  background: radial-gradient(circle at 50% 46%, rgb(255, 255, 255) 0%, rgba(255, 255, 255, 0.96) 48%, rgba(246, 247, 249, 0.9) 100%);
  overflow: hidden;
  box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.96), 0px 36px 80px rgba(24, 32, 56, 0.1);
  transition: transform 220ms cubic-bezier(0.22, 0.74, 0.46, 0.97), box-shadow 220ms ease;
}
.product-media-main:hover {
  transform: translateY(-2px);
  box-shadow: 0px 30px 60px rgba(24, 32, 56, 0.08);
}

.product-media-frame,
.product-media-thumb-frame {
  position: absolute;
  inset: 0px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent center center/contain no-repeat;
}
.product-media-frame picture,
.product-media-thumb-frame picture {
  display: block;
  width: 100%;
  height: 100%;
}
.product-media-frame img,
.product-media-frame source,
.product-media-thumb-frame img,
.product-media-thumb-frame source {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain;
}

.product-media-strip {
  position: relative;
  z-index: 1;
  padding: 10px clamp(16px, 1.8vw, 24px) clamp(16px, 1.8vw, 24px);
  border-top: 1px solid rgba(255, 255, 255, 0.62);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.7));
}

.product-layout-gallery .product-media-track {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: center;
  margin: 0px;
  width: 100%;
  padding: 4px 2px 8px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
}

.product-layout-gallery .product-media-thumb {
  position: relative;
  display: block;
  flex: 0 0 clamp(58px, 4.2vw, 76px);
  width: clamp(58px, 4.2vw, 76px);
  max-width: clamp(58px, 4.2vw, 76px);
  aspect-ratio: 1/1;
  padding-top: 0px !important;
  border: 1px solid #e5eaf2;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.88);
  overflow: hidden;
  box-shadow: 0px 8px 18px rgba(24, 32, 56, 0.04);
  transition: border-color 180ms, box-shadow 180ms, opacity 180ms, transform 180ms;
}
.product-layout-gallery .product-media-thumb:hover, .product-layout-gallery .product-media-thumb.is-active, .product-layout-gallery .product-media-thumb.is-added {
  opacity: 1;
  border-color: #7fa8ee;
  box-shadow: 0 0 0 3px rgba(10, 47, 131, 0.14);
}
.product-layout-gallery .product-media-thumb:hover {
  transform: translateY(-1px);
}

.product-layout-gallery .product-media-thumb--video {
  color: #fff;
  background: #111827;
}
.product-layout-gallery .product-media-thumb--video .product-media-thumb-frame {
  background-color: #111827;
}

@media (min-width: 1025px) {
  .product-media-main {
    max-height: clamp(440px, 35vw, 620px);
  }
}
@media (min-width: 1600px) {
  .product-layout-gallery {
    min-height: clamp(640px, 43vw, 780px);
  }
  .product-media-main {
    max-width: 660px;
    max-height: clamp(520px, 34vw, 680px);
    border-radius: 50%;
  }
}
@media (min-width: 1200px) and (max-width: 1599px) {
  .product-layout-gallery {
    min-height: clamp(560px, 44vw, 670px);
  }
  .product-media-main {
    max-width: min(100%, 580px);
    max-height: clamp(430px, 34vw, 590px);
    border-radius: 50%;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .product-layout-gallery {
    min-height: clamp(420px, 52vw, 560px);
  }
  .product-media-main {
    max-height: min(520px, 100vh - 220px);
  }
}
@media (max-width: 767px) {
  .product-layout-gallery {
    min-height: 0px;
  }
  .product-media-main {
    max-width: min(100%, 560px);
  }
}
@media (max-width: 575px) {
  .product-layout-gallery {
    border-radius: 18px;
    backdrop-filter: none;
  }
  .product-media-stage {
    padding: 18px 14px 12px;
    border-radius: 18px;
  }
  .product-media-main {
    max-height: 54vh;
    border-radius: 16px;
    box-shadow: none;
  }
  .product-media-strip {
    padding: 8px 12px 12px;
  }
  .product-media-thumb {
    flex-basis: 56px;
  }
}
/* Product kit feature: base, layout and responsive states. */
/* Base */
.product-kit-offer {
  display: grid;
  gap: 12px;
  margin: 0px;
  padding: clamp(14px, 1.25vw, 18px);
  border: 1px solid #e5eaf2;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0px 14px 34px rgba(24, 32, 56, 0.05);
}

.product-kit-head,
.product-kit-picker-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.product-kit-title,
.product-kit-step-title,
.product-kit-category-title {
  color: #111827;
  font-size: 16px;
  line-height: 20px;
  font-weight: 600;
}

.product-kit-step-title,
.product-kit-category-title {
  font-size: 13px;
  line-height: 17px;
}

.product-kit-step-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-height: 28px;
}

.product-kit-subtitle {
  margin-top: 2px;
  color: #6b7280;
  font-size: 12px;
  line-height: 16px;
}

.product-kit-badge {
  flex: 0 0 auto;
  padding: 5px 8px;
  border-radius: 999px;
  background: #eef4ff;
  color: #0a2f83;
  font-size: 11px;
  line-height: 14px;
  font-weight: 600;
  white-space: nowrap;
}

.product-kit-steps {
  display: grid;
  grid-template-columns: minmax(0px, 1fr) minmax(0px, 1.05fr) minmax(0px, 1.05fr) minmax(0px, 0.82fr);
  gap: 12px;
  align-items: start;
}

.product-kit-offer--no-gift .product-kit-steps {
  grid-template-columns: minmax(0px, 1fr) minmax(0px, 1.1fr) minmax(0px, 0.82fr);
}

.product-kit-step {
  position: relative;
  display: block;
  align-self: start;
  min-width: 0px;
  min-height: 0px;
  max-width: 100%;
  padding: 12px;
  border: 1px solid #e5eaf2;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0px 4px 12px rgba(24, 32, 56, 0.04);
}

.product-kit-step-index {
  position: absolute;
  top: 12px;
  left: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #eef4ff;
  color: #0a2f83;
  font-size: 12px;
  line-height: 14px;
  font-weight: 600;
}

.product-kit-step-content {
  display: grid;
  grid-template-rows: 28px minmax(0px, auto);
  gap: 8px;
  min-width: 0px;
  max-width: 100%;
  overflow: visible;
}

.product-kit-step .product-kit-step-title {
  min-height: 28px;
  padding-left: 34px;
  display: flex;
  align-items: center;
}

.product-kit-selected-thumb,
.product-kit-item-thumb {
  position: relative;
  display: block;
  aspect-ratio: 1/1;
  background: #fff;
  overflow: hidden;
}
.product-kit-selected-thumb picture,
.product-kit-selected-thumb img,
.product-kit-item-thumb picture,
.product-kit-item-thumb img {
  display: block;
  width: 100%;
  height: 100%;
}
.product-kit-selected-thumb img,
.product-kit-item-thumb img {
  object-fit: contain;
}

.product-kit-selected-title,
.product-kit-item-title {
  display: -webkit-box;
  overflow: hidden;
  color: #111827;
  font-weight: 600;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.product-kit-picker {
  position: static;
  margin-top: 0px;
}

.product-kit-picker-trigger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-width: 0px;
  min-height: 42px;
  padding: 9px 12px;
  border: 1px solid #c7d9f6;
  border-radius: 14px;
  background: #eef4ff;
  color: #0a2f83;
  font-size: 13px;
  line-height: 18px;
  font-weight: 600;
  cursor: pointer;
  list-style: none;
  overflow-wrap: anywhere;
  max-width: 100%;
  box-sizing: border-box;
}
.product-kit-picker-trigger::-webkit-details-marker {
  display: none;
}

.product-kit-selected {
  display: grid;
  gap: 8px;
  margin-top: 8px;
  min-width: 0px;
  max-width: 100%;
}

.product-kit-selected .product-kit-empty {
  margin-top: 0px;
}

.product-kit-selected-item {
  display: grid;
  grid-template-columns: 40px minmax(0px, 1fr) 28px;
  gap: 8px;
  align-items: center;
  min-width: 0px;
  max-width: 100%;
  padding: 6px;
  border: 1px solid #e5eaf2;
  border-radius: 12px;
  background: #fff;
}

.product-kit-selected-thumb {
  width: 40px;
  border-radius: 8px;
  background: #f9fafb;
}

.product-kit-selected-title {
  display: block;
  min-width: 0px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 11px;
  line-height: 14px;
}

.product-kit-selected-price {
  display: block;
  margin-top: 2px;
  color: #6b7280;
  font-size: 11px;
  line-height: 14px;
}

.product-kit-selected-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: 1px solid #e5eaf2;
  border-radius: 50%;
  background: #fff;
  color: #6b7280;
  cursor: pointer;
  transition: color 0.2s, border-color 0.2s, background-color 0.2s;
}
.product-kit-selected-remove:hover {
  border-color: #ef3340;
  background: #fff1f3;
  color: #ef3340;
}

.product-kit-picker[open] .product-kit-picker-trigger {
  border-color: #7fa8ee;
  box-shadow: 0 0 0 3px rgba(10, 47, 131, 0.14);
}

.product-kit-picker[open] {
  position: relative;
  z-index: 9200;
}

.product-kit-picker[open]:before {
  content: "";
  position: fixed;
  z-index: 9200;
  inset: 0px;
  background: rgba(15, 23, 42, 0.42);
}

.product-kit-picker-panel {
  position: fixed;
  z-index: 9201;
  left: 50%;
  top: 50%;
  width: min(920px, 100vw - 32px);
  max-height: min(760px, 100vh - 32px);
  box-sizing: border-box;
  overflow: auto;
  padding: 0px;
  border: 1px solid #e5eaf2;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0px 18px 50px rgba(24, 32, 56, 0.2);
  transform: translate(-50%, -50%);
}

.product-kit-picker-head {
  position: sticky;
  z-index: 2;
  top: 0px;
  padding: 18px 18px 12px;
  border-bottom: 1px solid #edf2f7;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(10px);
}

.product-kit-modal-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border: 1px solid #e5eaf2;
  border-radius: 50%;
  background: #fff;
  color: #6b7280;
  cursor: pointer;
  transition: color 0.2s, border-color 0.2s, background-color 0.2s;
}
.product-kit-modal-close:hover {
  border-color: #c7d9f6;
  background: #eef4ff;
  color: #0a2f83;
}

.product-kit-category-tabs {
  position: sticky;
  z-index: 2;
  top: 69px;
  display: flex;
  gap: 8px;
  padding: 12px 18px;
  border-bottom: 1px solid #edf2f7;
  background: rgba(255, 255, 255, 0.96);
  overflow-x: auto;
  scrollbar-width: thin;
}

.product-kit-category-tab {
  flex: 0 0 auto;
  min-height: 36px;
  padding: 8px 12px;
  border: 1px solid #e5eaf2;
  border-radius: 999px;
  background: #fff;
  color: #6b7280;
  font-size: 12px;
  line-height: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: color 0.2s, border-color 0.2s, background-color 0.2s, box-shadow 0.2s;
}
.product-kit-category-tab:hover, .product-kit-category-tab.is-active {
  border-color: #7fa8ee;
  background: #eef4ff;
  color: #0a2f83;
  box-shadow: 0 0 0 3px rgba(10, 47, 131, 0.14);
}

.product-kit-categories {
  display: grid;
  gap: 0px;
  min-width: 0px;
}

.product-kit-category {
  display: none;
  gap: 8px;
  padding: 18px;
}
.product-kit-category.is-active {
  display: grid;
}

.product-kit-items {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 8px;
  min-width: 0px;
}

.product-kit-modal-footer {
  position: sticky;
  z-index: 2;
  bottom: 0px;
  display: grid;
  grid-template-columns: minmax(0px, 1fr) minmax(180px, 240px);
  gap: 12px;
  align-items: center;
  padding: 14px 18px;
  border-top: 1px solid #edf2f7;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(10px);
}

.product-kit-modal-total {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 14px;
  color: #6b7280;
  font-size: 12px;
  line-height: 16px;
}
.product-kit-modal-total strong {
  color: #111827;
  font-weight: 600;
}

.product-kit-modal-save {
  min-height: 44px;
  border-radius: 14px;
}

.product-kit-item {
  position: relative;
  display: grid;
  grid-template-columns: 52px minmax(0px, 1fr);
  gap: 9px;
  align-items: center;
  min-width: 0px;
  min-height: 74px;
  padding: 8px;
  border: 1px solid #e5eaf2;
  border-radius: 14px;
  background: #f9fafb;
  color: #111827;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.2s, box-shadow 0.2s, transform 0.2s;
}
.product-kit-item:hover {
  border-color: #c7d9f6;
  box-shadow: 0px 4px 12px rgba(24, 32, 56, 0.04);
  transform: translateY(-1px);
}
.product-kit-item.is-active {
  border-color: #7fa8ee;
  background: #eef4ff;
  box-shadow: 0 0 0 3px rgba(10, 47, 131, 0.14), 0px 4px 12px rgba(24, 32, 56, 0.04);
}
.product-kit-item.is-active .product-kit-item-check {
  border-color: #0a2f83;
  background: #0a2f83;
}
.product-kit-item.is-active .product-kit-item-check:after {
  opacity: 1;
}

.product-kit-item-check {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 14px;
  height: 14px;
  border: 1px solid #d4dce8;
  border-radius: 50%;
  background: #fff;
}
.product-kit-item-check:after {
  content: "";
  position: absolute;
  left: 4px;
  top: 2px;
  width: 4px;
  height: 7px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  opacity: 0;
  transform: rotate(45deg);
}

.product-kit-item-thumb {
  width: 52px;
  border-radius: 12px;
}

.product-kit-item-body {
  min-width: 0px;
  padding-right: 12px;
}

.product-kit-item-title {
  font-size: 11px;
  line-height: 14px;
}

.product-kit-item-price {
  display: block;
  margin-top: 3px;
  color: #6b7280;
  font-size: 11px;
  line-height: 14px;
}

.product-kit-summary {
  display: grid;
  gap: 8px;
  min-width: 0px;
  max-width: 100%;
  height: 100%;
  min-height: 0px;
  padding: 10px;
  border-radius: 12px;
  background: #f9fafb;
  color: #6b7280;
  font-size: 12px;
  line-height: 16px;
  align-self: stretch;
}
.product-kit-summary strong {
  color: #111827;
  font-weight: 600;
}

.product-kit-summary-line,
.product-kit-summary-total {
  display: grid;
  grid-template-columns: minmax(0px, 1fr) minmax(max-content, auto);
  align-items: baseline;
  gap: 8px;
  min-width: 0px;
}

.product-kit-summary-line span,
.product-kit-summary-total span {
  min-width: 0px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.product-kit-summary-line strong,
.product-kit-summary-total strong {
  min-width: 0px;
  max-width: 100%;
  text-align: right;
  white-space: nowrap;
}

.product-kit-summary-line--discount strong {
  color: #ef3340;
}

.product-kit-summary-empty {
  padding: 8px 0px;
  color: #6b7280;
  border-top: 1px solid #edf2f7;
  border-bottom: 1px solid #edf2f7;
}

.product-kit-summary-total {
  padding-top: 8px;
  border-top: 1px solid #edf2f7;
}
.product-kit-summary-total strong {
  font-size: 18px;
  line-height: 22px;
}

.product-kit-submit {
  min-height: 40px;
  margin-top: 2px;
  border-radius: 12px;
  font-size: 13px;
  line-height: 18px;
}

/* Layout */
/* Final product kit overrides: keep the kit as one designed section. */
.product-layout-kit {
  grid-column: 1/-1;
}

.product-layout-kit .product-kit-offer {
  padding: clamp(18px, 1.7vw, 24px);
  border: 0px;
  border-radius: 22px;
  background: linear-gradient(105deg, #061b55 0%, #0a2f83 72%, #10429d 100%);
  color: #fff;
  box-shadow: 0 28px 70px rgba(5, 35, 92, 0.22);
}

.product-layout-kit .product-kit-head {
  margin-bottom: clamp(14px, 1.35vw, 18px);
}

.product-layout-kit .product-kit-title {
  color: #fff;
  font-size: clamp(24px, 1.9vw, 30px);
  line-height: 1.08;
  font-weight: 760;
}

.product-layout-kit .product-kit-subtitle {
  display: none;
}

.product-layout-kit .product-kit-steps,
.product-layout-kit .product-kit-offer--has-gift .product-kit-steps {
  grid-template-columns: minmax(250px, 0.82fr) 26px minmax(420px, 1.2fr) 26px minmax(310px, 0.9fr);
  gap: clamp(10px, 1.25vw, 18px);
  align-items: start;
}

.product-layout-kit .product-kit-offer--no-gift .product-kit-steps {
  grid-template-columns: minmax(250px, 0.82fr) 26px minmax(420px, 1.2fr) 26px minmax(310px, 0.9fr);
}

.product-layout-kit .product-kit-step {
  min-height: 0px;
  padding: clamp(14px, 1.2vw, 18px);
  border: 0px;
  border-radius: 18px;
  background: #fff;
  color: #111827;
  box-shadow: 0 18px 42px rgba(10, 8, 35, 0.16);
}

.product-layout-kit .product-kit-step-index {
  display: none;
}

.product-layout-kit .product-kit-step-content {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  gap: 12px;
}

.product-layout-kit .product-kit-step .product-kit-step-title {
  min-height: 0px;
  padding-left: 0px;
  color: #111827;
  font-size: 17px;
  line-height: 22px;
  font-weight: 760;
  gap: 10px;
}

.product-layout-kit .product-kit-step--product {
  padding: 0px;
  background: transparent;
  box-shadow: none;
}

.product-layout-kit .product-kit-step--product .product-kit-step-title {
  display: none;
}

.product-layout-kit .product-kit-formula {
  align-self: start;
  justify-self: center;
  margin-top: 128px;
  color: rgba(255, 255, 255, 0.9);
  font-size: 28px;
  line-height: 1;
  font-weight: 400;
}

.product-layout-kit .product-kit-badge {
  flex: 0 0 auto;
  min-height: 21px;
  padding: 4px 8px;
  border-radius: 999px;
  background: #eef4ff;
  color: #0a2f83;
  font-size: 10px;
  line-height: 13px;
  font-weight: 760;
  white-space: nowrap;
}

.product-layout-kit .product-kit-device-card {
  position: relative;
  display: grid;
  min-height: 300px;
  grid-template-rows: 1fr auto auto;
  gap: 12px;
  padding: 16px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 18px 42px rgba(10, 8, 35, 0.16);
}

.product-layout-kit .product-kit-device-labels {
  position: absolute;
  z-index: 2;
  top: 12px;
  left: 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  pointer-events: none;
}

.product-layout-kit .product-kit-device-label {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 3px 8px;
  border-radius: 7px;
  background: #0a2f83;
  color: #fff;
  font-size: 10px;
  line-height: 13px;
  font-weight: 600;
}

.product-layout-kit .product-kit-device-media {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 196px;
  padding: 6px;
  border-radius: 0px;
  background: #fff;
}

.product-layout-kit .product-kit-device-media img {
  display: block;
  width: auto;
  max-width: 92%;
  max-height: 196px;
  object-fit: contain;
}

.product-layout-kit .product-kit-device-title {
  color: #111827;
  font-size: 15px;
  line-height: 20px;
  font-weight: 650;
}

.product-layout-kit .product-kit-device-prices {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px 10px;
  margin-top: 2px;
}

.product-layout-kit .product-kit-device-old {
  color: #9ca3af;
  font-size: 14px;
  line-height: 18px;
  text-decoration: line-through;
}

.product-layout-kit .product-kit-device-prices strong {
  color: #111827;
  font-size: 20px;
  line-height: 25px;
  font-weight: 760;
}

.product-layout-kit .product-kit-gifts {
  display: grid;
  gap: 8px;
}

.product-layout-kit .product-kit-gifts-heading {
  display: none;
}

.product-layout-kit .product-kit-gifts .product-gifts {
  margin: 0px;
}

.product-layout-kit .product-kit-gifts .product-gifts-title {
  display: none;
}

.product-layout-kit .product-kit-gifts .product-gifts > .row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0px, 1fr));
  gap: 8px;
  margin: 0px;
}

.product-layout-kit .product-kit-gifts .product-gift-item,
.product-layout-kit .product-kit-gifts .product-gifts > .row > [class*=col] {
  width: 100%;
  max-width: none;
  padding: 0px;
}

.product-layout-kit .product-kit-gifts .product-gift {
  position: relative;
  display: grid !important;
  min-height: 62px;
  grid-template-columns: 38px minmax(0px, 1fr);
  align-items: center;
  justify-items: start;
  gap: 9px;
  padding: 18px 10px 8px;
  border: 1px solid transparent;
  border-radius: 14px;
  background: #f8fafc;
  cursor: pointer;
  transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.product-layout-kit .product-kit-gifts .product-gift:hover {
  border-color: rgba(47, 125, 240, 0.3);
  background: #f8fafc;
}

.product-layout-kit .product-kit-gifts .product-gift.is-active {
  border-color: rgba(47, 125, 240, 0.5);
  background: #f8fbff;
  box-shadow: inset 0 0 0 1px rgba(47, 125, 240, 0.14);
}

.product-gift-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  color: #0a2f83;
}

.product-gift-icon svg {
  display: block;
  width: 100%;
  height: 100%;
}

.product-gift-icon-bg {
  fill: #f4f7fb;
}

.product-gift-icon-fill {
  fill: #fff;
}

.product-gift-icon-shadow {
  fill: rgba(31, 88, 166, 0.12);
}

.product-gift-icon-soft {
  fill: rgba(47, 125, 240, 0.08);
}

.product-gift-icon-line,
.product-gift-icon-accent {
  fill: none;
  stroke: currentColor;
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.product-gift-icon-accent {
  stroke-width: 2.4;
}

.product-gift-icon-hole {
  fill: rgba(47, 125, 240, 0.22);
  stroke: currentColor;
  stroke-width: 2.2;
}

.product-gift-icon-hole--small {
  fill: currentColor;
  stroke: none;
}

.product-layout-kit .product-kit-gifts .product-gift.is-active .product-gift-icon-bg {
  fill: #eef5ff;
}

.product-layout-kit .product-kit-gifts .product-gift.is-active .product-gift-badge {
  background: #eef4ff;
  color: #0a2f83;
}

.product-layout-kit .product-kit-gifts .product-gift > .col,
.product-layout-kit .product-kit-gifts .product-gift > .col-auto {
  width: auto;
  max-width: none;
  min-width: 0px;
  padding: 0px;
}

.product-layout-kit .product-kit-gifts .product-gift > .col {
  width: 100%;
}

.product-layout-kit .product-kit-gifts .product-gift-badge {
  position: absolute;
  top: 6px;
  left: 10px;
  display: inline-flex;
  align-items: center;
  min-height: 15px;
  padding: 2px 5px;
  border-radius: 6px;
  background: #f4f7fb;
  color: #0a2f83;
  font-size: 9px;
  line-height: 12px;
  font-weight: 600;
}

.product-layout-kit .product-kit-gifts .product-gift-title {
  display: block;
  width: 100%;
  text-align: left;
  color: #111827;
  font-size: 12px;
  line-height: 14px;
  font-weight: 760;
  margin: 0px;
}

.product-layout-kit .product-kit-gifts .product-gift-description {
  display: block;
  width: 100%;
  text-align: left;
  color: #6b7280;
  font-size: 10px;
  line-height: 12px;
  margin: 2px 0px 0px;
}

.product-layout-kit .product-kit-inner-formula {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 16px;
  margin: -1px 0px;
  color: #0a2f83;
  font-weight: 700;
}

.product-layout-kit .product-kit-inner-formula span:first-child {
  font-size: 18px;
  line-height: 1;
}

.product-layout-kit .product-kit-picker-trigger {
  min-height: 38px;
  align-self: flex-start;
  width: 100%;
  padding: 8px 14px;
  border: 1px solid rgba(47, 125, 240, 0.24);
  border-radius: 999px;
  background: #eef4ff;
  color: #0a2f83;
  box-shadow: none;
}

.product-layout-kit .product-kit-selected {
  flex: 1 1 auto;
  display: grid;
  gap: 8px;
  margin-top: 0px;
}

.product-layout-kit .product-kit-selected > .product-kit-empty {
  display: none;
}

.product-layout-kit .product-kit-selected-item {
  display: grid;
  grid-template-columns: 58px minmax(0px, 1fr) auto;
  min-height: 78px;
  padding: 10px 12px;
  border: 0px;
  border-radius: 16px;
  background: #fff;
  box-shadow: inset 0 0 0 1px rgba(220, 226, 236, 0.9);
}

.product-layout-kit .product-kit-selected-thumb {
  width: 58px;
  height: 58px;
  border: 0px;
  background: transparent;
}

.product-layout-kit .product-kit-selected-title {
  color: #111827;
  font-size: 14px;
  line-height: 18px;
  font-weight: 650;
  display: block;
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
  line-clamp: unset;
  -webkit-line-clamp: unset;
  -webkit-box-orient: initial;
}

.product-layout-kit .product-kit-selected-price {
  margin-top: 4px;
  color: #111827;
  font-size: 18px;
  line-height: 22px;
  font-weight: 760;
}

.product-layout-kit .product-kit-summary {
  flex: 1 1 auto;
  gap: 9px;
  padding: 0px;
  border: 0px;
  background: transparent;
}

.product-layout-kit .product-kit-summary-media {
  display: grid;
  grid-template-columns: repeat(4, minmax(0px, 1fr));
  justify-content: stretch;
  align-items: center;
  gap: 8px;
  padding: 8px 0px 16px;
}

.product-layout-kit .product-kit-summary-thumb {
  width: 66px;
  height: 66px;
  margin: 0 auto;
  border: 0px;
  border-radius: 18px;
  background: #f7faff;
  overflow: hidden;
}

.product-layout-kit .product-kit-summary-thumb picture,
.product-layout-kit .product-kit-summary-thumb img,
.product-layout-kit .product-kit-summary-gift-icon,
.product-layout-kit .product-kit-summary-gift-icon .product-gift-icon {
  display: block;
  width: 100%;
  height: 100%;
}

.product-layout-kit .product-kit-summary-thumb img,
.product-layout-kit .product-kit-summary-gift-icon .product-gift-icon {
  object-fit: contain;
}

.product-layout-kit .product-kit-summary-gift-icon {
  padding: 0px;
  color: #0a2f83;
}

.product-layout-kit .product-kit-summary-gift-icon .product-gift-icon-bg {
  fill: #eef5ff;
}

.product-layout-kit .product-kit-summary-thumb + .product-kit-summary-thumb:before,
.product-layout-kit .product-kit-summary-accessories:not(:empty):before {
  display: none;
}

.product-layout-kit .product-kit-summary-accessories {
  display: contents;
}

.product-layout-kit .product-kit-summary-line {
  display: grid;
  grid-template-columns: minmax(0px, 1fr) auto;
  gap: 12px;
  align-items: baseline;
  padding: 1px 0px;
  color: #6b7280;
  border: 0px;
}

.product-layout-kit .product-kit-summary-line strong {
  color: #111827;
  font-size: 14px;
  line-height: 18px;
  font-weight: 760;
}

.product-layout-kit .product-kit-summary-line + .product-kit-summary-line {
  margin-top: 2px;
}

.product-layout-kit .product-kit-summary-line--gift strong {
  color: #167a2e;
  font-size: 13px;
  line-height: 17px;
}

.product-layout-kit .product-kit-summary-empty {
  padding: 8px 0px 10px;
  color: #6b7280;
  font-size: 12px;
  line-height: 16px;
  border-top: 1px solid #edf2f7;
  border-bottom: 1px solid #edf2f7;
}

.product-layout-kit .product-kit-summary-total {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4px;
  padding-top: 10px;
  border-top: 1px solid #edf2f7;
}

.product-layout-kit .product-kit-summary-total span {
  color: #6b7280;
  font-size: 14px;
  line-height: 18px;
}

.product-layout-kit .product-kit-summary-total strong {
  color: #111827;
  font-size: clamp(24px, 1.95vw, 32px);
  line-height: 1.1;
}

.product-layout-kit .product-kit-submit {
  min-height: 48px;
  margin-top: auto;
  border-radius: 999px;
  font-size: 14px;
  line-height: 18px;
}

/* Responsive */
@media (max-width: 1199px) {
  .product-layout-kit .product-kit-steps,
  .product-layout-kit .product-kit-offer--has-gift .product-kit-steps,
  .product-layout-kit .product-kit-offer--no-gift .product-kit-steps {
    grid-template-columns: 1fr;
  }
  .product-layout-kit .product-kit-formula {
    display: flex;
    margin: -4px 0px;
  }
  .product-layout-kit .product-kit-step,
  .product-layout-kit .product-kit-device-card {
    min-height: 0px;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .product-kit-items {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767px) {
  .product-kit-offer {
    width: 100%;
    max-width: 100%;
    min-width: 0px;
    overflow: hidden;
  }
  .product-layout-kit,
  .product-kit-steps,
  .product-kit-step-content,
  .product-kit-picker,
  .product-kit-selected,
  .product-kit-summary {
    box-sizing: border-box;
    max-width: 100%;
    min-width: 0px;
  }
  .product-kit-head {
    align-items: stretch;
  }
  .product-kit-step {
    width: 100%;
    max-width: 100%;
    min-width: 0px;
    overflow: hidden;
  }
  .product-kit-step-content,
  .product-kit-item-body,
  .product-kit-selected-body {
    min-width: 0px;
  }
  .product-kit-items {
    grid-template-columns: minmax(0px, 1fr);
  }
  .product-kit-picker-trigger,
  .product-kit-selected,
  .product-kit-summary {
    width: 100%;
    max-width: 100%;
    min-width: 0px;
    box-sizing: border-box;
  }
  .product-kit-picker-trigger {
    display: flex;
    justify-content: center;
    overflow: hidden;
  }
  .product-kit-picker-trigger span:last-child {
    min-width: 0px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .product-kit-empty,
  .product-kit-selected-title {
    overflow-wrap: anywhere;
  }
}
@media (max-width: 575px) {
  .product-layout-kit .product-kit-offer {
    margin-right: calc(var(--container-gutter) * -1);
    margin-left: calc(var(--container-gutter) * -1);
    padding: 18px 14px 24px;
    border-radius: 0px;
  }
  .product-kit-picker-panel {
    left: 8px;
    right: 8px;
    top: max(8px, env(safe-area-inset-top));
    bottom: max(8px, env(safe-area-inset-bottom));
    width: auto;
    max-width: none;
    max-height: none;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    transform: none;
  }
  .product-kit-picker-head {
    padding: 14px 14px 10px;
    flex: 0 0 auto;
  }
  .product-kit-category-tabs {
    top: 61px;
    padding: 10px 14px;
    max-width: 100%;
    scrollbar-width: none;
  }
  .product-kit-category-tabs::-webkit-scrollbar {
    display: none;
  }
  .product-kit-categories {
    min-height: 0px;
    overflow: auto;
  }
  .product-kit-category {
    padding: 14px;
  }
  .product-kit-items {
    grid-template-columns: 1fr;
  }
  .product-kit-item {
    grid-template-columns: 48px minmax(0px, 1fr);
    width: 100%;
  }
  .product-kit-modal-footer {
    flex: 0 0 auto;
    grid-template-columns: 1fr;
    padding: 12px 14px;
  }
  body:has(.product-kit-picker[open]) {
    overflow: hidden;
  }
  body.product-kit-modal-open .insales-section-header,
  body.product-kit-modal-open .site-header,
  body.product-kit-modal-open .mobile-header-search,
  body.product-kit-modal-open .fixed-panels,
  body:has(.product-kit-picker[open]) .insales-section-header,
  body:has(.product-kit-picker[open]) .site-header,
  body:has(.product-kit-picker[open]) .mobile-header-search,
  body:has(.product-kit-picker[open]) .fixed-panels {
    visibility: hidden;
    pointer-events: none;
  }
  .product-layout-kit .product-kit-head {
    display: block;
    margin-bottom: 12px;
  }
  .product-layout-kit .product-kit-title {
    font-size: 23px;
    line-height: 28px;
  }
  .product-layout-kit .product-kit-subtitle {
    display: none;
  }
  .product-layout-kit .product-kit-step {
    padding: 12px;
    border-radius: 16px;
  }
  .product-layout-kit .product-kit-step .product-kit-step-title {
    font-size: 16px;
    line-height: 21px;
  }
  .product-layout-kit .product-kit-device-card {
    gap: 8px;
    padding: 12px;
    border-radius: 16px;
  }
  .product-layout-kit .product-kit-device-media {
    min-height: 130px;
  }
  .product-layout-kit .product-kit-device-media img {
    max-height: 130px;
  }
  .product-layout-kit .product-kit-device-title {
    font-size: 14px;
    line-height: 18px;
  }
  .product-layout-kit .product-kit-device-prices strong {
    font-size: 20px;
    line-height: 24px;
  }
  .product-layout-kit .product-kit-gifts .product-gifts > .row {
    gap: 8px;
  }
  .product-layout-kit .product-kit-gifts .product-gift {
    min-height: 76px;
    grid-template-columns: 44px minmax(0px, 1fr);
    justify-items: start;
    gap: 8px;
    padding: 21px 9px 9px;
  }
  .product-gift-icon {
    width: 44px;
    height: 44px;
  }
  .product-layout-kit .product-kit-gifts .product-gift-title {
    font-size: 12px;
    line-height: 14px;
  }
  .product-layout-kit .product-kit-gifts .product-gift-description {
    font-size: 10px;
    line-height: 13px;
  }
  .product-layout-kit .product-kit-selected-item {
    grid-template-columns: 52px minmax(0px, 1fr) 28px;
    min-height: 74px;
    padding: 9px;
  }
  .product-layout-kit .product-kit-selected-thumb {
    width: 52px;
    height: 52px;
  }
  .product-layout-kit .product-kit-selected-title {
    font-size: 13px;
    line-height: 17px;
  }
  .product-layout-kit .product-kit-selected-price {
    font-size: 17px;
    line-height: 21px;
  }
  .product-layout-kit .product-kit-summary-media {
    grid-template-columns: repeat(4, minmax(52px, 1fr));
    justify-content: stretch;
    gap: 10px;
  }
  .product-layout-kit .product-kit-summary-thumb {
    width: 58px;
    height: 58px;
  }
}
.product-prices {
  margin: 0px;
  color: #111827;
  font-weight: 600;
}

.product-price {
  color: #111827;
  transition: color 0.2s linear;
}
.product-price--sale {
  color: #111827;
}

.product-old_price {
  margin-left: 10px;
  color: #9ca3af;
  text-decoration: line-through;
}

.product-discount {
  display: block;
  color: #ef3340;
  font-size: 14px;
  line-height: 18px;
}

.product-prices--purchase {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 3px 8px;
  margin: 0px;
  padding: 0px 0px 12px;
  border-bottom: 1px solid #edf2f7;
}
.product-prices--purchase .product-prices-label {
  order: 1;
  flex: 0 0 100%;
  color: #6b7280;
  font-size: 12px;
  line-height: 15px;
  font-weight: 500;
}
.product-prices--purchase .product-price {
  order: 2;
  display: block;
  color: #111827;
  font-size: clamp(26px, 1.7vw, 34px);
  line-height: 1.02;
  font-weight: 760;
  letter-spacing: 0;
  white-space: nowrap;
}
.product-prices--purchase .product-old_price {
  order: 3;
  margin-left: 0px;
  align-self: center;
  font-size: 14px;
  line-height: 18px;
}
.product-prices--purchase .product-discount {
  order: 4;
  flex: 0 0 100%;
  font-size: 12px;
  line-height: 16px;
}

@media (max-width: 575px) {
  .product-prices--purchase {
    gap: 8px;
  }
  .product-prices--purchase .product-price {
    font-size: clamp(38px, 11vw, 56px);
    line-height: 0.98;
    white-space: normal;
  }
}
.product-description {
  margin: 0px 0px 16px;
  padding: 9px 12px;
  border: 1px solid rgba(244, 63, 94, 0.14);
  border-left: 3px solid rgba(244, 63, 94, 0.85);
  border-radius: 12px;
  background: linear-gradient(90deg, rgba(255, 241, 243, 0.92), rgba(255, 248, 249, 0.74));
  color: #ef3340;
  font-size: 12px;
  line-height: 14px;
  font-weight: 600;
}
.product-description h1, .product-description h2, .product-description h3, .product-description p,
.product-description span {
  margin: 0px !important;
  color: currentColor !important;
  font: inherit !important;
  line-height: inherit !important;
}

.product-purchase-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: clamp(14px, 1.2vw, 18px);
  border: 1px solid rgba(229, 234, 242, 0.88);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.86)), #fff;
  box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.8), 0px 16px 34px rgba(24, 32, 56, 0.06);
}
.product-purchase-card .product-purchase-status {
  display: flex;
  justify-content: flex-start;
  margin: 0px 0px -2px;
}
.product-purchase-card .product-available--purchase {
  width: fit-content;
  max-width: 100%;
}
.product-purchase-card .product-description--purchase {
  margin: 0px;
  max-width: 100%;
  font-size: 12px;
  line-height: 14px;
}
.product-purchase-card .product-form {
  margin: 0px;
  padding: 0px;
  border: 0px;
  background: transparent;
  box-shadow: none;
}
.product-purchase-card .product-buttons-types:not(.product-buttons-types--soldout) {
  display: block;
}
.product-purchase-card .product-buy-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin: 0px;
  align-items: stretch;
}
.product-purchase-card .product-buy-summary {
  display: none;
}
.product-purchase-card .product-buy-actions {
  min-width: 0px;
  display: grid;
  gap: 10px;
}
.product-purchase-card .product-quantity {
  display: none;
}
.product-purchase-card .product-total {
  flex: 1 1 auto;
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  align-items: start;
  margin: 0px;
  padding: 12px 14px;
  border: 1px solid #edf2f7;
  border-radius: 14px;
  background: rgba(249, 250, 251, 0.8);
  color: #6b7280;
  text-align: left;
  min-width: 0px;
}
.product-purchase-card .product-total-breakdown {
  display: grid;
  gap: 5px;
  grid-column: 1;
  padding-bottom: 0px;
  border-bottom: 0px;
}
.product-purchase-card .product-total-pay {
  display: grid;
  grid-template-columns: minmax(0px, 1fr) auto auto;
  gap: 8px;
  align-items: baseline;
  padding-bottom: 8px;
  border-bottom: 1px solid #edf2f7;
}
.product-purchase-card .product-total-pay span {
  min-width: 0px;
  color: #6b7280;
  font-size: 12px;
  line-height: 15px;
}
.product-purchase-card .product-total-pay strong {
  color: #111827;
  font-size: 16px;
  line-height: 20px;
  font-weight: 760;
  white-space: nowrap;
}
.product-purchase-card .product-total-pay s {
  color: #9ca3af;
  font-size: 12px;
  line-height: 15px;
  white-space: nowrap;
}
.product-purchase-card .product-total-line {
  display: grid;
  grid-template-columns: minmax(0px, 1fr) minmax(max-content, auto);
  gap: 8px;
  color: #6b7280;
  font-size: 12px;
  line-height: 15px;
}
.product-purchase-card .product-total-line span {
  min-width: 0px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.product-purchase-card .product-total-line strong {
  min-width: 0px;
  max-width: 100%;
  color: #111827;
  font-weight: 600;
  text-align: right;
  white-space: nowrap;
}
.product-purchase-card .product-total-line--discount strong {
  color: #167a2e;
}
.product-purchase-card .product-total-line--gift strong {
  color: #167a2e;
}
.product-purchase-card .product-total-label,
.product-purchase-card .product-total-note {
  color: #6b7280;
  font-size: 12px;
  line-height: 15px;
}
.product-purchase-card .product-total-label {
  grid-column: 1/-1;
  color: #111827;
  font-size: 12px;
  line-height: 15px;
  font-weight: 760;
}
.product-purchase-card .product-selected-gift,
.product-purchase-card .product-selected-kit,
.product-purchase-card .product-kit-discount-note {
  display: none !important;
}
.product-purchase-card .product-selected-gift span,
.product-purchase-card .product-selected-kit span,
.product-purchase-card .product-kit-discount-note span {
  display: none;
}
.product-purchase-card .product-delivery-mini {
  display: grid;
  gap: 8px;
  margin: 0px;
  padding: 12px 14px;
  border: 1px solid #edf2f7;
  border-radius: 14px;
  background: rgba(249, 250, 251, 0.8);
  color: #6b7280;
  min-width: 0px;
}
.product-purchase-card .product-delivery-mini-title {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #111827;
  font-size: 12px;
  line-height: 15px;
  font-weight: 760;
}
.product-purchase-card .product-delivery-mini-lines {
  display: grid;
  gap: 5px;
}
.product-purchase-card .product-delivery-mini-line {
  display: grid;
  grid-template-columns: minmax(0px, 1fr) auto;
  gap: 8px;
  align-items: baseline;
  font-size: 12px;
  line-height: 15px;
}
.product-purchase-card .product-delivery-mini-line span {
  min-width: 0px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.product-purchase-card .product-delivery-mini-line strong {
  color: #111827;
  font-weight: 600;
  text-align: right;
  white-space: nowrap;
}
.product-purchase-card .product-delivery-mini-line:last-child strong {
  color: #167a2e;
}
.product-purchase-card .product-kit-discount-note {
  display: inline-flex;
  width: fit-content;
  padding: 2px 7px;
  border-radius: 999px;
  background: #eef4ff;
  color: #0a2f83;
  font-weight: 600;
}
.product-purchase-card .button--counter,
.product-purchase-card .input--counter {
  height: 40px;
  border-radius: 12px;
}
.product-purchase-card [data-quantity] {
  display: grid;
  grid-template-columns: 40px minmax(44px, 1fr) 40px;
}
.product-purchase-card [data-quantity] > .col,
.product-purchase-card [data-quantity] > .col-auto {
  width: auto;
  max-width: none;
  padding: 0px;
}
.product-purchase-card .product-add {
  height: auto;
  display: grid;
  gap: 6px;
}
.product-purchase-card .product-add [data-item-add] {
  width: 100%;
  height: auto;
  min-height: 56px;
  border-radius: 14px;
  font-size: 16px;
  box-shadow: 0px 14px 28px rgba(10, 47, 131, 0.22);
  transition: transform 180ms cubic-bezier(0.22, 0.74, 0.46, 0.97), box-shadow 180ms ease, background-color 180ms;
}
.product-purchase-card .product-add [data-item-add]:active {
  transform: translateY(1px) scale(0.99);
}
.product-purchase-card .product-quick_checkout {
  margin: 4px 0px 0px;
  text-align: center;
}
.product-purchase-card .product-quick_checkout .button {
  width: 100%;
  min-height: 34px;
  padding: 0px 8px;
  font-size: 13px;
  line-height: 18px;
  white-space: nowrap;
}

.product-kit-empty {
  margin-top: 8px;
  min-width: 0px;
  max-width: 100%;
  padding: 9px 10px;
  border-radius: 12px;
  background: #f9fafb;
  color: #6b7280;
  font-size: 12px;
  line-height: 16px;
}

.product-available {
  position: relative;
  display: inline-flex;
  align-items: center;
  margin: 0px;
  padding: 7px 10px 7px 24px;
  border-radius: 999px;
  background: #effaf2;
  color: #167a2e;
  font-size: 12px;
  line-height: 14px;
}
.product-available:before {
  content: "";
  position: absolute;
  left: 10px;
  top: 50%;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #0fce2d;
  transform: translateY(-50%);
}
.product-available:after {
  content: attr(data-text-available);
  font-weight: 600;
}
.product-available--soldout {
  background: #fff1f3;
  color: #ef3340;
}
.product-available--soldout:before {
  background: #ef3340;
}
.product-available--soldout:after {
  content: attr(data-text-soldout);
}

.product-buttons {
  position: relative;
}
.product-buttons-types--soldout {
  display: none;
}
.product-buttons:not(.product-buttons--soldout) > .product-buttons-types--soldout {
  display: none;
}
.product-buttons--soldout .product-buttons-types {
  display: none;
}
.product-buttons--soldout .product-buttons-types--soldout {
  display: block;
}

.product-mobile-buybar {
  display: none;
}

body.is-mobile-catalog-open .product-mobile-buybar,
body.product-kit-in-view .product-mobile-buybar,
body.product-kit-modal-open .product-mobile-buybar,
body:has(.user_icons-item.is-open) .product-mobile-buybar,
body:has(.user_icons-item-menu.is-open) .product-mobile-buybar,
body:has(.user_icons-item-menu .js-popup-menu.is-open) .product-mobile-buybar,
body:has(.product-kit-picker[open]) .product-mobile-buybar {
  display: none !important;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

@media (min-width: 1600px) {
  .product-purchase-card {
    padding: 18px;
  }
}
@media (min-width: 1200px) and (max-width: 1599px) {
  .product-purchase-card {
    padding: 16px;
  }
}
@media (max-width: 767px) {
  .product-purchase-card .product-buy-row {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 575px) {
  .product-purchase-card {
    gap: 10px;
    padding: 12px;
    border-radius: 14px;
    box-shadow: 0px 8px 20px rgba(24, 32, 56, 0.04);
  }
  .product-purchase-card .product-quantity {
    width: 100%;
  }
  .product-purchase-card .product-buy-summary {
    display: none;
  }
  .product-purchase-card .product-buy-actions {
    min-width: 0px;
  }
  .product-purchase-card .product-total {
    align-content: center;
    gap: 6px;
  }
  .product-purchase-card .product-total-breakdown {
    padding-bottom: 0px;
    border-bottom: 0px;
  }
  .product-purchase-card .product-total-line {
    display: grid;
    grid-template-columns: minmax(0px, 1fr) auto;
    gap: 6px;
    font-size: 11px;
    line-height: 14px;
  }
  .product-purchase-card .product-total-pay {
    grid-template-columns: minmax(0px, 1fr) auto;
  }
  .product-purchase-card .product-total-pay s {
    grid-column: 2;
  }
  .product-purchase-card .product-add {
    height: auto;
    display: grid;
    gap: 8px;
  }
  .product-purchase-card .product-add [data-item-add] {
    min-height: 52px;
  }
  .product-purchase-card .product-quick_checkout {
    margin: 0px;
  }
  .product-purchase-card .product-quick_checkout .button {
    min-height: 30px;
  }
  .product-mobile-buybar {
    position: fixed;
    z-index: 3500;
    left: 10px;
    right: 10px;
    bottom: 74px;
    display: grid;
    grid-template-columns: minmax(0px, 1fr) minmax(126px, 42%);
    gap: 10px;
    align-items: center;
    padding: 10px;
    border: 1px solid #e5eaf2;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0px 18px 50px rgba(24, 32, 56, 0.2);
    opacity: 0;
    visibility: hidden;
    transform: translateY(12px);
    transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
  }
  .product-mobile-buybar.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0px);
  }
  .product-mobile-buybar .product-available {
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 11px;
    line-height: 13px;
  }
  .product-mobile-buybar-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0px;
  }
  .product-mobile-buybar-status,
  .product-mobile-buybar-total {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0px;
  }
  .product-mobile-buybar-quantity,
  .product-mobile-buybar-label,
  .product-mobile-buybar-kit {
    color: #6b7280;
    font-size: 11px;
    line-height: 14px;
  }
  .product-mobile-buybar-total {
    flex-direction: column;
    align-items: flex-start;
    row-gap: 2px;
  }
  .product-mobile-buybar-old {
    color: #6b7280;
    font-size: 11px;
    line-height: 14px;
    white-space: nowrap;
  }
  .product-mobile-buybar-price {
    color: #111827;
    font-size: 18px;
    line-height: 22px;
    font-weight: 600;
    white-space: nowrap;
  }
  .product-mobile-buybar-breakdown {
    display: grid;
    gap: 1px;
    width: 100%;
    min-width: 0px;
    margin-top: 1px;
  }
  .product-mobile-buybar-line {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    color: #6b7280;
    font-size: 10px;
    line-height: 13px;
  }
  .product-mobile-buybar-line strong {
    color: #111827;
    font-weight: 600;
    white-space: nowrap;
  }
  .product-mobile-buybar-line--discount strong {
    color: #167a2e;
  }
  .product-mobile-buybar-kit {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
    display: -webkit-box;
    line-clamp: 2;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
  .product-mobile-buybar-button {
    min-height: 48px;
    border-radius: 14px;
    font-size: 14px;
    line-height: 18px;
  }
  .product-mobile-buybar.is-soldout .product-mobile-buybar-button {
    background: #f9fafb;
    color: #6b7280;
    cursor: default;
  }
}
.product-properties {
  display: grid;
  grid-template-columns: repeat(2, minmax(0px, 1fr));
  gap: 16px;
  margin: 0px 0px 40px;
}
.product-properties-group {
  min-width: 0px;
  padding: 18px;
  border: 1px solid #e5eaf2;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0px 8px 20px rgba(24, 32, 56, 0.04);
}
.product-properties-group-title {
  margin: 0px 0px 14px;
  color: #111827;
  font-size: 16px;
  line-height: 20px;
  font-weight: 600;
}
.product-properties-group-list {
  display: grid;
  gap: 10px;
}
.product-properties-item {
  display: grid;
  grid-template-columns: minmax(120px, 0.42fr) minmax(0px, 0.58fr);
  gap: 12px;
  align-items: start;
  margin: 0px;
  width: 100%;
}
.product-properties-item dt {
  margin: 0px;
  color: #6b7280;
  font-size: 13px;
  line-height: 18px;
  font-weight: 400;
}
.product-properties-item dd {
  margin: 0px;
  color: #111827;
  font-size: 13px;
  line-height: 18px;
  font-weight: 600;
}

.product-option-group {
  min-width: 0px;
}

.links_in_prod_cont {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  order: 2;
}

.link_name-qq {
  margin: 0px 0px 10px;
  color: #374151;
  font-size: 11px;
  line-height: 14px;
  font-weight: bold;
  text-transform: uppercase;
}

.product-option-value {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  margin: 0px;
  border: 1px solid #e5eaf2;
  border-radius: 8px;
  background: #fff;
  text-decoration: none;
  transition: background-color 0.2s, border-color 0.2s, box-shadow 0.2s, transform 0.2s;
}
.product-option-value:hover {
  border-color: #c7d9f6;
  background: rgba(238, 244, 255, 0.72);
  transform: translateY(-1px);
}
.product-option-value.is-active {
  border-color: #7fa8ee;
  background: rgba(238, 244, 255, 0.86);
  box-shadow: 0 0 0 3px rgba(10, 47, 131, 0.14);
}
.product-option-value.is-soldout {
  opacity: 0.48;
  color: #9ca3af;
  text-decoration: none;
}
.product-option-value.is-soldout img {
  filter: grayscale(1);
}
.product-option-value.is-soldout span {
  color: #9ca3af;
  text-decoration: line-through;
}

.product-option-value--image {
  padding: 6px;
  border-radius: 12px;
  box-shadow: 0px 6px 14px rgba(24, 32, 56, 0.04);
}
.product-option-value--image img {
  display: block;
  width: 48px;
  height: auto;
  border-radius: 12px;
}

.product-option-group--media .links_in_prod_cont {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  gap: 9px;
  max-width: 100%;
  overflow-x: auto;
  padding-bottom: 2px;
  scrollbar-width: thin;
}
.product-option-group--media .product-option-value {
  flex: 0 0 auto;
}

.product-config .product-option-group:not(.product-option-group--media) .links_in_prod_cont {
  justify-content: flex-start;
}

.product-option-group--media .product-option-value--image img {
  width: 52px;
}

.product-option-value--text {
  min-height: 40px;
  padding: 8px 13px;
  border-radius: 12px;
  text-align: center;
  max-width: 100%;
}
.product-option-value--text span {
  display: block;
  color: #6b7280;
  font-size: 12px;
  line-height: 15px;
  font-weight: bold;
  text-transform: uppercase;
  transition: color 0.2s;
}
.product-option-value--text.is-active span {
  color: #0a2f83;
}

.protsessor span {
  text-transform: capitalize !important;
}

.align-flags {
  align-items: flex-end !important;
}

@media (max-width: 767px) {
  .product-config > .product-option-group,
  .product-config > .product-option-group--media {
    grid-column: 1/-1;
  }
}
@media (max-width: 575px) {
  .product-option-value--image img {
    width: 50px;
  }
}
/* 8. Product page / Hero and data */
.insales-section-product {
  padding: 18px 0px 42px;
}
.insales-section-product > .container {
  max-width: 1720px !important;
  padding-left: clamp(24px, 3vw, 56px);
  padding-right: clamp(24px, 3vw, 56px);
}

.template--product.layout--box .layout-page {
  max-width: 1760px;
}

.product-layout {
  position: relative;
  display: grid;
  grid-template-columns: minmax(250px, 0.27fr) minmax(430px, 0.4fr) minmax(300px, 0.33fr);
  grid-template-rows: auto minmax(0px, 1fr) auto;
  gap: clamp(18px, 2vw, 36px);
  align-items: center;
  max-width: none;
  margin: 0px auto;
  min-height: clamp(620px, 43vw, 780px);
  padding: clamp(24px, 3vw, 54px);
  border: 1px solid #e5eaf2;
  border-radius: clamp(22px, 2vw, 34px);
  background: radial-gradient(circle at 25% 12%, rgba(255, 255, 255, 0.94) 0%, rgba(255, 255, 255, 0) 42%), linear-gradient(145deg, #fff 0%, #f9fafb 52%, #f9fafb 100%);
  box-shadow: 0px 28px 80px rgba(24, 32, 56, 0.08);
  overflow: hidden;
  isolation: isolate;
}
.product-layout:before, .product-layout:after {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
  border-radius: 50%;
}
.product-layout:before {
  width: clamp(260px, 24vw, 430px);
  height: clamp(260px, 24vw, 430px);
  left: clamp(40px, 7vw, 120px);
  top: clamp(10px, 3vw, 52px);
  background: radial-gradient(circle, rgba(255, 255, 255, 0.96) 0%, rgba(243, 246, 251, 0.62) 52%, rgba(243, 246, 251, 0) 72%);
  filter: blur(4px);
}
.product-layout:after {
  width: clamp(260px, 24vw, 420px);
  height: clamp(160px, 18vw, 300px);
  right: clamp(-60px, -4vw, -28px);
  bottom: clamp(-80px, -5vw, -36px);
  background: radial-gradient(circle, rgba(10, 47, 131, 0.06) 0%, rgba(10, 47, 131, 0) 70%);
}

.product-layout-gallery,
.product-layout-details,
.product-layout-config,
.product-layout-buy,
.product-layout-kit {
  min-width: 0px;
}

.product-layout-gallery {
  grid-column: 2;
  grid-row: 1/span 2;
  align-self: center;
}

.product-layout-details {
  display: contents;
  margin: 0px;
}

.product-layout-config {
  display: contents;
}

.product-head {
  position: relative;
  z-index: 2;
  grid-column: 1;
  grid-row: 1;
  align-self: end;
  min-width: 0px;
}

.product-layout-buy {
  display: grid;
  gap: 14px;
  align-content: start;
  min-height: 0px;
  grid-column: 3;
  grid-row: 1/span 2;
  align-self: center;
}

.product-commerce-row {
  display: contents;
}

.product-config-column {
  position: relative;
  z-index: 2;
  grid-column: 1;
  grid-row: 2;
  align-self: start;
  min-width: 0px;
}

.product-layout-kit {
  position: relative;
  z-index: 1;
  grid-column: 1/-1;
  grid-row: 3;
  display: grid;
  grid-template-columns: minmax(0px, 1fr);
  gap: 12px;
  margin-top: clamp(8px, 1vw, 14px);
}

.product-data {
  margin: 0px;
  padding: 0px;
}

.product-title {
  max-width: 360px;
  margin: 0px;
  color: #111827;
  font-size: clamp(28px, 2vw, 42px);
  line-height: 1.04;
  font-weight: 680;
  letter-spacing: 0;
}

.product-meta-row {
  position: relative;
  z-index: 2;
  grid-column: 1;
  grid-row: 1;
  align-self: end;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 12px 0px 0px;
  padding-top: clamp(120px, 12vw, 190px);
}
.product-meta-row > .col-auto {
  width: auto;
  max-width: 100%;
  padding: 0px;
}

.product-sku {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 10px;
  border: 1px solid #edf2f7;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.72);
  color: #6b7280;
  font-size: 12px;
  line-height: 16px;
}

.product-extras {
  border: 1px solid #e5eaf2;
  border-radius: 18px;
  background: #fff;
  margin: 0px 0px 14px;
  overflow: hidden;
  box-shadow: 0px 8px 20px rgba(24, 32, 56, 0.04);
}
.product-extras > .row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  margin: 0px;
}
.product-extras > .row > .col,
.product-extras > .row > .col-auto {
  width: 100%;
  max-width: none;
  padding: 0px;
  border-right: 1px solid #e5eaf2;
}
.product-extras > .row > .col:last-child,
.product-extras > .row > .col-auto:last-child {
  border-right: 0px;
}
.product-extras .button,
.product-extras .rating a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 6px 10px;
  color: #6b7280;
  font-family: "Inter", sans-serif;
  font-size: 13px;
  line-height: 18px;
  white-space: nowrap;
}
.product-extras .rating {
  padding: 0px;
}
.product-extras .rating-item {
  font-size: 13px;
}
.product-extras .rating-link,
.product-extras .button span:not(:empty) {
  margin-left: 6px;
}
.product-extras .rating a {
  flex-wrap: wrap;
  gap: 1px 3px;
}
.product-extras .rating-link {
  flex-basis: 100%;
  margin-left: 0px;
  color: #0a2f83;
  font-size: 11px;
  line-height: 13px;
  text-align: center;
}
.product-extras .rating-link .far {
  display: none;
}
.product-extras .button--compares,
.product-extras .button--favorites {
  gap: 6px;
  min-width: 0px;
  width: 100%;
  font-size: 12px;
}
.product-extras .button--compares span:not(.far):not(.fas):not(.fab),
.product-extras .button--favorites span:not(.far):not(.fas):not(.fab) {
  display: inline !important;
  margin-left: 0px;
  min-width: 0px;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.product-rating--headline {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 12px 0px 0px;
}
.product-rating--headline .rating a {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 3px 5px;
  color: #0a2f83;
  font-size: 13px;
  line-height: 16px;
}
.product-rating--headline .rating-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-left: 4px;
  color: #0a2f83;
  font-size: 13px;
  line-height: 16px;
}

.product-rating-compare {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  min-width: 30px;
  min-height: 30px;
  padding: 0px;
  border: 1px solid #e5eaf2;
  border-radius: 50%;
  background: #fff;
  color: #0a2f83;
}
.product-rating-compare:hover, .product-rating-compare.is-active, .product-rating-compare.is-added {
  border-color: #c7d9f6;
  background: #eef4ff;
  color: #0a2f83;
}
.product-rating-compare .product-rating-compare-text {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0px;
  border: 0px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}

.product-extras--purchase-actions {
  margin: 2px 0px 0px;
  padding: 10px 0px 0px;
  border-top: 1px solid #edf2f7;
  border-right: 0px;
  border-bottom: 0px;
  border-left: 0px;
  border-radius: 14px;
  background: transparent;
  box-shadow: none;
}
.product-extras--purchase-actions > .row {
  grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
  gap: 8px;
}
.product-extras--purchase-actions .button {
  min-height: 36px;
  padding: 7px 9px;
  border: 1px solid #e5eaf2;
  border-radius: 12px;
  background: #f9fafb;
  font-size: 12px;
  line-height: 16px;
  color: #6b7280;
}
.product-extras--purchase-actions .button:hover {
  border-color: #c7d9f6;
  color: #0a2f83;
  background: #eef4ff;
}

.product-config {
  display: grid;
  grid-template-columns: 1fr;
  align-items: flex-start;
  gap: 16px 18px;
  margin: 0px;
  padding: clamp(14px, 1.2vw, 18px);
  border: 1px solid #e5eaf2;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0px 4px 12px rgba(24, 32, 56, 0.04);
}
.product-config > .product-option-group {
  min-width: 0px;
  max-width: 100%;
  align-self: start;
  padding: 0px;
  border: 0px;
  border-radius: 0px;
  background: transparent;
}
.product-config > .product-option-group--media {
  grid-column: 1/-1;
}

.product-layout-config > [itemprop=offers] {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}

.product-collections,
.product-videos {
  margin-bottom: 20px;
}

@media (min-width: 1600px) {
  .product-layout {
    grid-template-columns: minmax(300px, 0.27fr) minmax(520px, 0.41fr) minmax(340px, 0.32fr);
    gap: clamp(34px, 2.6vw, 58px);
  }
  .product-title {
    max-width: 430px;
    font-size: clamp(32px, 2vw, 44px);
    line-height: 1.04;
  }
}
@media (min-width: 1200px) and (max-width: 1599px) {
  .insales-section-product > .container {
    padding-left: 24px;
    padding-right: 24px;
  }
  .product-layout {
    grid-template-columns: minmax(260px, 0.28fr) minmax(400px, 0.39fr) minmax(290px, 0.33fr);
    gap: clamp(18px, 1.6vw, 28px);
    max-width: none;
  }
  .product-layout-gallery {
    grid-column: 2;
  }
  .product-layout-config {
    display: contents;
  }
  .product-layout-buy {
    grid-column: 3;
  }
  .product-layout-buy {
    position: static;
  }
  .product-layout-kit {
    grid-column: 1/-1;
  }
  .product-title {
    font-size: clamp(28px, 2.2vw, 38px);
    line-height: 1.06;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .insales-section-product > .container {
    padding-left: 28px;
    padding-right: 28px;
  }
  .product-layout {
    grid-template-columns: minmax(310px, 0.42fr) minmax(0px, 0.58fr);
    grid-template-rows: auto;
    max-width: none;
    min-height: 0px;
    gap: 18px;
    padding: 18px;
    border-radius: 24px;
  }
  .product-layout-config {
    grid-column: 2;
    display: grid;
    align-content: start;
    gap: clamp(14px, 1.4vw, 20px);
    padding: clamp(16px, 1.6vw, 24px);
    border: 1px solid rgba(255, 255, 255, 0.82);
    border-radius: clamp(20px, 1.7vw, 28px);
    background: rgba(255, 255, 255, 0.76);
    box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.84), 0px 18px 46px rgba(24, 32, 56, 0.06);
    backdrop-filter: blur(16px);
  }
  .product-head,
  .product-meta-row,
  .product-config-column,
  .product-layout-buy {
    grid-column: auto;
    grid-row: auto;
  }
  .product-layout-kit {
    grid-column: 1/-1;
  }
  .product-layout-buy {
    grid-column: auto;
  }
  .product-layout-buy {
    position: static;
  }
  .product-commerce-row {
    display: grid;
    grid-template-columns: 1fr;
    gap: clamp(16px, 1.4vw, 24px);
    align-items: start;
    margin-top: 0px;
  }
  .product-title {
    max-width: 100%;
  }
  .product-meta-row {
    padding-top: 0px;
    margin: -6px 0px 0px;
  }
}
@media (max-width: 767px) {
  .insales-section-product > .container {
    padding-left: 18px;
    padding-right: 18px;
  }
  .product-layout {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    max-width: none;
    min-height: 0px;
    padding: 14px;
    border-radius: 22px;
  }
  .product-layout-gallery {
    grid-column: auto;
  }
  .product-layout-details {
    display: contents;
  }
  .product-layout-config {
    display: grid;
    align-content: start;
    gap: clamp(14px, 1.4vw, 20px);
    padding: clamp(16px, 1.6vw, 24px);
    border: 1px solid rgba(255, 255, 255, 0.82);
    border-radius: clamp(20px, 1.7vw, 28px);
    background: rgba(255, 255, 255, 0.76);
    box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.84), 0px 18px 46px rgba(24, 32, 56, 0.06);
    backdrop-filter: blur(16px);
  }
  .product-head,
  .product-meta-row,
  .product-config-column,
  .product-layout-buy {
    grid-column: auto;
    grid-row: auto;
  }
  .product-layout-config,
  .product-layout-buy,
  .product-layout-kit {
    grid-column: auto;
  }
  .product-layout-buy {
    position: static;
  }
  .product-commerce-row {
    display: grid;
    grid-template-columns: 1fr;
    gap: clamp(16px, 1.4vw, 24px);
    align-items: start;
    margin-top: 0px;
  }
  .product-title {
    max-width: 100%;
  }
  .product-meta-row {
    padding-top: 0px;
    margin: -6px 0px 0px;
  }
  .product-properties {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 575px) {
  .template--product {
    padding-bottom: 160px;
  }
  .breadcrumbs {
    display: none;
  }
  .insales-section-product {
    padding: 16px 0px 28px;
  }
  .insales-section-product > .container {
    padding-left: 10px;
    padding-right: 10px;
  }
  .product-layout,
  .product-layout-details {
    gap: 14px;
  }
  .product-layout {
    padding: 10px;
    border-radius: 22px;
    box-shadow: 0px 18px 46px rgba(24, 32, 56, 0.08);
  }
  .product-layout-config {
    gap: 12px;
    padding: 14px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.88);
    backdrop-filter: none;
  }
  .product-title {
    font-size: clamp(25px, 8vw, 34px);
    line-height: 1.04;
  }
  .product-extras > .row {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
  .product-extras .button,
  .product-extras .rating a {
    min-height: 42px;
    padding: 6px 4px;
    justify-content: center;
    font-size: 11px;
    line-height: 14px;
  }
  .product-extras .rating-item {
    font-size: 12px;
  }
  .product-extras .rating-link {
    font-size: 10px;
    line-height: 12px;
  }
  .product-extras .button--compares span:not(.far):not(.fas):not(.fab),
  .product-extras .button--favorites span:not(.far):not(.fas):not(.fab) {
    display: inline !important;
    max-width: 100%;
  }
  .product-properties-group {
    padding: 14px;
  }
  .product-properties-item {
    grid-template-columns: 1fr;
    gap: 2px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .product-layout *,
  .product-layout *:before,
  .product-layout *:after {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
  }
}
/* 8. Product page / Delivery widget */
.product-geo {
  position: relative;
  z-index: 5;
  font-size: 13px;
  line-height: 17px;
  margin: 20px 0px;
}
.product-geo-header {
  padding: 15px 20px;
  background: #f5f7fb;
  color: #111827;
  font-weight: 600;
}
.product-geo-header svg {
  margin-right: 5px;
}
.product-geo-city {
  color: #0a2f83;
}
.product-geo-city a {
  text-decoration: none !important;
}
.product-geo-city.is-no-city {
  color: #111827;
}
.product-geo-items {
  position: relative;
  padding: 15px 20px 5px;
  border: 1px solid #e5eaf2;
  margin: 2px 0px 0px;
}
.product-geo-items:before, .product-geo-items:after {
  content: "";
  position: absolute;
  z-index: 2;
  top: -20px;
  left: 15px;
  border-width: 10px;
  border-style: solid;
  border-color: transparent transparent #e5eaf2 transparent;
}
.product-geo-items:after {
  border-bottom-color: #fff;
  z-index: 3;
  top: -19px;
}
.product-geo-item {
  margin: 0px 0px 15px;
}
.product-geo-item-title {
  margin: 0px 0px 10px;
  color: #111827;
  font-weight: 600;
}
.product-geo-item-content {
  margin: 5px 0px 0px;
}
.product-geo-item-content p + p {
  margin: 5px 0px 0px;
}
.product-geo-item ul {
  list-style: square;
  margin: 0px 0px 0px 25px;
  padding: 0px;
}
.product-geo-item li {
  margin: 5px 0px 0px;
}
.product-geo-toggle {
  border-bottom: 1px dotted currentColor;
  cursor: pointer;
}
.product-geo .alert {
  margin: 0px;
}
.product-geo.no-city .product-geo-items:before, .product-geo.no-city .product-geo-items:after {
  display: none;
}
.product-geo.no-city .alert {
  display: none;
}

.product-geo .insales_widget-delivery_info--price,
.product-geo .insales_widget-current_address span {
  font-weight: 600;
  color: #111827;
}
.product-geo .insales_widget-delivery.insales_widget-delivery--box-shadow {
  box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.1);
}
.product-geo .insales_widget-current_address button.insales_widget-open_modal {
  color: #0a2f83;
  cursor: pointer;
  padding: 0px;
  border-bottom: 1px dotted currentColor;
  margin-left: 5px;
}
.product-geo .insales_widget-delivery_info--content,
.product-geo .insales_widget-delivery_info--price {
  line-height: 16px;
}
.product-geo .insales_widget-delivery_info--description {
  margin-top: 5px;
  font-size: 1em;
}
.product-geo .insales_widget-delivery_info--interval {
  color: #9ca3af;
}

@media (max-width: 640px) {
  .product-geo .insales_widget-modal {
    padding: 60px 20px 20px;
  }
  .product-geo .insales_widget-modal_close {
    top: 65px;
  }
}
/* 9. Cart */
.cart-items {
  margin: 0px 0px 40px;
  border-bottom: 1px solid #e5eaf2;
}
.cart-item {
  padding: 20px 0px;
  border-top: 1px solid #e5eaf2;
}
.cart-item-thumb {
  position: relative;
  display: block;
  margin: 0px;
  width: 80px;
}
.cart-item-thumb-item {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background: #fff center center no-repeat;
}
.cart-item-thumb--1x1 {
  padding-top: 100%;
}
.cart-item-thumb--2x3 {
  padding-top: 150%;
}
.cart-item-thumb--3x4 {
  padding-top: 133%;
}
.cart-item-thumb--4x3 {
  padding-top: 75%;
}
.cart-item-thumb--contain .cart-item-thumb-item {
  background-size: contain;
}
.cart-item-thumb--cover .cart-item-thumb-item {
  background-size: cover;
}
.cart-item-title {
  font-size: 14px;
  line-height: 20px;
}
.cart-item-title a {
  display: block;
  color: #111827;
}
.cart-item-title a:hover {
  color: #0a2f83;
}
.cart-item-variants {
  margin: 5px 0px 0px;
  font-size: 12px;
  line-height: 16px;
  color: #9ca3af;
}
.cart-item-comment {
  margin: 5px 0px 0px;
}
.cart-item-comment input {
  font-size: 12px;
}
.cart-item-prices {
  text-align: right;
  min-width: 90px;
  line-height: 20px;
}
.cart-item-unit_price {
  display: inline-flex;
  align-items: baseline;
  gap: 5px;
}
.cart-item-old_price, .cart-item-old_total_price {
  color: #9ca3af;
  font-size: 11px;
  line-height: 14px;
  font-weight: 400;
  white-space: nowrap;
}
.cart-item-total_price {
  display: flex;
  align-items: baseline;
  justify-content: flex-end;
  gap: 6px;
  font-weight: 600;
  color: #111827;
}
.cart-item .product-quantity {
  width: 162px;
}
.cart-item .product-quantity--large {
  width: 204px;
}
.cart-item .product-quantity--large .button--favorites {
  background: #f5f7fb;
  border-radius: 50%;
}
.cart-sidebar {
  border: 2px solid #e5eaf2;
  padding: 20px;
  margin: 0px 0px 40px;
}
.cart-order-items {
  font-size: 14px;
  line-height: 22px;
  padding: 15px 20px 10px;
  background: #f5f7fb;
  margin: -20px -20px 0px;
  font-weight: 600;
  color: #111827;
}
.cart-order-item {
  position: relative;
  margin: 0px 0px 5px;
}
.cart-order-item span {
  position: absolute;
  top: 0px;
  right: 0px;
  font-weight: 600;
}
.cart-order-item p {
  font-size: 12px;
  line-height: 16px;
  color: #9ca3af;
  font-weight: 400;
}
.cart-order-item-total_price {
  font-size: 18px;
  line-height: 22px;
}
.cart-order-item-total_price span {
  color: #0a2f83;
}
.cart-order-coupon {
  margin: 20px 0px 0px;
  font-size: 12px;
  line-height: 16px;
}
.cart-order-coupon label {
  display: block;
  font-weight: 600;
  color: #111827;
  margin: 0px 0px 5px;
}
.cart-order-coupon .button {
  margin-left: 10px;
}
.cart-order-coupon-error {
  color: #ef3340;
  margin: 5px 0px 0px;
}
.cart-order-buttons {
  margin: 20px 0px 0px;
}
.cart-order-quick_checkout {
  text-align: center;
  margin: 10px 0px -5px;
}
.cart-empty {
  max-width: 820px;
  margin: 20px auto 56px;
  padding: 42px;
  border: 1px solid #e5eaf2;
  border-radius: 22px;
  background: linear-gradient(180deg, #fff 0%, #f9fafb 100%);
  box-shadow: 0px 14px 34px rgba(24, 32, 56, 0.05);
  text-align: center;
}
.cart-empty-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 72px;
  height: 72px;
  margin: 0px 0px 18px;
  border-radius: 50%;
  background: #eef4ff;
  color: #0a2f83;
  font-size: 30px;
}
.cart-empty-title {
  margin: 0px 0px 10px;
  color: #111827;
  font-size: 32px;
  line-height: 38px;
  font-weight: 600;
}
.cart-empty-text {
  max-width: 540px;
  margin: 0px auto 24px;
  color: #6b7280;
  font-size: 16px;
  line-height: 24px;
}
.cart-empty-actions {
  margin: 0px 0px 24px;
}
.cart-empty-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin: 0px 0px 24px;
}
.cart-empty-links a {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 8px 14px;
  border: 1px solid #c7d9f6;
  border-radius: 999px;
  background: #fff;
  color: #0a2f83;
  font-size: 14px;
  line-height: 18px;
  font-weight: 600;
}
.cart-empty-links a:hover {
  border-color: #7fa8ee;
  background: #eef4ff;
}
.cart-empty-benefits {
  display: grid;
  grid-template-columns: repeat(3, minmax(0px, 1fr));
  gap: 12px;
}
.cart-empty-benefit {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 52px;
  padding: 10px 12px;
  border-radius: 14px;
  background: #eef4ff;
  color: #374151;
  font-size: 13px;
  line-height: 17px;
}
.cart-empty-benefit .far {
  color: #0a2f83;
  font-size: 18px;
}

@media (max-width: 767px) {
  .cart-item-buttons {
    margin-top: 20px;
  }
}
@media (max-width: 575px) {
  .cart-empty {
    margin: 8px auto 32px;
    padding: 26px 18px;
    border-radius: 18px;
  }
  .cart-empty-title {
    font-size: 24px;
    line-height: 30px;
  }
  .cart-empty-text {
    font-size: 14px;
    line-height: 20px;
  }
  .cart-empty-actions .button {
    width: 100%;
  }
  .cart-empty-links {
    justify-content: flex-start;
    flex-wrap: nowrap;
    margin-right: -18px;
    margin-left: -18px;
    padding: 0px 18px 4px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .cart-empty-links a {
    flex: 0 0 auto;
  }
  .cart-empty-benefits {
    grid-template-columns: 1fr;
    text-align: left;
  }
  .cart-empty-benefit {
    justify-content: flex-start;
  }
}
/* 9. Cart / Compares */
.text-content .compares {
  margin: 0px 0px 20px;
  overflow: auto;
}
.text-content .compares-table {
  margin: 0px;
}
.text-content .compares-table-4 .compares-header-product {
  width: 25%;
}
.text-content .compares-table-3 .compares-header-product {
  width: 33.333333%;
}
.text-content .compares-table-2 .compares-header-product {
  width: 50%;
}
.text-content .compares-table-1 .compares-header-product {
  width: 100%;
}
.text-content .compares-header, .text-content .compares-item {
  text-align: center;
}
.text-content .compares-header-title, .text-content .compares-item-title {
  text-align: left;
  font-weight: 600;
  color: #111827;
  width: 1%;
}
.text-content .compares-header-toggle-title, .text-content .compares-item-toggle-title {
  margin: 0px 0px -5px;
  width: 180px;
}
.text-content .compares-header-toggle .button .fa-toggle-on, .text-content .compares-item-toggle .button .fa-toggle-on {
  display: inline-block;
}
.text-content .compares-header-toggle .button .fa-toggle-off, .text-content .compares-item-toggle .button .fa-toggle-off {
  display: none;
}
.text-content .compares-header-toggle .button span:before, .text-content .compares-item-toggle .button span:before {
  content: attr(data-text-hide);
}
.text-content .compares-header-toggle .button.is-toggle .fa-toggle-on, .text-content .compares-item-toggle .button.is-toggle .fa-toggle-on {
  display: none;
}
.text-content .compares-header-toggle .button.is-toggle .fa-toggle-off, .text-content .compares-item-toggle .button.is-toggle .fa-toggle-off {
  display: inline-block;
}
.text-content .compares-header-toggle .button.is-toggle span:before, .text-content .compares-item-toggle .button.is-toggle span:before {
  content: attr(data-text-show);
}
.text-content .compares-header-product {
  vertical-align: top;
}
.text-content .compares-header-product-image {
  min-width: 200px;
}
.text-content .compares-header-product-image .product_card {
  width: 80px;
  margin: 0px auto;
}
.text-content .compares-header-product-title {
  font-size: 12px;
  line-height: 18px;
  margin: 10px 0px 0px;
}
.text-content .compares-header-price {
  font-weight: 600;
  color: #111827;
}

/* Content pages and content components. */
/* Reviews and forms */
/* 10. Content / Reviews and forms */
.product_reviews {
  margin: 0px 0px 20px;
}

.product-reviews-overview {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0px 0px 16px;
  padding: 14px 16px;
  border: 1px solid #e5eaf2;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0px 8px 20px rgba(24, 32, 56, 0.04);
}

.product-reviews-overview-title {
  color: #111827;
  font-size: 16px;
  line-height: 22px;
  font-weight: 600;
}

.product-reviews-overview-rating {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 2px 4px;
}
.product-reviews-overview-rating .rating-link {
  margin-left: 8px;
  color: #6b7280;
  font-size: 12px;
  line-height: 16px;
}

.product-reviews-group {
  margin: 0px 0px 18px;
}

.product-reviews-group-title {
  margin: 0px 0px 10px;
  color: #111827;
  font-size: 15px;
  line-height: 20px;
  font-weight: 600;
}

.review,
.comment {
  margin: 0px 0px 20px;
}
.review-avatar,
.comment-avatar {
  margin-right: 10px;
}
.review-avatar--initials img, .review-avatar--adorable img,
.comment-avatar--initials img,
.comment-avatar--adorable img {
  border-radius: 50%;
}
.review-avatar--default img,
.comment-avatar--default img {
  border-radius: 50%;
  background: #f5f7fb;
}
.review-author,
.comment-author {
  font-size: 12px;
  line-height: 20px;
  color: #9ca3af;
}
.review-author span,
.comment-author span {
  font-weight: 600;
  color: #111827;
  font-size: 14px;
  margin-right: 10px;
}
.review-rating,
.comment-rating {
  font-size: 16px;
  line-height: 0px;
  white-space: nowrap;
}
.review-content,
.comment-content {
  position: relative;
  padding: 15px 20px;
  margin-top: 10px;
  border: 1px solid #e5eaf2;
}
.review-content-text,
.comment-content-text {
  overflow: hidden;
  line-height: 18px;
}
.review-content-text-section + .review-content-text-section,
.review-content-text-section + .comment-content-text-section,
.comment-content-text-section + .review-content-text-section,
.comment-content-text-section + .comment-content-text-section {
  margin-top: 10px;
}
.review-content-text-section-title,
.comment-content-text-section-title {
  font-weight: 600;
  color: #111827;
}
.review-content-thumb,
.comment-content-thumb {
  float: right;
  margin: 5px 0px 5px 10px;
}
.review-content:before, .review-content:after,
.comment-content:before,
.comment-content:after {
  content: "";
  position: absolute;
  z-index: 2;
  top: -20px;
  left: 9px;
  border-width: 10px;
  border-style: solid;
  border-color: transparent transparent #e5eaf2 transparent;
}
.review-content:after,
.comment-content:after {
  border-bottom-color: #fff;
  z-index: 3;
  top: -19px;
}
.review-replied,
.comment-replied {
  position: relative;
  padding: 15px 20px;
  margin: 15px -20px -15px;
  color: #111827;
  background-color: #f5f7fb;
}
.review-replied:before,
.comment-replied:before {
  content: "";
  position: absolute;
  z-index: 2;
  top: -20px;
  left: 20px;
  border-width: 10px;
  border-style: solid;
  border-color: transparent transparent #f5f7fb transparent;
}
.review-replied a,
.comment-replied a {
  text-decoration: underline;
}
.review-replied-author,
.comment-replied-author {
  font-size: 12px;
  line-height: 20px;
  color: #9ca3af;
}
.review-form,
.comment-form {
  background-color: #f5f7fb;
  padding: 20px;
  margin: 0px 0px 20px;
}
.review-form .alert,
.comment-form .alert {
  padding: 0px;
}

.form-item {
  margin: 0px 0px 20px;
}
.form-item label {
  display: block;
  margin: 0px 0px 4px;
  font-weight: 600;
  color: #111827;
  font-size: 14px;
  line-height: 16px;
}
.form-item label .required {
  color: #ef3340;
}
.form-item:last-child {
  margin: 0px;
}
.form-item-submit {
  margin-top: -10px !important;
}
.form-item-submit button {
  margin: 10px 0px 0px;
}
.form-item-privacy {
  font-size: 12px;
  line-height: 16px;
  margin: 10px 0px 0px;
}
.form-item-privacy a {
  text-decoration: underline;
}
.form-item-privacy p {
  margin: 0px !important;
}
.form .review-rating {
  font-size: 20px;
  line-height: 0px;
}
.form .rating-item {
  cursor: pointer;
}
.form-inner {
  max-width: 440px;
  padding: 20px;
  margin: 40px auto;
  background-color: #f5f7fb;
}
.form-inner--full {
  width: 100%;
  max-width: none;
  margin: 0px;
}
.form-description {
  margin: 0px 0px 20px;
}

#captcha_challenge {
  position: relative;
}
#captcha_challenge > img {
  height: 53px;
  width: auto;
  object-fit: cover;
}
#captcha_challenge > a {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  opacity: 0;
}
#captcha_challenge > a img {
  display: none;
}

@media (min-width: 1025px) {
  .review-form,
  .comment-form {
    margin-left: 20px;
  }
  .container--nav_layout_sidebar .review-form,
  .container--nav_layout_sidebar .comment-form {
    margin-left: 0px;
  }
}
@media (max-width: 575px) {
  .product-reviews-overview {
    display: block;
  }
  .product-reviews-overview-rating {
    justify-content: flex-start;
    margin-top: 8px;
  }
}
/* Article list primitives */
/* 10. Content / Articles */
.articles {
  margin: 0px 0px 20px;
}
.articles-title {
  margin: 0px 0px 20px;
}
.articles-tags {
  margin: -10px 0px 0px;
  text-align: center;
}
.articles-tags .button {
  margin: 10px 5px 0px 5px;
}
.articles-meta {
  margin: 0px 0px 20px;
  text-align: center;
}
.articles-meta-date {
  font-size: 12px;
  line-height: 16px;
  font-weight: 600;
  color: #111827;
  display: inline-block;
}
.articles-meta-tags {
  margin: 5px 0px 0px;
  color: #9ca3af;
  font-size: 12px;
}
.articles-meta-tags a {
  color: #9ca3af;
}
.articles-meta-tags a:hover {
  color: #0a2f83;
}

.actions {
  margin: 0px;
}

/* Article card */
/* 10. Content / Article card */
.article_card {
  margin: 0px 0px 20px;
}
.article_card-thumb {
  position: relative;
  display: block;
  margin: 0px 0px 10px;
  background: #111827;
}
.article_card-thumb-item {
  position: absolute;
  z-index: 1;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background: #fff center center no-repeat;
  background-size: contain;
  transition: all 0.4s linear;
  overflow: hidden;
}
.article_card-thumb-item--empty {
  background-color: #f5f7fb;
}
.article_card-thumb-item svg {
  color: #e5eaf2;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.article_card-thumb-item img,
.article_card-thumb-item source {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100% !important;
  height: 100% !important;
  will-change: transform;
  object-fit: contain;
}
.article_card-thumb:before {
  content: attr(data-title);
  position: absolute;
  z-index: 3;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  border: 2px solid #fff;
  padding: 10px 15px;
  font-weight: 600;
  font-size: 14px;
  line-height: 18px;
  opacity: 0;
  transition: opacity 0.2s linear;
}
.article_card-thumb--16x9 {
  padding-top: 56%;
}
.article_card-thumb--cover .article_card-thumb-item {
  background-size: cover;
}
.article_card-thumb--cover .article_card-thumb-item img,
.article_card-thumb--cover .article_card-thumb-item source {
  object-fit: cover;
}
.article_card-labels {
  top: auto;
  bottom: -5px;
}
.article_card-title {
  font-size: 14px;
  line-height: 18px;
}
.article_card-title a {
  color: #111827;
}
.article_card-title a:hover {
  color: #0a2f83;
}
.article_card-blog {
  font-size: 12px;
  line-height: 18px;
  color: #9ca3af;
}
.article_card-blog a {
  color: #9ca3af;
}
.article_card-blog a:hover {
  color: #0a2f83;
}

@media (min-width: 768px) {
  .article_card:hover .article_card-thumb-item {
    opacity: 0.5;
  }
  .article_card:hover .article_card-thumb:before {
    opacity: 1;
  }
}
.action_card {
  margin: 0px 0px 20px;
}
.action_card .article_card {
  text-align: center;
}
.action_card .article_card-date {
  padding: 2px 5px;
  font-size: 10px;
  line-height: 14px;
  font-weight: 600;
  background: #111827;
  color: #fff;
  display: inline-block;
}
.action_card .article_card-title {
  font-size: 20px;
  line-height: 24px;
  font-weight: 600;
  margin: 5px 0px;
}

/* Gallery */
/* 10. Content / Gallery */
.gallery {
  margin: 0px -5px 30px -5px;
}
.gallery-item {
  padding: 0px 5px;
  margin: 0px 0px 10px;
}
.gallery-item a {
  position: relative;
  display: block;
  background: #111827;
  box-shadow: inset 0 0 0 2px #e5eaf2, inset 0 0 0px 4px #fff;
  padding: 4px;
  transition: 0.4s;
}
.gallery-item a img {
  transition: 0.4s;
  will-change: transform;
}
.gallery-item a svg {
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%) scale(0.75);
  transition: 0.4s;
  opacity: 0;
  will-change: transform;
  color: #fff;
  font-size: 50px;
}
.gallery-item a:hover {
  box-shadow: inset 0 0 0 2px #0a2f83, inset 0 0 0px 4px #fff;
}
.gallery-item a:hover img {
  opacity: 0.5;
}
.gallery-item a:hover svg {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}

/* Text content */
/* 10. Content / Text pages */
.text-title {
  border-bottom: 1px solid #e5eaf2;
  font-size: 34px;
  line-height: 38px;
  padding: 0px 0px 40px;
  margin: 0px 0px 40px;
  text-align: center;
  color: #111827;
  font-weight: 600;
}
.text-title .rss {
  display: inline-block;
  font-size: 0px;
  line-height: 0px;
  vertical-align: middle;
  color: #ee802f;
  height: 20px;
  margin-top: -2px;
}
.text-title .rss:hover {
  color: #111827;
}
.text-title .rss svg {
  height: 20px;
  width: 20px;
}

.text-content,
.message-content {
  margin: 0px 0px 40px;
}
.text-content h1,
.text-content h2,
.text-content h3,
.text-content p,
.message-content h1,
.message-content h2,
.message-content h3,
.message-content p {
  margin: 0px 0px 20px;
}
.text-content h1,
.text-content h2,
.text-content h3,
.message-content h1,
.message-content h2,
.message-content h3 {
  font-weight: 600;
  color: #111827;
}
.text-content h1,
.message-content h1 {
  font-size: 24px;
  line-height: 28px;
}
.text-content h2,
.message-content h2 {
  font-size: 20px;
  line-height: 24px;
}
.text-content h3,
.message-content h3 {
  font-size: 16px;
  line-height: 20px;
}
.text-content table,
.message-content table {
  max-width: 100%;
  margin: 20px 0px;
}
.text-content table tr,
.message-content table tr {
  border-top: 1px solid #e5eaf2;
  border-bottom: 1px solid #e5eaf2;
}
.text-content table th,
.text-content table td,
.message-content table th,
.message-content table td {
  padding: 10px 10px;
  font-weight: 400;
}
.text-content table thead,
.message-content table thead {
  color: #111827;
  font-weight: 600;
}
.text-content table thead th,
.text-content table thead td,
.message-content table thead th,
.message-content table thead td {
  font-weight: 600;
}
.text-content table th,
.message-content table th {
  font-weight: 600;
}
.text-content a,
.message-content a {
  text-decoration: underline;
}
.text-content ul,
.message-content ul {
  list-style: square;
  margin: 0px 0px 20px 25px;
  padding: 0px;
}
.text-content ol,
.message-content ol {
  list-style: decimal;
  margin: 0px 0px 20px 25px;
  padding: 0px;
}
.text-content li,
.message-content li {
  margin: 5px 0px;
}
.text-content img,
.message-content img {
  max-width: 100%;
  height: auto;
}
.text-content strong,
.text-content em,
.message-content strong,
.message-content em {
  color: #111827;
}
.text-content iframe,
.message-content iframe {
  max-width: 100%;
}
.text-content--seo,
.message-content--seo {
  font-size: 12px;
  line-height: 16px;
  margin: 0px 0px 35px;
  text-align: center;
}
.text-content--seo a,
.message-content--seo a {
  display: inline-block;
  vertical-align: middle;
  padding: 3px 6px;
  margin: 0px 5px 5px 0px;
  border: 1px solid #e5eaf2;
  border-radius: 8px;
  max-width: 160px;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  text-decoration: none;
  color: #9ca3af;
}
.text-content--seo a:hover, .text-content--seo a.is-active,
.message-content--seo a:hover,
.message-content--seo a.is-active {
  color: #0a2f83;
  border-color: #0a2f83;
}
.text-content--seo a.is-active,
.message-content--seo a.is-active {
  font-weight: 600;
}

.text-overflow {
  position: relative;
  overflow: hidden;
  margin: 0px 0px 40px;
  padding-bottom: 51px;
}
.text-overflow-toggle {
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 100%;
  background: #fff;
  border-top: 1px solid #e5eaf2;
  text-align: center;
}
.text-overflow-toggle:before, .text-overflow-toggle:after {
  content: "";
  position: absolute;
  z-index: 2;
  top: -11px;
  left: 50%;
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent #e5eaf2 transparent;
  margin-left: -5px;
}
.text-overflow-toggle:after {
  border-color: transparent transparent #fff transparent;
  z-index: 3;
  top: -10px;
}
.text-overflow-toggle .button span:before {
  content: attr(data-text-second);
}
.text-overflow.is-hidden {
  max-height: 240px;
}
.text-overflow.is-hidden .text-overflow-toggle {
  box-shadow: 0px 0px 20px 30px #fff;
}
.text-overflow.is-hidden .text-overflow-toggle:before {
  border-color: #e5eaf2 transparent transparent transparent;
  top: 0px;
}
.text-overflow.is-hidden .text-overflow-toggle:after {
  border-color: #fff transparent transparent transparent;
  z-index: 3;
  top: -1px;
}
.text-overflow.is-hidden .text-overflow-toggle .button span:before {
  content: attr(data-text-first);
}
.text-overflow .text-content {
  margin: 0px 0px -20px;
}

.insales-section-text .text-content {
  margin: 0px 0px 20px;
}

@media (max-width: 767px) {
  .text-title {
    font-size: 24px;
    line-height: 28px;
  }
  .text .table-fluid thead {
    display: none;
  }
  .text .table-fluid,
  .text .table-fluid tbody,
  .text .table-fluid th,
  .text .table-fluid td {
    display: block;
    width: 100%;
  }
  .text .table-fluid th,
  .text .table-fluid td {
    padding: 0px 10px;
  }
  .text .table-fluid tr > *:first-child {
    padding-top: 10px;
  }
  .text .table-fluid tr > *:last-child {
    padding-bottom: 10px;
  }
}
/* FAQ */
/* 10. Content / FAQ */
.faq {
  margin: 0px 0px 40px;
}
.faq-item {
  margin: 0px 0px 20px;
}
.faq-item-title {
  margin: 0px 0px 10px;
}
.faq-item-title span {
  border-bottom: 1px dotted currentColor;
  cursor: pointer;
  color: #111827;
}
.faq-item-title span:hover, .faq-item-title span.is-active {
  color: #0a2f83;
}
.faq-item-title span.is-active {
  font-weight: 600;
}
.faq-item-content {
  display: none;
  padding: 0px 0px 0px 20px;
  border-left: 2px solid #e5eaf2;
  margin: 0px 0px 0px 20px;
}
.faq-item-content > *:last-child {
  margin-bottom: 0px;
}

/* Blog listing */
/* 10. Content / Blog */
.template--blog .blog-page {
  padding-top: 6px;
}
.template--blog .blog-page-head {
  margin-bottom: 26px;
}
.template--blog .blog-page-head .text-title {
  margin-bottom: 14px;
  font-size: 34px;
  line-height: 1.15;
  letter-spacing: 0;
  text-align: left;
}
.template--blog .blog-page-head .text-content {
  margin: 0;
}
.template--blog .articles-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  text-align: left;
}
.template--blog .articles-tags .button {
  margin: 0;
  border-radius: 999px;
  border-color: #e5eaf2;
  background: #fff;
  color: #111827;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.04);
}
.template--blog .articles-tags .button:hover, .template--blog .articles-tags .button.button--black {
  border-color: #0a2f83;
  background: #0a2f83;
  color: #fff;
}
.template--blog .insales-section-actions {
  margin-bottom: 34px;
}
.template--blog .blog-featured-row {
  margin-bottom: 8px;
}
.template--blog .blog-articles-grid {
  margin-top: 2px;
}
.template--blog .blog-articles-grid-item {
  display: flex;
  margin-bottom: 24px;
}
.template--blog .blog-articles-grid-item > .article_card {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 100%;
  padding: 12px;
  border: 1px solid #e5eaf2;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.05);
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
.template--blog .blog-articles-grid-item .article_card-thumb {
  margin-bottom: 12px;
  border-radius: 14px;
  background: #f5f7fb;
}
.template--blog .blog-articles-grid-item .article_card-title {
  padding: 0 2px;
  font-size: 17px;
  line-height: 1.25;
}
.template--blog .blog-articles-grid-item .article_card-description {
  display: -webkit-box;
  margin: 8px 2px 0;
  overflow: hidden;
  color: #6b7280;
  font-size: 14px;
  line-height: 1.45;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
}
.template--blog .blog-articles-grid-item .article_card-read {
  align-self: flex-start;
  margin: auto 2px 0;
  padding-top: 14px;
  color: #0a2f83;
  font-size: 14px;
  line-height: 18px;
  font-weight: 600;
}
.template--blog .blog-articles-grid-item .article_card-read:hover {
  color: #0a2f83;
}

.action_card {
  padding: 20px;
  border: 1px solid #e5eaf2;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
}
.action_card .article_card {
  margin-bottom: 0;
  text-align: left;
}
.action_card .article_card-thumb {
  margin-bottom: 0;
  border-radius: 14px;
  background: #f5f7fb;
  overflow: hidden;
}
.action_card .article_card-thumb:before {
  border-radius: 999px;
  border-width: 0;
  background: #0a2f83;
  box-shadow: 0 10px 24px rgba(15, 55, 143, 0.2);
}
.action_card .article_card-date {
  display: inline-flex;
  margin-bottom: 12px;
  padding: 5px 10px;
  border-radius: 999px;
  background: rgba(10, 47, 131, 0.08);
  color: #0a2f83;
  font-size: 12px;
  line-height: 16px;
  font-weight: 600;
}
.action_card .article_card-title {
  margin: 0 0 10px;
  font-size: 24px;
  line-height: 1.2;
  font-weight: 600;
}
.action_card .article_card-title a {
  color: #111827;
}
.action_card .article_card-title a:hover {
  color: #0a2f83;
}
.action_card .article_card-description {
  margin-bottom: 18px;
  color: #6b7280;
  font-size: 15px;
  line-height: 1.55;
}
.action_card .article_card-link {
  border-radius: 999px;
  padding-right: 18px;
  padding-left: 18px;
}

.article_card-thumb {
  border-radius: 14px;
  background: #f5f7fb;
  overflow: hidden;
}
.article_card-label--date {
  border: 1px solid #e5eaf2;
  border-radius: 999px;
  color: #0a2f83;
  font-weight: 600;
}
.article_card-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  margin: 0 0 8px;
  padding: 0 2px;
}
.article_card-date {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 4px 9px;
  border-radius: 999px;
  background: rgba(10, 47, 131, 0.08);
  color: #0a2f83;
  font-size: 12px;
  line-height: 16px;
  font-weight: 600;
}
.article_card-title {
  font-weight: 600;
}

@media (min-width: 768px) {
  .template--blog .blog-articles-grid-item > .article_card:hover {
    border-color: rgba(10, 47, 131, 0.28);
    box-shadow: 0 18px 40px rgba(15, 55, 143, 0.1);
    transform: translateY(-2px);
  }
  .action_card {
    margin-bottom: 24px;
  }
  .action_card .row {
    min-height: 280px;
  }
  .action_card .article_card-thumb {
    height: 100%;
    min-height: 280px;
    padding-top: 0;
  }
  .action_card .col-md-6:last-child .article_card {
    padding: 22px 12px;
  }
}
@media (max-width: 767px) {
  .template--blog .blog-page-head {
    margin-bottom: 16px;
  }
  .template--blog .blog-page-head .text-title {
    font-size: 26px;
    line-height: 1.15;
  }
  .template--blog .articles-tags {
    flex-wrap: nowrap;
    margin-right: -15px;
    margin-left: -15px;
    padding: 0 15px 4px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .template--blog .articles-tags .button {
    flex: 0 0 auto;
  }
  .template--blog .blog-featured-row {
    margin-bottom: 4px;
  }
  .template--blog .blog-articles-grid-item {
    margin-bottom: 16px;
  }
  .template--blog .blog-articles-grid-item > .article_card {
    padding: 10px;
    border-radius: 16px;
  }
  .template--blog .blog-articles-grid-item .article_card-thumb {
    margin-bottom: 10px;
    border-radius: 12px;
  }
  .template--blog .blog-articles-grid-item .article_card-date {
    min-height: 22px;
    padding: 3px 8px;
    font-size: 11px;
    line-height: 15px;
  }
  .template--blog .blog-articles-grid-item .article_card-title {
    font-size: 15px;
    line-height: 1.24;
  }
  .template--blog .blog-articles-grid-item .article_card-description {
    margin-top: 6px;
    font-size: 13px;
    line-height: 1.38;
    -webkit-line-clamp: 2;
    line-clamp: 2;
  }
  .template--blog .blog-articles-grid-item .article_card-read {
    padding-top: 10px;
    font-size: 13px;
  }
  .action_card {
    padding: 12px;
    border-radius: 16px;
  }
  .action_card .article_card-thumb {
    margin-bottom: 12px;
    border-radius: 12px;
  }
  .action_card .article_card-date {
    margin-bottom: 8px;
  }
  .action_card .article_card-title {
    font-size: 19px;
    line-height: 1.22;
  }
  .action_card .article_card-description {
    font-size: 14px;
    line-height: 1.45;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
  }
}
/* Article detail */
/* Article detail page layout. Blog listing stays in _content-blog.scss. */
.template--article .article-page {
  padding-top: 4px;
}
.template--article .article-page-sidebar .insales-section-sidebar {
  position: sticky;
  top: 118px;
}
.template--article .article-page-sidebar .sidebar-block {
  border: 1px solid #e5eaf2;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.05);
  overflow: hidden;
}
.template--article .article-page-sidebar .sidebar-block-title {
  padding: 14px 16px;
  border-bottom: 1px solid #e5eaf2;
  font-size: 16px;
  line-height: 20px;
  font-weight: 600;
}
.template--article .article-page-sidebar .articles {
  margin: 0;
  padding: 12px;
}
.template--article .article-page-sidebar .article_card {
  margin-bottom: 14px;
}
.template--article .article-page-sidebar .article_card:last-child {
  margin-bottom: 0;
}
.template--article .article-page-sidebar .article_card-title {
  font-size: 13px;
  line-height: 17px;
}
.template--article .insales-section-page--article {
  padding: 28px 30px;
  border: 1px solid #e5eaf2;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.06);
}
.template--article .insales-section-page--article .section-title {
  margin: 0 0 14px;
  font-size: 36px;
  line-height: 1.12;
  letter-spacing: 0;
  text-align: left;
}
.template--article .insales-section-page--article .articles-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 24px;
  text-align: left;
}
.template--article .insales-section-page--article .articles-meta-date {
  padding: 6px 11px;
  border-radius: 999px;
  background: rgba(10, 47, 131, 0.08);
  color: #0a2f83;
  font-size: 12px;
  line-height: 16px;
  font-weight: 600;
}
.template--article .insales-section-page--article .product-collections {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
}
.template--article .insales-section-page--article .product-collections a {
  margin: 0;
  border-radius: 999px;
  background: #f5f7fb;
  color: #111827;
}
.template--article .insales-section-page--article .product-collections a:hover {
  background: #0a2f83;
  color: #fff;
}
.template--article .insales-section-page--article .text-content {
  color: #111827;
  font-size: 17px;
  line-height: 1.72;
}
.template--article .insales-section-page--article .text-content > *:first-child {
  margin-top: 0;
}
.template--article .insales-section-page--article .text-content h2,
.template--article .insales-section-page--article .text-content h3,
.template--article .insales-section-page--article .text-content h4 {
  margin-top: 30px;
  margin-bottom: 12px;
  line-height: 1.2;
}
.template--article .insales-section-page--article .text-content p,
.template--article .insales-section-page--article .text-content ul,
.template--article .insales-section-page--article .text-content ol,
.template--article .insales-section-page--article .text-content blockquote,
.template--article .insales-section-page--article .text-content table {
  margin-bottom: 18px;
}
.template--article .insales-section-page--article .text-content img {
  border-radius: 16px;
}
.template--article .insales-section-page--article .text-content blockquote {
  padding: 16px 18px;
  border-left: 4px solid #0a2f83;
  border-radius: 12px;
  background: #f5f7fb;
}

@media (max-width: 767px) {
  .template--article .article-page-sidebar {
    display: none;
  }
  .template--article .insales-section-page--article {
    padding: 18px 16px;
    border-radius: 18px;
  }
  .template--article .insales-section-page--article .section-title {
    font-size: 28px;
    line-height: 1.14;
  }
  .template--article .insales-section-page--article .text-content {
    font-size: 16px;
    line-height: 1.62;
  }
}
/* 11. System / Instafeed */
.instafeed-gallery a {
  display: block;
  position: relative;
  color: #fff !important;
  background: center no-repeat;
  background-size: cover;
  height: 0px;
  padding-top: 100%;
}
.instafeed-gallery a .instafeed-image {
  position: absolute;
  z-index: 1;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.instafeed-gallery a .instafeed-overlay {
  position: absolute;
  z-index: 2;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  font-size: 30px;
  opacity: 0;
  visibility: hidden;
  transition: 0.4s;
}
.instafeed-gallery a .instafeed-overlay .fa-instagram {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: 0.2s;
}
.instafeed-gallery a:hover .instafeed-overlay {
  opacity: 1;
  visibility: visible;
}
.instafeed-gallery a:hover .instafeed-overlay .fa-instagram {
  transform: translate(-50%, -50%) scale(1.3);
}

.layout--box .instafeed-gallery a .instafeed-overlay {
  font-size: 24px;
}

/* 11. System / Fancybox */
.fancybox-container {
  font-family: "Inter", sans-serif;
  font-size: 14px;
  line-height: 22px;
  color: #374151;
}
.fancybox-close-small {
  padding: 0px;
  width: 32px;
  height: 32px;
  background: #0a2f83;
  color: #fff;
}
.fancybox-close-small svg {
  stroke-width: 2;
  opacity: 1;
}
.fancybox-close-small:focus, .fancybox-close-small:hover {
  background: #111827;
}
.fancybox-slide:before {
  margin: 0px;
}
.fancybox-gallery .fancybox-button {
  background: #0a2f83;
  color: #fff !important;
  transition: all 0.2s linear;
}
.fancybox-gallery .fancybox-button:hover {
  background: #111827;
}
.fancybox-gallery .fancybox-caption {
  font-size: 14px;
  line-height: 18px;
  padding: 15px 20px;
  background: rgba(0, 0, 0, 0.5);
  text-align: center;
}
.fancybox-gallery .fancybox-caption:after, .fancybox-gallery .fancybox-caption:before {
  display: none;
}
.fancybox-slide--image, .fancybox-slide--video {
  padding: 40px !important;
}
.fancybox-slide--image .fancybox-content:before, .fancybox-slide--video .fancybox-content:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: -20px;
  top: -20px;
  width: calc(100% + 40px);
  height: calc(100% + 40px);
  background: #fff;
  box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.1);
}

@media (max-width: 767px) {
  .fancybox-slide--image, .fancybox-slide--video {
    padding: 20px !important;
  }
  .fancybox-slide--image .fancybox-content:before, .fancybox-slide--video .fancybox-content:before {
    left: -10px;
    top: -10px;
    width: calc(100% + 20px);
    height: calc(100% + 20px);
  }
}
/* 11. System / Ion range slider */
.irs-from,
.irs-to,
.irs-single,
.irs-bar,
.irs-slider {
  background: #0a2f83;
  font-weight: 600;
}

.irs-from:after,
.irs-to:after,
.irs-single:after {
  border-top-color: #0a2f83;
}

/* 11. System / Popup messages */
.message {
  padding: 20px;
}
.message--text {
  overflow: visible;
  width: 550px;
}
.message--text .message-content > *:last-child {
  margin-bottom: 0px;
}
.message--alert {
  width: 440px;
}
.message--form {
  width: 440px;
}
.message--form .form {
  margin: 20px 0px 0px;
}
.message--cart {
  width: 700px;
  padding-bottom: 0px;
  text-align: center;
}
.message-content {
  margin: 0px;
}
.message-title {
  font-size: 18px;
  line-height: 22px;
  font-weight: 600;
  color: #111827;
  margin: 0px 0px 20px;
}
.message-cart-product-title {
  margin: 0px 0px 20px;
  font-size: 14px;
  line-height: 18px;
  font-weight: 600;
  color: #111827;
}
.message-cart-product-quantity {
  margin: 0px 0px 20px;
  font-size: 14px;
  line-height: 18px;
  color: #111827;
}
.message-cart-total {
  margin: 0px 0px 20px;
  padding: 20px 0px 0px;
  border-top: 1px solid #e5eaf2;
  color: #111827;
}
.message-cart-total span {
  font-weight: 600;
}
.message-cart-buttons {
  margin: 0px 0px 5px;
}
.message-cart-buttons .button {
  margin: 0px 0px 10px;
}

@media (max-width: 575px) {
  .message-cart-product-image {
    max-width: 80px;
    margin-left: auto;
    margin-right: auto;
  }
}
/* 11. System / Modal, forms, maps */
.m-modal {
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  border-radius: 0px;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  border: 6px solid #3c3c3c;
  margin: 0px;
}
.m-modal-wrapper {
  padding: 20px;
}
.m-modal-wrapper .co-input--captcha {
  margin: 0px 0px 20px;
}
.m-modal-close {
  top: 0px;
  right: 0px;
  height: 32px;
  width: 32px;
  background: #0a2f83 url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMzIgMzIiPjxwYXRoIGQ9Ik0xMCwxMCBMMjIsMjIgTTIyLDEwIEwxMCwyMiIgZmlsbD0iI2ZmZiIgZmlsbC1vcGFjaXR5PSIxIiBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIxIiBzdHJva2Utd2lkdGg9IjIiPjwvcGF0aD48L3N2Zz4=) center no-repeat;
  transition: all 0.2s linear;
}
.m-modal-close:hover {
  background-color: #111827;
}
.m-modal-heading {
  font-size: 18px;
  line-height: 22px;
  font-weight: 600;
  color: #111827;
  margin: 0px 0px 20px;
  text-align: left;
}
.m-modal-footer {
  text-align: left;
}
.m-modal-button {
  display: block;
  width: 100%;
  border: none;
  background: none;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  line-height: 22px;
  text-align: center;
  font-weight: 600;
  margin: 0px;
  padding: 10px 15px;
  cursor: pointer;
  background-color: #0a2f83;
  color: #111827;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  border-radius: 0px;
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
.m-modal-button:hover {
  background-color: #111827;
  color: #fff;
}
.m-modal-errors {
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  border-radius: 0px;
  margin: 0px 0px 20px;
  background-color: #ef3340;
  color: #fff;
  font-size: 12px;
  line-height: 16px;
  font-weight: 600;
}
.m-modal-error {
  padding: 10px 15px;
}
.m-modal-msg {
  padding: 10px 0px;
  font-size: 16px;
  line-height: 20px;
}
.m-modal .tt-dropdown-menu {
  display: none !important;
}

.m-overlay {
  background: #1e1e1e;
  opacity: 0.87;
}

.m-input {
  margin: 0px 0px 20px;
}
.m-input-label {
  display: block;
  margin: 0px 0px 4px;
  font-weight: 600;
  color: #111827;
  font-size: 14px;
  line-height: 16px;
}
.m-input-label:after {
  color: #ef3340;
}
.m-input-field {
  font-family: "Inter", sans-serif;
  font-size: 14px;
  line-height: 22px;
  margin: 0px;
  padding: 9px 14px;
  border: 1px solid #e5eaf2;
  width: 100%;
  background-color: #fff;
}
.m-input--checkbox {
  position: relative;
  opacity: 1;
  display: block;
  padding-left: 20px;
}
.m-input--checkbox input[type=checkbox] {
  position: absolute;
  top: 2px;
  left: 0px;
}
.m-input--checkbox .m-input-label {
  margin: 0px;
}
.m-input--checkbox .m-input-caption {
  margin: 4px 0px 0px;
  font-size: 12px;
  line-height: 16px;
}
.m-input--checkbox .m-input-caption a {
  text-decoration: underline;
}

@media (min-width: 601px) {
  .m-modal {
    width: 440px;
    left: 50%;
    top: 50%;
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border-width: 0px;
  }
}
.map {
  width: 100%;
  height: 480px;
}
.map--grayscale [class*=ymaps-2-1][class*=-ground-pane] {
  -webkit-filter: grayscale(1);
  filter: grayscale(1);
}

@media (max-width: 374px) {
  .g-recaptcha {
    transform: scale(0.86);
    -webkit-transform: scale(0.86);
    transform-origin: 0 0;
    -webkit-transform-origin: 0 0;
    margin-bottom: -20px;
  }
}
[style*="/no_image_"] {
  background-image: url(no-image-min.png) !important;
}

img[src*="/no_image_"] {
  content: url(no-image-min.png) !important;
}

picture {
  overflow: hidden;
  display: block;
}

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

img[data-src],
img[data-srcset] {
  display: block;
  min-height: 1px;
}

img.lazy,
source.lazy {
  opacity: 0;
  transition: opacity 0.2s;
}

.lazy.loaded {
  opacity: 1;
}

/* 11. System / Fixed table scroll */
.table-fixed {
  width: 100%;
  overflow: auto;
  margin: 0px 0px 20px;
}

.table-fixed table {
  white-space: nowrap;
  margin: 0px;
  border: none;
  border-collapse: separate;
  border-spacing: 0px;
  table-layout: fixed;
  font-size: 12px;
  line-height: 16px;
  min-width: 100%;
}

.table-fixed table td,
.table-fixed table th {
  border-bottom: 1px solid #e5eaf2;
  padding: 10px;
  text-align: center;
  background: #fff;
}

.table-fixed table thead th {
  position: sticky;
  top: 0px;
  z-index: 1;
  border-bottom: none;
  background: #111827;
  color: #fff;
}

.table-fixed table thead th:first-child {
  position: sticky;
  left: 0px;
  z-index: 2;
}

.table-fixed table tbody td:first-child {
  position: sticky;
  left: 0px;
  z-index: 1;
  color: #111827;
  font-weight: 600;
}

.slider-categories .owl-stage-outer {
  padding: 0 !important;
}
.slider-categories .owl-nav .owl-prev,
.slider-categories .owl-nav .owl-next {
  position: absolute;
  top: 50%;
  width: 40px;
  height: 40px;
  margin-top: -50px;
  background: transparent !important;
  color: #9ca3af !important;
  cursor: pointer;
  font-size: 30px !important;
}
.slider-categories .owl-nav .owl-prev:hover,
.slider-categories .owl-nav .owl-next:hover {
  color: #9ca3af !important;
}
.slider-categories .owl-nav .owl-prev.disabled,
.slider-categories .owl-nav .owl-next.disabled {
  opacity: 0.25;
  color: #9ca3af;
  cursor: default;
}
.slider-categories .owl-nav .owl-prev {
  left: -20px;
}
.slider-categories .owl-nav .owl-next {
  right: -20px;
}
.slider-categories .owl-dots {
  text-align: center;
  line-height: 0;
  margin: 0px 0px 40px;
}
.slider-categories .owl-dots .owl-dot {
  width: 10px;
  height: 10px;
  background: #ccc;
  border-radius: 50%;
  margin: 0px 5px;
}
.slider-categories .owl-dots .owl-dot.active {
  background: #111827;
}

@media (max-width: 1024px) {
  .slider-categories .owl-nav .owl-prev {
    left: -10px !important;
  }
  .slider-categories .owl-nav .owl-next {
    right: -10px !important;
  }
}
.filter-values--color {
  margin: 0px -5px;
}
.filter-values--color .filter-value {
  display: inline-block;
  padding: 0px 5px;
  vertical-align: top;
  width: 20%;
  margin: 5px 0px;
}
.filter-values--color .filter-value-label {
  font-size: 0;
  display: block;
  width: 100%;
  height: 0px;
  padding-top: 100%;
}
.filter-values--color .filter-value-label:before {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border-radius: 50%;
  transition: border-color 0.2s;
}
.filter-values--color .filter-value-label:after {
  display: none;
  width: 50%;
  height: 50%;
  top: 50%;
  left: 50%;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  transition: 0.2s;
}
.filter-values--color .filter-value-label-color {
  width: 50%;
  height: 50%;
  top: 50%;
  left: 50%;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  transition: 0.2s;
  box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.05);
}
.filter-values--color .filter-value-checkbox:hover + label:before, .filter-values--color .filter-value-checkbox:checked + label:before {
  border-color: #0a2f83;
}
.filter-values--color .filter-value-checkbox:hover + label span, .filter-values--color .filter-value-checkbox:checked + label span {
  width: 60%;
  height: 60%;
}

.col_reviews {
  margin: 30px 0px 40px;
}

.col_review {
  font-size: 14px;
  line-height: 18px;
  position: relative;
  box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.1);
  margin: 0px 0px 20px;
}
.col_review-info {
  background: #f5f7fb;
  padding: 10px 15px;
}
.col_review-info .review-author {
  margin-right: 10px;
}
.col_review-content {
  padding: 10px 15px;
}

/* 12. Utilities / Background branding */
.bbg-left {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.bbg-left img {
  min-width: 120px;
  max-width: 100%;
  width: calc((100vw - 1200px) / 2);
  height: auto;
}
.bbg-right {
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}
.bbg-right img {
  min-width: 120px;
  max-width: 100%;
  width: calc((100vw - 1200px) / 2);
  height: auto;
}
.bbg-bottom {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 10;
  height: 65px;
  background: center bottom repeat-x;
  background-size: contain;
  width: 100%;
}

@media (max-width: 1200px) {
  .bbg-left, .bbg-right {
    display: none !important;
    width: 0px;
    height: 0px;
    top: calc(100vh + 100px);
  }
  .layout--box {
    background: none;
  }
}
/* Catalog filter color values: show readable labels instead of unlabeled circles. */
.filter-values--color {
  display: grid;
  grid-template-columns: 1fr;
  gap: 6px;
  margin: 0px;
}
.filter-values--color .filter-value {
  display: block;
  width: 100%;
  margin: 0px;
  padding: 0px;
}
.filter-values--color .filter-value-label {
  display: flex;
  min-height: 38px;
  align-items: center;
  gap: 10px;
  width: 100%;
  height: auto;
  padding: 8px 12px 8px 38px;
  border: 1px solid #e5eaf2;
  border-radius: 14px;
  background: #fff;
  color: #111827;
  font-size: 13px;
  line-height: 18px;
  font-weight: 500;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
.filter-values--color .filter-value-label:before {
  width: 18px;
  height: 18px;
  top: 50%;
  left: 12px;
  border-radius: 50%;
  background: #f5f7fb;
  transform: translateY(-50%);
}
.filter-values--color .filter-value-label:after {
  display: none;
}
.filter-values--color .filter-value-label-color {
  width: 14px;
  height: 14px;
  top: 50%;
  left: 14px;
  border-radius: 50%;
  transform: translateY(-50%);
  box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.05);
}
.filter-values--color .filter-value-checkbox:checked + .filter-value-label {
  border-color: #0a2f83;
  background: #eef4ff;
  color: #0a2f83;
}
.filter-values--color .filter-value-checkbox:checked + .filter-value-label:before {
  border-color: #c7d9f6;
}
.filter-values--color .filter-value-checkbox:checked + .filter-value-label .filter-value-label-color, .filter-values--color .filter-value-checkbox:hover + .filter-value-label .filter-value-label-color {
  width: 14px;
  height: 14px;
}

@media (min-width: 1025px) {
  .filter-values--color .filter-value-label:hover {
    border-color: #c7d9f6;
    background: #eef4ff;
    color: #0a2f83;
  }
}
/* Collection sidebar filter: compact accordion with readable scrollable groups. */
.filter-sidebar .filter {
  padding: 12px;
  border: 1px solid #e5eaf2;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0px 8px 20px rgba(24, 32, 56, 0.04);
}
.filter-sidebar .filter-item {
  margin: 0px;
  padding: 0px;
  border-bottom: 1px solid #e5eaf2;
}
.filter-sidebar .filter-item:last-child {
  border-bottom: 0px;
}
.filter-sidebar .filter-item-title--sidebar {
  position: relative;
  display: flex;
  min-height: 44px;
  align-items: center;
  margin: 0px;
  padding: 11px 32px 11px 4px;
  color: #111827;
  font-size: 14px;
  line-height: 18px;
  cursor: pointer;
}
.filter-sidebar .filter-item-title--sidebar:after {
  content: "";
  position: absolute;
  right: 8px;
  top: 50%;
  width: 8px;
  height: 8px;
  border-right: 2px solid #6b7280;
  border-bottom: 2px solid #6b7280;
  transform: translateY(-65%) rotate(45deg);
  transition: transform 0.2s ease, border-color 0.2s ease;
}
.filter-sidebar .filter-item-title--sidebar:hover {
  color: #0a2f83;
}
.filter-sidebar .filter-item-title--sidebar:hover:after {
  border-color: #0a2f83;
}
.filter-sidebar .filter-item-content {
  padding: 0px 0px 12px;
}
.filter-sidebar .filter-item.is-filter-collapsed .filter-item-content {
  display: none;
}
.filter-sidebar .filter-item.is-filter-collapsed .filter-item-title--sidebar:after {
  transform: translateY(-50%) rotate(-45deg);
}
.filter-sidebar .filter-values {
  max-height: 230px;
  padding: 2px 4px 2px 0px;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-color: #c7d9f6 transparent;
  scrollbar-width: thin;
}
.filter-sidebar .filter-values::-webkit-scrollbar {
  width: 6px;
}
.filter-sidebar .filter-values::-webkit-scrollbar-track {
  background: transparent;
}
.filter-sidebar .filter-values::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: #c7d9f6;
}
.filter-sidebar .filter-value {
  margin: 0px 0px 6px;
}
.filter-sidebar .filter-value.is-hidden {
  display: block;
}
.filter-sidebar .filter-value-more {
  display: none;
}
.filter-sidebar .filter-value-label {
  display: flex;
  min-height: 32px;
  align-items: center;
  padding: 6px 8px 6px 28px;
  border-radius: 14px;
  color: #111827;
  font-size: 13px;
  line-height: 18px;
  word-break: normal;
  overflow-wrap: anywhere;
}
.filter-sidebar .filter-value-label:before {
  top: 8px;
  left: 6px;
  border-color: #e5eaf2;
  border-radius: 4px;
  background: #f5f7fb;
}
.filter-sidebar .filter-value-label:after {
  top: 12px;
  left: 10px;
  width: 8px;
  height: 8px;
  border-radius: 3px;
}
.filter-sidebar .filter-value-label:hover {
  background: #eef4ff;
  color: #0a2f83;
}
.filter-sidebar .filter-value-checkbox:checked + .filter-value-label {
  background: #eef4ff;
  color: #0a2f83;
}
.filter-sidebar .filter-values--color {
  max-height: 260px;
}
.filter-sidebar .filter-values--color .filter-value {
  margin-bottom: 6px;
}
.filter-sidebar .filter-values--color .filter-value-label {
  min-height: 38px;
  padding-left: 38px;
  border: 1px solid #e5eaf2;
  border-radius: 14px;
  background: #fff;
}
.filter-sidebar .filter-values--color .filter-value-label:before {
  top: 50%;
  left: 12px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  transform: translateY(-50%);
}
.filter-sidebar .filter-values--color .filter-value-label-color {
  left: 14px;
}

@media (max-width: 1024px) {
  .filter-container.is-open .filter {
    width: 100%;
    height: 100%;
    padding: 0px;
    border: 0px;
    border-radius: 0px;
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.5);
    background: #fff;
  }
  .filter-container.is-open .filter-form {
    flex: 1 1 auto;
    min-height: 0px;
    padding: 0px 18px calc(112px + env(safe-area-inset-bottom));
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .filter-container.is-open .filter-title {
    min-height: 62px;
    margin: 0px;
    padding: 18px 58px 16px 20px;
    border-bottom: 1px solid #e5eaf2;
    background: #fff;
    font-size: 22px;
    line-height: 28px;
  }
  .filter-container.is-open .filter-item {
    margin: 0px;
    border-bottom: 1px solid #e5eaf2;
  }
  .filter-container.is-open .filter-item-title--sidebar {
    min-height: 56px;
    padding: 15px 34px 15px 0px;
    font-size: 17px;
    line-height: 22px;
  }
  .filter-container.is-open .filter-item-reset {
    position: fixed;
    z-index: 20;
    left: 0px;
    right: 0px;
    bottom: 0px;
    display: flex !important;
    align-items: center;
    gap: 10px;
    margin: 0px;
    padding: 12px 18px calc(12px + env(safe-area-inset-bottom));
    border-top: 1px solid #e5eaf2;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0px -14px 30px rgba(15, 23, 42, 0.12);
    backdrop-filter: blur(10px);
  }
  .filter-container.is-open .filter-item-reset .button,
  .filter-container.is-open .filter-item-reset a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 1 1 0px;
    min-width: 0px;
    min-height: 44px;
    padding: 0px 14px;
    border-radius: 999px;
    font-size: 15px;
    line-height: 18px;
    font-weight: 600;
    text-align: center;
    white-space: nowrap;
  }
  .filter-container.is-open .filter-item-reset .button--primary {
    background: #0a2f83;
    border-color: #0a2f83;
    color: #fff;
    box-shadow: 0px 8px 18px rgba(10, 47, 131, 0.18);
  }
  .filter-container.is-open .filter-item-reset .button--secondary,
  .filter-container.is-open .filter-item-reset a.button--secondary {
    background: #eef4ff;
    border-color: transparent;
    color: #0a2f83;
    box-shadow: none;
  }
  .filter-container.is-open .filter-item-reset.d-none a {
    display: none;
  }
}
