@charset "UTF-8";
.badge {
  --bs-badge-padding-x: 0.25em;
  --bs-badge-padding-y: 0.125em;
  --bs-badge-font-size: 1em;
  --bs-badge-font-weight: 500;
  --bs-badge-color: #64748b;
  --bs-badge-border-radius: 8px;
  display: inline-block;
  padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);
  font-size: var(--bs-badge-font-size);
  font-weight: var(--bs-badge-font-weight);
  line-height: 1;
  color: var(--bs-badge-color);
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: var(--bs-badge-border-radius);
}
.badge:empty {
  display: none;
}

.btn .badge {
  position: relative;
  top: -1px;
}

/*0,1 kb*/
@keyframes progress-bar-stripes {
  0% {
    background-position-x: 0.375rem;
  }
}
.progress,
.progress-stacked {
  --bs-progress-height: 0.375rem;
  --bs-progress-font-size: 0.75rem;
  --bs-progress-bg: #e9eef5;
  --bs-progress-border-radius: 8px;
  --bs-progress-box-shadow: var(--bs-box-shadow-inset);
  --bs-progress-bar-color: #ffffff;
  --bs-progress-bar-bg: #1D3E66;
  --bs-progress-bar-transition: width 0.2s ease;
  display: flex;
  height: var(--bs-progress-height);
  overflow: hidden;
  font-size: var(--bs-progress-font-size);
  background-color: var(--bs-progress-bg);
  border-radius: var(--bs-progress-border-radius);
  box-shadow: var(--bs-progress-box-shadow);
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: var(--bs-progress-bar-color);
  text-align: center;
  white-space: nowrap;
  background-color: var(--bs-progress-bar-bg);
  transition: var(--bs-progress-bar-transition);
}

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: var(--bs-progress-height) var(--bs-progress-height);
}

.progress-stacked > .progress {
  overflow: visible;
}

.progress-stacked > .progress > .progress-bar {
  width: 100%;
}

.progress-bar-animated {
  animation: 1s linear infinite progress-bar-stripes;
}

/*0,3 kb*/
/*** BUTTONS ***/
button,
input[type=submit],
input[type=button],
input[type=reset],
.btn-wrap input,
.btn-close,
.btn {
  --bs-btn-focus-box-shadow: 0 0 0 0.125rem inset #a5b2c2 !important;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  max-width: 100%;
  -webkit-appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  column-gap: 0.5em;
}
button .icon-set,
input[type=submit] .icon-set,
input[type=button] .icon-set,
input[type=reset] .icon-set,
.btn-wrap input .icon-set,
.btn-close .icon-set,
.btn .icon-set {
  font-size: 1em;
}
button.btn-sm .icon-set,
input[type=submit].btn-sm .icon-set,
input[type=button].btn-sm .icon-set,
input[type=reset].btn-sm .icon-set,
.btn-wrap input.btn-sm .icon-set,
.btn-close.btn-sm .icon-set,
.btn.btn-sm .icon-set {
  font-size: 1em;
}
button.btn-lg .icon-set,
input[type=submit].btn-lg .icon-set,
input[type=button].btn-lg .icon-set,
input[type=reset].btn-lg .icon-set,
.btn-wrap input.btn-lg .icon-set,
.btn-close.btn-lg .icon-set,
.btn.btn-lg .icon-set {
  font-size: 1.125em;
}
button:focus-visible,
input[type=submit]:focus-visible,
input[type=button]:focus-visible,
input[type=reset]:focus-visible,
.btn-wrap input:focus-visible,
.btn-close:focus-visible,
.btn:focus-visible {
  outline: 1px solid #11253d;
  outline-offset: -1px;
}

.btn-text {
  border: 0;
  padding: 0;
  border-radius: 0;
  text-transform: none;
  background-color: transparent;
  text-align: left;
  line-height: normal;
  vertical-align: top;
  font-size: 1rem;
}
.btn-text:focus-visible {
  color: inherit;
  outline: 0;
  border: 0;
  box-shadow: none;
  text-decoration-color: currentColor;
  text-decoration-color: color-mix(in srgb, currentColor 50%, transparent);
  text-decoration-line: underline;
  background-color: var(--focus-visible-bg);
  color: var(--focus-visible-color);
}

[role=button] {
  cursor: pointer;
}

.btn-clear {
  --bs-btn-disabled-color: #47566a;
  --bs-btn-font-weight: 500;
  --bs-btn-color: #47566a;
  --bs-btn-bg: rgba(255, 255, 255, 0);
  --bs-btn-border-color: rgba(255, 255, 255, 0);
  --bs-btn-hover-color: #47566a;
  --bs-btn-hover-bg: rgba(71, 86, 106, 0.075);
  --bs-btn-hover-border-color: rgba(255, 255, 255, 0);
  --bs-btn-focus-shadow-rgb: 71, 86, 106;
  --bs-btn-active-color: #47566a;
  --bs-btn-active-bg: rgba(71, 86, 106, 0.125);
  --bs-btn-active-border-color: rgba(255, 255, 255, 0);
  --bs-btn-active-shadow: 0 0 0 0 rgba(0, 0, 0, 0.075);
  --bs-btn-disabled-color: #3C4A60;
  --bs-btn-disabled-bg: rgba(255, 255, 255, 0);
  --bs-btn-disabled-border-color: rgba(255, 255, 255, 0);
}
.btn-clear:focus-visible {
  --bs-btn-hover-bg: rgba(0, 0, 0, 0.075);
  --bs-btn-hover-border-color: #778ba3;
  --bs-btn-focus-box-shadow: 0 0 0 0.125rem #a5b2c2;
}

.btn-outline-primary {
  --bs-btn-color: #11253d;
  --bs-btn-bg: #d2d8e0;
  --bs-btn-border-color: #778ba3;
  --bs-btn-hover-color: #0c1929;
  --bs-btn-hover-bg: #a5b2c2;
  --bs-btn-hover-border-color: #778ba3;
  --bs-btn-focus-shadow-rgb: 104, 124, 148;
  --bs-btn-active-color: #11253d;
  --bs-btn-active-bg: #d2d8e0;
  --bs-btn-active-border-color: #11253d;
  --bs-btn-active-shadow: 0 0 0 0 rgba(0, 0, 0, 0.075);
  --bs-btn-disabled-color: #3C4A60;
  --bs-btn-disabled-bg: #d2d8e0;
  --bs-btn-disabled-border-color: #778ba3;
}

.btn-secondary {
  --bs-btn-font-weight: 600;
  --bs-btn-color: #1D3E66;
  --bs-btn-bg: #ffffff;
  --bs-btn-border-color: #c2cfde;
  --bs-btn-hover-color: #1D3E66;
  --bs-btn-hover-bg: #d9d9d9;
  --bs-btn-hover-border-color: #c2cfde;
  --bs-btn-focus-shadow-rgb: 169, 185, 204;
  --bs-btn-active-color: #1D3E66;
  --bs-btn-active-bg: #cccccc;
  --bs-btn-active-border-color: #c2cfde;
  --bs-btn-active-shadow: 0 0 0 0 rgba(0, 0, 0, 0.075);
  --bs-btn-disabled-color: #3C4A60;
  --bs-btn-disabled-bg: #ffffff;
  --bs-btn-disabled-border-color: #c2cfde;
}

.btn-primary {
  --bs-btn-font-weight: 600;
  --bs-btn-color: #16304F;
  --bs-btn-bg: #F6B818;
  --bs-btn-border-color: #F6B818;
  --bs-btn-hover-color: #3C4A60;
  --bs-btn-hover-bg: #f7c33b;
  --bs-btn-hover-border-color: #f7bf2f;
  --bs-btn-focus-shadow-rgb: 212, 164, 32;
  --bs-btn-active-color: #3C4A60;
  --bs-btn-active-bg: #f8c646;
  --bs-btn-active-border-color: #f7bf2f;
  --bs-btn-active-shadow: 0 0 0 0 rgba(0, 0, 0, 0.075);
  --bs-btn-disabled-color: #3C4A60;
  --bs-btn-disabled-bg: #F6B818;
  --bs-btn-disabled-border-color: #F6B818;
}

.product-main-btn {
  --bs-btn-font-weight: 600;
  --bs-btn-color: #16304F;
  --bs-btn-bg: #F6B818;
  --bs-btn-border-color: #F6B818;
  --bs-btn-hover-color: #3C4A60;
  --bs-btn-hover-bg: #f7c33b;
  --bs-btn-hover-border-color: #f7bf2f;
  --bs-btn-focus-shadow-rgb: 212, 164, 32;
  --bs-btn-active-color: #3C4A60;
  --bs-btn-active-bg: #f8c646;
  --bs-btn-active-border-color: #f7bf2f;
  --bs-btn-active-shadow: 0 0 0 0 rgba(0, 0, 0, 0.075);
  --bs-btn-disabled-color: #3C4A60;
  --bs-btn-disabled-bg: #F6B818;
  --bs-btn-disabled-border-color: #F6B818;
}

.orderflow-main-btn {
  --bs-btn-font-weight: 600;
  --bs-btn-color: #16304F;
  --bs-btn-bg: #F6B818;
  --bs-btn-border-color: #F6B818;
  --bs-btn-hover-color: #3C4A60;
  --bs-btn-hover-bg: #f7c33b;
  --bs-btn-hover-border-color: #f7bf2f;
  --bs-btn-focus-shadow-rgb: 212, 164, 32;
  --bs-btn-active-color: #3C4A60;
  --bs-btn-active-bg: #f8c646;
  --bs-btn-active-border-color: #f7bf2f;
  --bs-btn-active-shadow: 0 0 0 0 rgba(0, 0, 0, 0.075);
  --bs-btn-disabled-color: #3C4A60;
  --bs-btn-disabled-bg: #F6B818;
  --bs-btn-disabled-border-color: #F6B818;
}
.orderflow-main-btn.loading::after {
  margin-left: -0.5rem;
  left: 1.75rem;
  right: auto;
}

.btn.loader {
  color: transparent !important;
  position: relative;
  pointer-events: none;
}
.btn.loader::after {
  content: "";
  margin-left: calc(var(--bs-btn-font-size) * var(--bs-btn-line-height) * -0.5);
  display: inline-block;
  width: calc(var(--bs-btn-font-size) * var(--bs-btn-line-height));
  height: calc(var(--bs-btn-font-size) * var(--bs-btn-line-height));
  animation: spin 1.5s linear infinite;
  position: absolute;
  left: 50%;
}
@supports not (mask-size: cover) {
  .btn.loader::after {
    background-position: center;
    background-size: calc(var(--bs-btn-font-size) * var(--bs-btn-line-height));
    background-repeat: no-repeat;
  }
}
@supports (mask-size: cover) {
  .btn.loader.active::after {
    background-color: var(--bs-btn-active-color);
  }
  .btn.loader::after {
    mask-size: auto;
    background-color: var(--bs-btn-color);
    mask-position: center;
    mask-repeat: no-repeat;
  }
}

.show-hide-password-btn {
  --bs-btn-active-color: var(--bs-body-color);
  --bs-btn-hover-color: var(--bs-body-color);
}
.show-hide-password-btn .pw-eye-slash, .show-hide-password-btn.hide .pw-eye {
  display: none;
}
.show-hide-password-btn.hide .pw-eye-slash {
  display: initial;
}
.show-hide-password-btn.btn-text {
  position: absolute;
  z-index: 1;
  right: var(--bs-border-radius);
  height: calc(1.5em + 0.625rem + calc(1px * 2));
  width: calc(1.5em + 0.625rem + calc(1px * 2));
  transform: translateY(-100%);
}
.show-hide-password-btn.btn-in-group {
  border: none;
  outline-offset: 0;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-square, .btn-square-sm, .btn-square-lg {
  padding: 0;
  text-align: center;
  letter-spacing: 0;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.btn-square[class*=btn-outline-], .btn-square-sm[class*=btn-outline-], .btn-square-lg[class*=btn-outline-] {
  border-width: 1px;
}

.btn-square-sm, .btn-sm.btn-square {
  width: calc(1.875rem + 2px);
  height: calc(1.875rem + 2px);
  flex: 0 0 calc(1.875rem + 2px);
  border-radius: 8px;
  font-size: 0.875rem;
}

.btn-square {
  width: calc(2.125rem + 2px);
  flex: 0 0 calc(2.125rem + 2px);
  height: calc(2.125rem + 2px);
}

.btn-square-lg, .btn-lg.btn-square {
  width: calc(2.5rem + 2px);
  flex: 0 0 calc(2.5rem + 2px);
  height: calc(2.5rem + 2px);
  border-radius: 16px;
  font-size: 1.125rem;
}

button:disabled,
button.disabled,
input[type=submit]:disabled,
input[type=submit].disabled,
input[type=button]:disabled,
input[type=button].disabled,
input[type=reset]:disabled,
input[type=reset].disabled,
.btn-wrap input:disabled,
.btn-wrap input.disabled,
.btn:disabled,
.btn.disabled {
  opacity: 0.5;
}

.scroll-to-btn {
  vertical-align: top;
  align-self: flex-start;
}

/*1,6 kb*/
/** BS **/
.main-title {
  font-size: 1.875rem;
  font-family: "Public Sans", "Public Sans-fallback";
  margin-bottom: 1.25rem;
}
.main-title:has(+ .sub-title) {
  margin-bottom: 0;
}

h4, .h4, h5, .h5, h6, .h6 {
  font-family: "Public Sans", "Public Sans-fallback";
}

h5, .h5, h6, .h6 {
  font-weight: 600;
  margin-bottom: 0.9375rem;
}

@media (max-width: 767.98px) {
  h1, .h1 {
    font-size: 1.875rem;
  }
  h2, .h2 {
    font-size: 1.75rem;
  }
  h3, .h3 {
    font-size: 1.5rem;
  }
  h4, .h4 {
    font-size: 1.375rem;
  }
  h5, .h5 {
    font-size: 1.25rem;
  }
  h6, .h6 {
    font-size: 1.125rem;
  }
}
@media (max-width: 575.98px) {
  h1, .h1 {
    font-size: 1.625rem;
  }
  h2, .h2 {
    font-size: 1.5rem;
  }
  h3, .h3 {
    font-size: 1.375rem;
  }
  h4, .h4 {
    font-size: 1.313rem;
  }
  h5, .h5 {
    font-size: 1.188rem;
  }
  h6, .h6 {
    font-size: 1.125rem;
  }
}
/*** TEXTS ***/
.text-line-through {
  text-decoration: line-through;
  text-decoration-thickness: 1px;
}

.fs-0 {
  font-size: 0;
}

.font-xxs {
  font-size: 0.75rem;
}

.font-xs {
  font-size: 0.813rem;
}

.font-s {
  font-size: 0.875rem;
}

.font-m {
  font-size: 1rem;
}

.font-l {
  font-size: 1.125rem;
}

.font-xl {
  font-size: 1.25rem;
}

.font-xxl {
  font-size: 1.5rem;
}

.font-xxxl {
  font-size: 1.75rem;
}

.font-xxxxl {
  font-size: 1.875rem;
}

@media (min-width: 768px) {
  .font-md-l {
    font-size: 1.125rem;
  }
}
@media (min-width: 992px) {
  .font-lg-xxxl {
    font-size: 1.75rem;
  }
}
/*** LINE CLAMP ***/
[class*=line-clamp--] {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
}

.line-clamp--3-12 {
  -webkit-line-clamp: 3;
  line-height: 1.2;
  max-height: 3.6em;
}

.line-clamp--6-15 {
  -webkit-line-clamp: 6;
  line-height: 1.5;
  max-height: 9em;
}

/*0,6 kb*/
.container-max-xxs {
  max-width: calc(360px + var(--grid-gutter-width-actual) * 2);
}

@media (min-width: 440px) {
  .container-max-xs {
    max-width: calc(440px + var(--grid-gutter-width-actual) * 2);
  }
}
@media (min-width: 576px) {
  .container-max-sm {
    max-width: calc(600px + var(--grid-gutter-width-actual) * 2);
  }
}
@media (min-width: 768px) {
  .container-max-md {
    max-width: calc(740px + var(--grid-gutter-width-actual) * 2);
  }
}
@media (min-width: 992px) {
  .container-max-lg {
    max-width: calc(1000px + var(--grid-gutter-width-actual) * 2);
  }
}
@media (min-width: 1240px) {
  .container-max-xl {
    max-width: calc(1200px + var(--grid-gutter-width-actual) * 2);
  }
}
@media (min-width: 1440px) {
  .container-max-xxl {
    max-width: calc(1392px + var(--grid-gutter-width-actual) * 2);
  }
}
[class*=container-max-] {
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin: 0 auto;
}

@media (min-width: 768px) {
  .container,
  .container-fluid {
    --bs-gutter-x: 3rem;
    --bs-gutter-y: 3rem;
    --bs-gap: calc(3rem / 2);
  }
}
.container-fluid {
  max-width: 1920px;
}

.container .container, .container .container-fluid, .container-fluid .container {
  padding-left: 0;
  padding-right: 0;
}

/*0,1 kb*/
.icon-set {
  width: var(--svg-icon-width, 1em);
  flex: 0 0 var(--svg-icon-width, 1em);
  max-height: var(--svg-icon-height, 1em);
  flex-shrink: 0;
  height: auto;
  vertical-align: baseline;
}

.icon-set:not(.svg--cat) {
  fill: currentColor;
}
.icon-set:not(.svg--cat) path, .icon-set:not(.svg--cat) use {
  fill: inherit;
}

.svg--cat {
  vertical-align: middle;
}
.svg--cat:not([fill]) {
  fill: currentColor;
}

.icon-gap {
  gap: 0.5em;
}

.icon-size-lg {
  font-size: 1.125em;
}

.icon-size-xl {
  font-size: 1.25em;
}

.icon-size-xxl {
  font-size: 2em;
}

.icon-size-xxxl {
  font-size: 3em;
}

.icon-size-xxxxl {
  font-size: 4em;
}

.svg-icon-wrapper--b.btn {
  word-break: break-all;
}
.svg-icon-wrapper--b .icon-set {
  margin-right: 0.5em;
}

.svg-icon-wrapper--a.btn {
  word-break: break-all;
}
.svg-icon-wrapper--a .icon-set {
  margin-left: 0.5em;
}

/*0,1 kb*/
/** BS **/
.form-label {
  margin-bottom: 0.125rem;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.25;
  color: rgba(60, 74, 96, 0.7);
}

/* INPUTS */
input[readonly] {
  opacity: 0.65;
  cursor: default;
}

input[type=password]:not(:placeholder-shown) {
  font-family: "Verdana";
  letter-spacing: 0.125em;
}

input[type=password], input[type=text].pw {
  /*padding-right: $input-height;*/
  /*  background-image: none !important;*/
  /*height: $input-height;*/
}
input[type=password].form-control-sm, input[type=text].pw.form-control-sm {
  /*height: $input-height-sm;*/
  padding-right: calc(1.5em + 0.5625rem + calc(1px * 2));
}
input[type=password].form-control-sm + .btn, input[type=text].pw.form-control-sm + .btn {
  height: calc(1.5em + 0.5625rem + calc(1px * 2));
  width: calc(1.5em + 0.5625rem + calc(1px * 2));
}
input[type=password].form-control-lg, input[type=text].pw.form-control-lg {
  /*height: $input-height-lg;*/
  padding-right: calc(1.5em + 0.815rem + calc(1px * 2));
}
input[type=password].form-control-lg + .btn, input[type=text].pw.form-control-lg + .btn {
  height: calc(1.5em + 0.815rem + calc(1px * 2));
  width: calc(1.5em + 0.815rem + calc(1px * 2));
}
input[type=password].not-empty + .btn, input[type=text].pw.not-empty + .btn {
  display: inline-flex;
}

input[type=text].pw {
  letter-spacing: 0.25em;
}

.invalid-feedback, .valid-feedback, .warning-feedback, .form-text--warning {
  color: #3C4A60;
}
.invalid-feedback.active, .valid-feedback.active, .warning-feedback.active, .form-text--warning.active {
  display: block;
}
.invalid-feedback::before, .valid-feedback::before, .warning-feedback::before, .form-text--warning::before {
  content: "";
  width: 4px;
  height: 4px;
  margin-right: 4px;
  border-radius: 50%;
  color: var(--bs-form-invalid-color);
  background-color: currentColor;
  display: inline-block;
  vertical-align: middle;
}

.invalid-feedback::before {
  color: var(--bs-form-invalid-color);
}

.valid-feedback::before {
  color: var(--bs-form-valid-color);
}

.form-control.is-invalid.only-warning {
  border-color: #F6B818;
}
.form-control.is-invalid.only-warning:focus {
  box-shadow: 0 0 0 0.125rem inset rgba(var(--bs-warning-rgb), 0.375);
}
.form-control.is-invalid.only-warning ~ .invalid-feedback::before {
  color: #F6B818;
}

.form-text--warning {
  color: rgba(60, 74, 96, 0.7);
}
.form-text--warning::before {
  color: #F6B818;
}

.input-group-text {
  user-select: none;
}
.input-group-text:has(.btn) {
  align-items: stretch;
}

.input-group .form-text {
  width: 100%;
}

/*** SELECTS ***/
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  appearance: none;
  cursor: pointer;
  max-width: 100%;
  background: none;
  font-family: inherit;
}

select::-ms-expand {
  display: none;
}

select.cust_input_select + label {
  z-index: 0;
}

select {
  /* Firefox select padding hack */
}
select.form-select-sm {
  padding-right: calc(var(--mask-size) + 1rem);
}
select.form-select-lg {
  padding-right: calc(var(--mask-size) + 1.5rem);
}
select:focus {
  box-shadow: 0 0 0 0.125rem #a5b2c2;
}
select:disabled {
  cursor: auto;
}
select:disabled + label {
  z-index: 10;
}
select.is-invalid {
  background-position: center right 4rem;
}
@-moz-document url-prefix() {
  select {
    padding-left: calc(0.5rem - 4px);
  }
}
@supports not (mask-size: cover) {
  select {
    background-repeat: no-repeat;
    background-position: center right calc(2rem - 0.5em);
    background-size: 0.8rem;
  }
  select.form-select-sm {
    background-size: 0.7rem;
  }
  select.form-select-lg {
    background-size: 0.9rem;
  }
}

@supports (mask-size: cover) {
  .form-select-group {
    --mask-size: 0.8em;
    position: relative;
  }
  .form-select-group::after {
    content: "";
    position: absolute;
    top: calc(0.75em + 0.3125rem + 1px);
    right: calc(0.75em + 0.3125rem + 1px);
    transform: translate(50%, -50%);
    margin-left: 0;
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: cover;
    pointer-events: none;
    width: var(--mask-size);
    height: var(--mask-size);
    background-color: rgba(60, 74, 96, 0.7);
    z-index: 5;
  }
  .form-select-group.form-select-group-sm::after {
    font-size: 0.875rem;
    top: calc(0.75em + 0.28125rem + 1px);
    right: calc(0.75em + 0.28125rem + 1px);
  }
  .form-select-group.form-select-group-lg::after {
    font-size: 1.125rem;
    top: calc(0.75em + 0.4075rem + 1px);
    right: calc(0.75em + 0.4075rem + 1px);
  }
}
.has-fault select {
  border-color: #C91D25 !important;
}

.form-group-validation.is-invalid ~ .invalid-feedback {
  display: block;
}

/*** CUSTOM CONTROL ***/
.form-required-text {
  font-size: 0.75rem;
}

.form-check {
  --padding: 0.25em;
  --padding: max(0.375rem,0.25em);
  transition: color 0.2s, background-color 0.2s, border-color 0.2s, box-shadow 0.2s;
  border-radius: 10px;
  cursor: pointer;
  min-height: auto; /*fix*/
  width: fit-content;
  max-width: 100%;
}
.form-check .form-check-input {
  margin-left: calc((1.875em) * -1 + var(--padding));
}
.form-check .form-text {
  margin-top: 0;
}
.form-check:hover {
  background-color: rgba(0, 0, 0, 0.075);
}
.form-check:focus-within .form-check-input {
  outline: 1px solid #11253d;
  outline-offset: -1px;
}
.form-check:has(.form-check-label:focus-visible) .form-check-input {
  outline: 1px solid #11253d;
  outline-offset: -1px;
  box-shadow: 0 0 0 0.125rem #a5b2c2;
}

.form-check-input {
  cursor: inherit;
  margin-top: 0.5em;
}
.form-check-input:focus-visible {
  outline: 1px solid #11253d;
  outline-offset: -1px;
}
.form-check-input.is-valid:focus-visible {
  outline-color: #154727;
  box-shadow: 0 0 0 0.125rem inset #aee0c0;
}
.form-check-input.is-invalid:focus-visible {
  outline-color: #500c0f;
  box-shadow: 0 0 0 0.125rem inset #e9a5a8;
}

.form-check--custom {
  --padding: 0.375em;
  border: 1px solid transparent;
  padding-left: calc(1.125em + 2 * var(--padding));
  width: 100%;
}
.form-check--custom:has(.form-check-input:checked) {
  border-color: #a5b2c2;
  background-color: #d2d8e0;
}
.form-check--custom > .form-check-input {
  margin-left: calc((1.125em + var(--padding)) * -1);
  margin-top: calc(0.1875em + var(--padding));
}

.form-check--custom-no-input {
  --padding: 0.25em 0.5em;
  border: 2px solid #e3e8ef;
  padding-left: 0;
  user-select: none;
}
.form-check--custom-no-input .form-check-label {
  padding: var(--padding);
}
.form-check--custom-no-input:has(.form-check-input:checked) {
  border-color: #a5b2c2;
  background-color: #d2d8e0;
  cursor: default;
}
.form-check--custom-no-input:has(.form-check-input:focus-visible) {
  outline: 1px solid #11253d;
  outline-offset: -1px;
  box-shadow: inset 0 0 0 0.125rem #a5b2c2;
}
.form-check--custom-no-input:hover {
  border-color: #e3e8ef;
}
.form-check--custom-no-input .form-check-input {
  opacity: 0;
  position: absolute;
}

.form-check .invalid-feedback {
  margin-left: -1.875em;
  width: calc(100% + 1.875em);
}

.form-check.font-xs .invalid-feedback, .form-check.font-s .invalid-feedback {
  font-size: 100%;
}

.form-check-label {
  display: block;
  cursor: inherit;
  padding-top: var(--padding);
  padding-right: calc(var(--padding) * 2);
  padding-bottom: var(--padding);
}
.form-check-label::before {
  left: 0;
  text-align: center;
  font-size: 0.625rem;
  color: #fff;
  line-height: calc(1.125em - var(--bs-border-width) * 2);
  pointer-events: inherit;
}
.form-check-label:focus-visible {
  outline: none;
}

/*** FORM ***/
textarea::-webkit-scrollbar-track {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}
textarea::-webkit-input-placeholder {
  font-size: 0.875rem;
}
textarea:-ms-input-placeholder {
  font-size: 0.875rem;
}
textarea::-ms-input-placeholder {
  font-size: 0.875rem;
}
textarea::-moz-placeholder {
  font-size: 0.875rem;
}
textarea::placeholder {
  font-size: 0.875rem;
}

.form-label {
  vertical-align: bottom;
}

.form-control:is([readonly]:not(.is-valid)) {
  background-color: #eef2f7;
}

.form-control.in-progress, .form-select.in-progress {
  cursor: wait;
  padding-right: calc(1.5em + 0.625rem);
  background-image: url("data:image/svg+xml,%3csvg width='12' height='12' viewBox='0 0 12 12' fill='%233C4A60' xmlns='http://www.w3.org/2000/svg'%3e%3cstyle type='text/css'%3e %23a { animation:x 2s linear infinite; transform-origin:center;} @keyframes x { from { transform:rotate%280deg%29;} to { transform:rotate%28360deg%29;} } %3c/style%3e%3cpath id='a' d='M10 6C10 8.20914 8.20914 10 6 10C3.79086 10 2 8.20914 2 6C2 3.79086 3.79086 2 6 2V0C2.68629 0 0 2.68629 0 6C0 9.31371 2.68629 12 6 12C9.31371 12 12 9.31371 12 6H10Z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.15625rem) center;
  background-size: calc(0.75em + 0.3125rem) calc(0.75em + 0.3125rem);
}

.form-select {
  padding-right: calc(var(--mask-size) + 1rem);
}
.form-select[required]:invalid {
  color: rgba(60, 74, 96, 0.7);
}
.form-select[required]:invalid option {
  color: #3C4A60;
}
.form-select.in-progress {
  padding-right: 3.25rem;
  background-position: center right 2rem;
  background-size: 16px 12px;
}

.form-group {
  margin-bottom: 0.75rem;
  position: relative;
}
.form-group[class*=order-mods__param] .form-control::-webkit-input-placeholder {
  color: rgba(60, 74, 96, 0.7);
}
.form-group[class*=order-mods__param] .form-control:-ms-input-placeholder {
  color: rgba(60, 74, 96, 0.7);
}
.form-group[class*=order-mods__param] .form-control::-ms-input-placeholder {
  color: rgba(60, 74, 96, 0.7);
}
.form-group[class*=order-mods__param] .form-control::-moz-placeholder {
  color: rgba(60, 74, 96, 0.7);
}
.form-group[class*=order-mods__param] .form-control::placeholder {
  color: rgba(60, 74, 96, 0.7);
}
.form-group:last-child:not(:only-child) {
  margin-bottom: 0;
}
.form-group > legend {
  width: auto;
  float: none;
}
.form-group span.text_input_radio {
  display: inline-block;
  margin: 0 0 0.5rem 0.625rem;
}

.form-group-sm {
  margin-bottom: 0.625rem;
}
.form-group-sm > label {
  font-size: 0.75rem;
}

.form-group-lg {
  margin-bottom: 1.25rem;
}

.form-group--highlighted {
  background-color: rgba(0, 0, 0, 0.045);
  padding: 0.75rem;
  border-radius: 16px;
}

fieldset.form-group.fieldset--border {
  border: 1px solid #e3e8ef;
}
fieldset.form-group.fieldset--border:focus-within {
  color: #3C4A60;
  background-color: #ffffff;
  border-color: #1D3E66;
  outline: 0;
  box-shadow: 0 0 0 transparent, 0 0 0 0.125rem #a5b2c2;
}

/* invalid number input */
.invalid-feedback {
  text-align: left;
}
.invalid-feedback .error-text {
  display: none;
  padding-right: 5px;
}
.form-control.is-invalid ~ .invalid-feedback .error-text {
  display: inline;
}
.has-invalid-input .invalid-feedback {
  display: block;
  flex: 0 0 100%;
}

.form-control[type=number]:invalid {
  border: 1px solid #C91D25;
}
.form-control[type=number]:invalid ~ .invalid-feedback {
  display: block;
}
.form-control[type=number]:invalid ~ .invalid-feedback .error-text-wrong-format {
  display: inline !important;
}

.custom-file {
  --gap: 0.625rem;
  font-size: 1rem;
  position: relative;
}

.custom-file-label {
  margin-bottom: 0;
  height: 100%;
  display: flex;
  gap: 0.375rem;
  pointer-events: none;
}

.custom-file-name {
  flex-grow: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: flex;
  align-items: center;
  position: relative;
}
.custom-file-input:focus-visible ~ .custom-file-label .custom-file-name, .custom-file-input:focus ~ .custom-file-label .custom-file-name {
  outline: 1px solid #11253d;
  outline-offset: -1px;
  box-shadow: inset 0 0 0 0.125rem #a5b2c2;
}
.custom-file-input.is-invalid:focus-visible ~ .custom-file-label .custom-file-name, .custom-file-input.is-invalid:focus ~ .custom-file-label .custom-file-name {
  outline-color: #C91D25;
  box-shadow: 0 0 0 0.125rem inset rgba(var(--bs-danger-rgb), 0.375);
}
.custom-file-input.is-valid:focus-visible ~ .custom-file-label .custom-file-name, .custom-file-input.is-valid:focus ~ .custom-file-label .custom-file-name {
  outline-color: #34B262;
  box-shadow: 0 0 0 0.125rem inset rgba(var(--bs-success-rgb), 0.375);
}

.custom-file-delete-button {
  position: absolute;
  right: 0.125rem;
  top: 50%;
  pointer-events: auto;
  transform: translateY(-50%);
  display: none;
}
.custom-file-name-text.not-empty + .custom-file-delete-button {
  display: inherit;
}

.custom-file-input {
  cursor: pointer;
  position: absolute;
  top: calc(0.125rem + 0.875rem * 1.25);
  left: 0;
  bottom: 0;
  opacity: 0;
  right: 0;
}
.custom-file-input.is-invalid {
  bottom: calc(0.25rem + 0.75rem * 1.5);
}
.custom-file-input::-webkit-file-upload-button {
  cursor: pointer;
}
.custom-file-input:focus ~ .custom-file-label .custom-file-name {
  color: #3C4A60;
  background-color: #ffffff;
  border-color: #1D3E66;
  outline: 0;
  box-shadow: 0 0 0 transparent, 0 0 0 0.125rem #a5b2c2;
}
.custom-file-input.is-invalid ~ .custom-file-label .custom-file-name {
  border-color: #C91D25;
}
.custom-file-input:not(.disabled):not([disabled]):hover ~ .custom-file-label .custom-file-choose-btn, .custom-file-input:not(.disabled):not([disabled]):focus ~ .custom-file-label .custom-file-choose-btn {
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
}

.custom-file-name-text.not-empty {
  padding-right: calc(calc(1.875rem + 2px) - 0.3125rem);
  overflow: hidden;
  text-overflow: ellipsis;
}
.custom-file-name-text:not(.not-empty) {
  color: rgba(60, 74, 96, 0.7);
}

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

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

::-webkit-calendar-picker-indicator:focus-visible {
  outline: 1px solid #11253d;
  outline-offset: 0;
  box-shadow: 0 0 0 0.125rem #a5b2c2;
  border-radius: 10px;
}

/*1,7 kb*/
/* stickers */
.stickers-wrap {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: 2;
  pointer-events: none;
}

.stickers {
  z-index: 2;
  display: flex;
  row-gap: 0.25rem;
  column-gap: 0.25rem;
  flex-wrap: wrap;
}
.stickers[data-position*=on_] {
  --gap: 0.5rem;
  position: absolute;
  max-width: calc(100% - 2 * var(--gap));
}
.stickers[data-orientation=vertical] {
  flex-direction: column;
}
.stickers[data-orientation=vertical][data-position*=_right] {
  align-items: flex-end;
}
.stickers[data-orientation=horizontal][data-position*=_right] {
  justify-content: flex-end;
}
.stickers[data-position*=_top_] {
  top: var(--gap);
}
.stickers[data-position*=_bottom_] {
  bottom: var(--gap);
  align-items: flex-end;
}
.stickers[data-position*=_left] {
  left: var(--gap);
}
.stickers[data-position*=_right] {
  right: var(--gap);
}
.artdet__image-block .stickers[data-position=above] {
  margin-bottom: 0.5rem;
  align-self: flex-start;
}
@media (min-width: 576px) {
  .artdet__image-block .stickers[data-position=above] {
    max-width: var(--container-max-xxl);
    margin-left: auto;
    margin-right: auto;
  }
}
.artdet__image-block .stickers[data-position=under] {
  max-width: var(--container-max-xxl);
  margin: 0.5rem auto 0;
}

.sticker {
  position: relative;
  white-space: normal;
  margin: 0;
}
.sticker svg, .sticker img {
  max-width: 100%;
  height: auto;
}
.sticker[data-tippy], .sticker a {
  pointer-events: auto;
}
.sticker[data-type=text] {
  max-width: 100%;
}

.sticker-caption {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  line-height: 1.15;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 4px;
  text-align: center;
}

.artdet__image-block .stickers-outer .stickers-wrap {
  right: auto;
  width: var(--main-img-width);
  max-width: 100%;
}

.element-title .main-title, .element-title .sub-title, .element-title .element-links {
  position: relative;
  z-index: 1;
}

:where(.element-title) a {
  text-decoration: none;
}

.element-icon .icon-set {
  vertical-align: middle;
}

.element-img, .element-img-outer {
  border-radius: 10px;
  overflow: hidden;
}

.element-text-vertical-align-top .element-texts {
  justify-content: flex-start;
}
.element-text-vertical-align-center .element-texts {
  justify-content: center;
}
.element-text-vertical-align-bottom .element-texts {
  justify-content: flex-end;
}
.element-text-horizontal-align-left .element-texts {
  align-items: flex-start;
}
.element-text-horizontal-align-left .element-texts .element-text {
  margin-right: auto;
}
.element-text-horizontal-align-center .element-texts {
  align-items: center;
  text-align: center;
}
.element-text-horizontal-align-center .element-texts .element-text {
  margin-right: auto;
  margin-left: auto;
}
.element-text-horizontal-align-right .element-texts {
  align-items: flex-end;
  text-align: right;
}
.element-text-horizontal-align-right .element-texts .element-text {
  margin-left: auto;
}

.element-texts__container {
  overflow: hidden auto;
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE 10+ */
  padding: 0.75rem;
  cursor: auto;
}
.element-texts__container::-webkit-scrollbar {
  background: transparent; /* Chrome/Safari/Webkit */
  width: 0;
  height: 0;
}
@media (min-width: 768px) {
  .element-texts__container {
    padding: 1.5rem;
  }
}

.element-text, .element-links, .html-text {
  word-break: break-word;
  margin-bottom: 0.75rem;
}
.element-text:last-child, .element-links:last-child, .html-text:last-child {
  margin-bottom: 0;
}
.element-text:has(+ .text--button), .element-links:has(+ .text--button), .html-text:has(+ .text--button) {
  margin-bottom: 1.5rem;
}

.element-link {
  font-size: inherit;
  line-height: 1.5;
}
.element-link .icon-set {
  --svg-icon-width: 1em;
  vertical-align: middle;
  line-height: 1;
}
.element-link.icon-link {
  font-size: 1rem;
}

.element-icon-plus-text {
  display: inline;
}
.element-icon-plus-text .icon-set:not(:only-child) {
  margin-right: 0.25em;
}
.element-icon-plus-text.with-indent {
  text-indent: -1em;
  padding-left: 1em;
}
.element-icon-plus-text span {
  vertical-align: middle;
  font-weight: 400;
}

.text--big {
  font-size: 1.875rem;
  margin-bottom: 1rem;
  line-height: 1.25;
}

.text--medium {
  font-size: 1.5rem;
}

.text--big, .text--medium {
  font-family: "Public Sans", "Public Sans-fallback";
  font-weight: 700;
}

.text--small {
  font-size: 1.125rem;
}

.carousel-cell-text__btn-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.text--button {
  position: sticky;
  bottom: 0;
}

.texts--layer {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  text-wrap: balance;
  pointer-events: none;
}
.texts--layer a, .texts--layer button {
  pointer-events: auto;
}

.texts--no-layer {
  border-radius: 10px;
  overflow: hidden;
}

.html-text:not(:only-child):not(:last-child) {
  margin-bottom: 1.5em;
}
.html-text p:last-child {
  margin-bottom: 0;
}

:root {
  --header-height: 0;
  --menu-nav-item-bottom: 0;
  --header-sticky-on-scroll-up-transition-time: 0.25s;
  --fixed-cart-height-on-artdet: 68px;
  --sticky-offset: 0.75rem;
  --search-box-input-height: 2.75rem;
  --carousel-prev-next-btn-width: 2.75rem;
  --carousel-prev-next-btn-height: 2.75rem;
  --carousel-prev-next-gap-top: 0.375rem;
  --focus-visible-bg: #d2d8e0;
  --focus-visible-color: #3C4A60;
  --container-max-xxs: 360px;
  --container-max-xs: 440px;
  --container-max-sm: 600px;
  --container-max-md: 740px;
  --container-max-lg: 1000px;
  --container-max-xl: 1200px;
  --container-max-xxl: 1392px;
  --grid-gutter-width: 1.5rem;
  --grid-gutter-width-actual: 1.5rem;
  --bs-gap: var(--grid-gutter-width-actual) calc(var(--grid-gutter-width-actual) / 2);
  --grid-gutter-width-md: 3rem;
  --container-max-actual: 100%;
  --space-block-padding: 3rem;
  --grid-actual-container-padding-x: calc(var(--grid-gutter-width-actual) / 2);
  --remain-space-by-side: calc((100% - (var(--container-max-actual) - var(--grid-gutter-width-actual) * 2)) / 2);
  --remain-space-by-side-with-padding: calc(var(--remain-space-by-side) + var(--grid-gutter-width-actual) / 2);
  --remain-half-space-by-side: calc(var(--remain-space-by-side) / 2);
  --remain-half-space-by-side-with-padding: calc(var(--remain-half-space-by-side) + var(--grid-gutter-width-actual) / 2);
  --remain-half-space-by-side-without-padding: calc(var(--remain-half-space-by-side) - var(--grid-gutter-width-actual) / 2);
}
@media (prefers-contrast: more) {
  :root {
    --focus-visible-bg: #FFFF00;
    --focus-visible-color: #000000;
  }
}
@media (min-width: 440px) {
  :root {
    --container-max-actual: 100%;
  }
}
@media (min-width: 576px) {
  :root {
    --container-max-actual: 100%;
  }
}
@media (min-width: 768px) {
  :root {
    --container-max-actual: 100%;
    --grid-gutter-width-actual: 3rem;
    --bs-gap: calc(var(--grid-gutter-width-actual) / 2);
  }
}
@media (min-width: 992px) {
  :root {
    --container-max-actual: 100%;
  }
}
@media (min-width: 1240px) {
  :root {
    --container-max-actual: 100%;
  }
}
@media (min-width: 1440px) {
  :root {
    --container-max-actual: 1440px;
  }
}

p:last-child {
  margin-bottom: 0;
}

body {
  overflow-x: hidden;
  overflow-y: scroll;
  scrollbar-gutter: stable;
  min-height: -webkit-fill-available;
  min-height: 100vh;
}
body.modal-open {
  overflow: hidden !important;
}

body, html {
  min-width: 320px;
  scrollbar-width: thin;
}

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

[class*=gy-]:not([class*=row]) {
  row-gap: var(--bs-gutter-y);
}

[class*=gx-]:not([class*=row]) {
  column-gap: var(--bs-gutter-x);
}

a {
  color: inherit;
  text-decoration: none;
  text-underline-offset: 2px;
}
a.has-img.gallery__img-link:focus-visible {
  display: flex;
}
a:not([class]), a.direct-filter-link {
  text-decoration-line: underline;
  text-decoration-color: currentColor;
  text-decoration-color: color-mix(in srgb, currentColor 50%, transparent);
}
a:not([class]):hover, a:not([class]):focus, a:not([class]):focus-visible, a.direct-filter-link:hover, a.direct-filter-link:focus, a.direct-filter-link:focus-visible {
  text-decoration-color: currentColor;
  text-decoration-line: underline;
}
a:not([class]):focus-visible, a.direct-filter-link:focus-visible {
  outline: 0;
  background-color: var(--focus-visible-bg);
  color: var(--focus-visible-color);
}
a:not(:is(.btn, .has-img, .badge)):focus-visible {
  outline: 0;
  background-color: var(--focus-visible-bg);
  color: var(--focus-visible-color);
  text-decoration-line: underline;
}

.icon-link {
  color: inherit;
  text-decoration-color: currentColor;
  text-decoration-color: color-mix(in srgb, currentColor 50%, transparent);
  text-decoration-thickness: 1px;
}
.icon--regular .icon-link, .icon--sharp-regular .icon-link {
  font-weight: 500;
}
.icon--solid .icon-link, .icon--sharp-solid .icon-link {
  font-weight: 600;
}
.icon-link:hover, .icon-link:focus-visible {
  outline: 0;
  text-decoration-color: currentColor;
  text-decoration-line: underline;
  text-decoration-thickness: 1px;
}

/* nem látszódhat az oldal explicit esetén */
div#overlay_explicit {
  display: flex;
  background: var(--bs-primary-300);
  opacity: 1;
  transition: none;
  position: fixed;
  inset: 0;
  z-index: 1055;
  padding-right: 0 !important;
}

.nanobar {
  color: #ffffff;
  overflow: hidden;
  background-color: #1D3E66;
  text-align: center;
}
.nanobar p:last-of-type {
  margin-bottom: 0;
}
.nanobar ~ .nanobar {
  border-top: 1px solid #FFFFFF;
}

.nanobar__btn-close {
  background: #1D3E66;
  color: #ffffff;
  border-color: currentColor;
  padding: 0.28125rem;
}
.nanobar__btn-close .icon-set {
  font-size: 1em;
}
.nanobar__btn-close:hover, .nanobar__btn-close:active, .nanobar__btn-close:focus {
  color: #ffffff;
}

.header {
  color: #16304F;
  position: relative;
}
.header-with-sticky-behavior .header:not(.header--dumbed), .header-is-sticky.header-with-sticky-behavior-on-scroll-up .header:not(.header--dumbed) {
  position: sticky;
  z-index: 1021;
  top: 0;
}
.header-is-hidden-by-scroll-down .header {
  visibility: hidden;
}
.header .btn {
  --bs-btn-padding-x: 0.375em;
  --bs-btn-padding-y: 0.375em;
}
.header .btn-clear {
  --bs-btn-color: #16304F;
  --bs-btn-bg: rgba(255, 255, 255, 0);
  --bs-btn-border-color: rgba(255, 255, 255, 0);
  --bs-btn-hover-color: #16304F;
  --bs-btn-hover-bg: rgba(22, 48, 79, 0.075);
  --bs-btn-hover-border-color: rgba(255, 255, 255, 0);
  --bs-btn-focus-shadow-rgb: 22, 48, 79;
  --bs-btn-active-color: #16304F;
  --bs-btn-active-bg: rgba(22, 48, 79, 0.125);
  --bs-btn-active-border-color: rgba(255, 255, 255, 0);
  --bs-btn-active-shadow: 0 0 0 0 rgba(0, 0, 0, 0.075);
  --bs-btn-disabled-color: #3C4A60;
  --bs-btn-disabled-bg: rgba(255, 255, 255, 0);
  --bs-btn-disabled-border-color: rgba(255, 255, 255, 0);
}
.header .icon-set {
  font-size: 1.5em;
  vertical-align: top;
}

.header__inner {
  --header-inner-padding-y: var(--grid-actual-container-padding-x);
  padding-top: var(--header-inner-padding-y);
  padding-bottom: var(--header-inner-padding-y);
}
.header-with-sticky-behavior .header:not(.header--dumbed) .header__inner {
  transition: box-shadow ease var(--header-sticky-on-scroll-up-transition-time);
}
.header-with-sticky-behavior-on-scroll-up.header-is-sticky-with-transition .header:not(.header--dumbed) .header__inner {
  transition: top ease var(--header-sticky-on-scroll-up-transition-time);
}
.header__inner::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  background: linear-gradient(to bottom, #FFFFFF 0%, #FFFFFF 100%);
}
.header-with-sticky-behavior-on-scroll-up.header-is-sticky-with-transition .header__inner::before {
  transition: opacity ease var(--header-sticky-on-scroll-up-transition-time);
}
.header-is-sticky .header:not(.header--dumbed) .header__inner {
  box-shadow: 0 16px 16px -16px rgba(0, 0, 0, 0.15);
}
.header-is-sticky.header-with-sticky-behavior-on-scroll-up .header:not(.header--dumbed) .header__inner {
  top: calc((var(--header-height) + 16px) * -1);
  position: relative;
}
.header-is-sticky.header-is-visible-by-scroll-up .header:not(.header--dumbed) .header__inner {
  top: 0;
}
.header--dumbed .header__inner {
  padding-bottom: var(--header-inner-padding-y);
}
@media (min-width: 768px) {
  .header__inner {
    --header-inner-padding-y: 0.75rem;
  }
}

.header__container--top {
  grid-template-columns: auto 1fr auto;
  gap: 0.75rem var(--grid-actual-container-padding-x);
}

.header_text_section_2.in-header-top, #offcanvas-box-search {
  grid-column: 1/-1;
}

.header__container--bottom {
  grid-template-columns: 1fr;
  gap: 0.75rem var(--grid-actual-container-padding-x);
}
.header__container--bottom:has(> .header_text_section_2) {
  grid-template-columns: auto minmax(200px, 1fr);
}

.header__container--dumbed {
  grid-template-columns: minmax(auto, 300px) auto;
  gap: 0.75rem;
}
@media (max-width: 767.98px) {
  .header__container--dumbed .order-steps {
    grid-column: 1/-1;
  }
}

@media (min-width: 768px) {
  .header__container--top {
    grid-template-columns: auto fit-content(min(30%, 400px)) 1fr auto;
  }
  .header__container--dumbed {
    grid-template-columns: fit-content(min(30vw, 300px)) 1fr auto;
  }
  #offcanvas-box-search {
    grid-column: 3/4;
  }
}
@media (min-width: 992px) {
  .header--with-hamburger {
    grid-template-columns: auto fit-content(min(30%, 400px)) 1fr 1fr auto;
  }
  .header--with-hamburger .header_text_section_2.in-header-top {
    grid-column: 4/5;
  }
}
@media (min-width: 1240px) {
  .header--with-menu {
    grid-template-columns: auto 1fr auto;
  }
  .header--with-menu #offcanvas-box-search {
    grid-column: 2/3;
  }
  .header__container--bottom {
    grid-template-columns: auto 1fr;
  }
  .header__container--bottom:has(> .header_text_section_2) {
    grid-template-columns: auto auto minmax(150px, 1fr);
  }
}
@media (max-width: 575.98px) {
  #offcanvas-box-search {
    min-height: 122px;
    max-height: 100dvh;
  }
}
.logo {
  line-height: 1;
}

.header_text_section_2 {
  color: #1D3E66;
  font-size: 0.875rem;
  font-weight: 500;
}
.header_text_section_2.in-header-bottom {
  text-align: right;
}
.header_text_section_2.in-header-top {
  text-align: center;
}
.header_text_section_2 a {
  margin-left: 1em;
  text-decoration: none;
}
.header_text_section_2 a[href^=tel], .header_text_section_2 a[href^=mailto] {
  display: inline-flex;
  align-items: center;
  vertical-align: middle;
}
@supports (mask-size: cover) {
  .header_text_section_2 a[href^=tel]::before, .header_text_section_2 a[href^=mailto]::before {
    content: "";
    mask-size: auto;
    width: 1em;
    height: 1em;
    background-color: currentColor;
    mask-position: center;
    mask-repeat: no-repeat;
    display: inline-block;
    vertical-align: middle;
    margin-right: 0.5em;
  }
}
@supports not (mask-size: cover) {
  .header_text_section_2 a[href^=tel], .header_text_section_2 a[href^=mailto] {
    background-position: left center;
    background-size: 1em;
    background-repeat: no-repeat;
    padding-left: 1.5em;
  }
}
@media (max-width: 991.98px) {
  .header_text_section_2 {
    flex: 100%;
  }
  .header_text_section_2-slide > p:has(a) {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    column-gap: 1rem;
  }
  .header_text_section_2-slide > p:has(a) a {
    margin-left: 0;
  }
  .header_text_section_2.in-header-top {
    order: 1;
  }
}

.ac_results {
  display: none !important;
}

.cart-box__product-count {
  display: block;
  font-variant-numeric: tabular-nums;
  line-height: 1;
}
.cart-box__product-count:has(.cart-empty-text) {
  display: none;
}

/** DROPDOWN CUSTOM **/
.nav-item--menu .dropdown-item {
  line-height: 1.25;
  white-space: normal;
}

.nav-link__name {
  flex-grow: 1;
}

.nav-item:hover, .nav-item:has(> .show), .nav-item:has(> .active) {
  background-color: #f2f2f2;
}
.nav-item button.dropdown-toggle {
  border: 1px solid transparent;
  flex-grow: 0;
  --bs-btn-focus-box-shadow: 0 0 0 0.125rem #a5b2c2;
  --bs-btn-active-shadow: 0 0 0 0.125rem #a5b2c2;
}
.nav-item button.dropdown-toggle .icon-set {
  font-size: 1em;
}

.nav-list-parent-link {
  text-decoration: none;
}

.nav-link {
  --bs-btn-active-shadow: 0 0 0 0 rgba(0, 0, 0, 0.075);
  --bs-btn-active-bg: transparent;
  --bs-btn-active-border-color: transparent;
  display: flex;
  align-items: center;
  user-select: none;
  flex-grow: 1;
  border-radius: 10px;
  text-align: left;
  justify-content: flex-start;
  border: 1px solid transparent;
}

.navbar-nav .nav-item {
  border-radius: 10px;
}
.navbar-nav .nav-item.dropdown:has(.dropdown-toggle.show) {
  background-color: #f2f2f2;
}
.navbar-nav .dropdown-menu .nav-item {
  width: 100%;
}
.navbar-nav .dropdown-menu .submenu[data-bs-popper] {
  margin-left: var(--bs-dropdown-padding-y);
  margin-top: calc(var(--bs-dropdown-padding-y) * -1);
  left: 100%;
  top: 0;
}
.navbar-nav .dropdown-menu .submenu[data-bs-popper][data-popper-placement^=right] {
  margin-left: var(--bs-dropdown-padding-y) !important;
}
.navbar-nav .dropdown-menu .submenu[data-bs-popper][data-popper-placement^=right-start] {
  margin-top: calc(var(--bs-dropdown-padding-y) * -1) !important;
}
.navbar-nav .dropdown-menu .submenu[data-bs-popper][data-popper-placement^=right-end] {
  margin-bottom: calc(var(--bs-dropdown-padding-y) * -1) !important;
}
.navbar-nav .dropdown-menu .icon-set {
  transform: rotate(-90deg);
}
.navbar-nav .dropdown-menu .dropdown-toggle-split.show .icon-set {
  transform: rotate(-90deg) scaleY(-1);
}
.navbar-nav > .dropdown > .dropdown-toggle.show .icon-set {
  transform: scaleY(-1);
}
.navbar-nav.with-click .btn-group .nav-link {
  padding-right: 0.375rem;
}
.navbar-nav.with-click .btn-group .nav-link > .icon-set {
  display: none;
}
.navbar-nav.with-hover-intent .nav-link {
  gap: 0.25rem;
}
.navbar-nav.with-hover-intent .icon-set {
  margin-left: auto;
  font-size: 1em;
}
.navbar-nav.navbar-nav--header .dropdown-menu {
  overflow: hidden auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: #a9b6c5 #ffffff;
  max-height: calc(100vh - var(--menu-nav-item-bottom, 120px) - var(--bs-dropdown-spacer) - 1rem);
  max-width: 20rem;
  width: max-content;
}
.navbar-nav.navbar-nav--header .dropdown-menu::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
.navbar-nav.navbar-nav--header .dropdown-menu::-webkit-scrollbar-thumb {
  background: #a9b6c5;
  border: 3px solid #a9b6c5;
  border-radius: 3px;
}
.navbar-nav.navbar-nav--header .dropdown-menu::-webkit-scrollbar-thumb:hover {
  background: #8494a7;
  border: 3px solid #8494a7;
}
.navbar-nav.navbar-nav--header .dropdown-menu::-webkit-scrollbar-track {
  background-color: #ffffff;
  border-radius: 3px;
}
html.header-with-sticky-behavior-on-scroll-up .navbar-nav.navbar-nav--header .dropdown-menu, html.header-with-sticky-behavior .navbar-nav.navbar-nav--header .dropdown-menu {
  max-height: calc(100vh - var(--menu-nav-item-bottom, var(--header-height, 120px)) - var(--bs-dropdown-spacer) - 1rem);
}
.navbar-nav.navbar-nav--header > li:hover {
  background-color: rgba(22, 48, 79, 0.075);
}
.navbar-nav.navbar-nav--header > li:has(> .show), .navbar-nav.navbar-nav--header > li:has(> .active) {
  background-color: rgba(22, 48, 79, 0.125);
}
.navbar-nav.navbar-nav--header > li > .nav-link {
  --bs-nav-link-color: #16304F;
  --bs-nav-link-hover-color: #16304F;
  --bs-navbar-active-color: #16304F;
}
.navbar-nav.navbar-nav--header > li > .dropdown-toggle {
  --bs-btn-color: #16304F;
  --bs-btn-hover-color: #16304F;
}
@media (min-width: 992px) and (max-width: 1239.98px) and (pointer: fine) {
  .navbar-nav.navbar-nav--header {
    margin-left: calc(var(--bs-navbar-nav-link-padding-x) * -1);
  }
}
@media (pointer: fine) {
  .navbar-nav .dropdown-toggle-split, .navbar-nav .dropdown-toggle {
    padding-inline: 0.25em;
  }
  .navbar-nav.with-click .nav-item:hover > .dropdown-toggle {
    background-color: #e6e6e6;
    border-color: #e6e6e6;
  }
  .navbar-nav.with-click .nav-item:hover > .dropdown-toggle:hover {
    background-color: #d9d9d9;
    border-color: #d9d9d9;
  }
  .navbar-nav.with-hover-intent .btn-group > .nav-link {
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
  }
  .navbar-nav.with-hover-intent .dropdown-toggle {
    display: none;
  }
  .navbar-nav.navbar-nav--header.with-click .nav-item.dropdown:has(.dropdown-toggle.show) {
    background-color: rgba(22, 48, 79, 0.15);
  }
  .navbar-nav.navbar-nav--header.with-click .nav-item:hover > .dropdown-toggle {
    background-color: rgba(22, 48, 79, 0.05);
    border-color: rgba(22, 48, 79, 0.05);
  }
  .navbar-nav.navbar-nav--header.with-click .nav-item:hover > .dropdown-toggle:hover {
    background-color: rgba(22, 48, 79, 0.1);
    border-color: rgba(22, 48, 79, 0.1);
  }
}
@media (pointer: coarse) {
  .navbar-nav.with-click, .navbar-nav.with-hover-intent {
    gap: 0.125rem;
  }
  .navbar-nav.with-click > .nav-item, .navbar-nav.with-hover-intent > .nav-item {
    background-color: #f2f2f2;
  }
  .navbar-nav.with-click .dropdown-toggle, .navbar-nav.with-hover-intent .dropdown-toggle {
    background-color: #ececec;
    border-color: #ececec;
  }
  .navbar-nav.with-click .dropdown-toggle.show, .navbar-nav.with-hover-intent .dropdown-toggle.show {
    background-color: #dfdfdf;
    border-color: #dfdfdf;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .navbar-nav.with-hover-intent .nav-link .icon-set {
    display: none;
  }
  .navbar-nav.navbar-nav--header > .nav-item {
    background-color: rgba(22, 48, 79, 0.075);
  }
  .navbar-nav.navbar-nav--header > .nav-item.dropdown:has(.dropdown-toggle.show) {
    background-color: rgba(22, 48, 79, 0.15);
  }
  .navbar-nav.navbar-nav--header > .nav-item > .dropdown-toggle {
    background-color: rgba(22, 48, 79, 0.05);
    border-color: rgba(22, 48, 79, 0.05);
  }
  .navbar-nav.navbar-nav--header > .nav-item > .dropdown-toggle.show {
    background-color: rgba(22, 48, 79, 0.1);
    border-color: rgba(22, 48, 79, 0.1);
  }
}

.btn-close:focus-visible {
  box-shadow: inset 0 0 0 0.125rem #a5b2c2;
}
.btn-close.btn-sm {
  padding: 0.28125rem;
}
.btn-close.btn-sm .icon-set {
  font-size: 1em;
}

/*** HEADER SEARCH ***/
input[type=search]::-webkit-search-cancel-button {
  font-size: 1.5em;
  width: 1em;
  height: 1em;
  cursor: pointer;
  -webkit-appearance: none;
}
@supports (mask-size: cover) {
  input[type=search]::-webkit-search-cancel-button {
    mask-size: 0.8em;
    background-color: currentColor;
    mask-position: center;
    mask-repeat: no-repeat;
  }
}
@supports not (mask-size: cover) {
  input[type=search]::-webkit-search-cancel-button {
    background-position: center;
    background-size: 0.8em;
    background-repeat: no-repeat;
  }
}

.btn__text {
  display: none;
  z-index: 1;
}
@media (min-width: 992px) {
  .btn__text {
    display: initial;
  }
}

.header__buttons-wrapper {
  display: inline-flex;
  white-space: nowrap;
}
.header__buttons-wrapper .icon-set {
  min-width: 1em;
}

/* SEARCH */
@media (max-width: 767.98px) {
  .search-box, .offcanvas-box-search {
    order: 10;
    grid-column: 1/-1;
  }
}
@media (min-width: 768px) {
  .search-bar-in-offcanvas .offcanvas-box-search, .search-bar-visible .search-box {
    max-width: 400px;
    min-width: 244px;
  }
}
.search-box__input {
  cursor: pointer;
  position: relative;
  height: var(--search-box-input-height);
  line-height: calc(var(--search-box-input-height) - 2 * 1px);
  padding: 0 var(--search-box-input-height) 0 0.5rem;
  flex-shrink: 0;
}
.search-box__input:focus {
  cursor: text;
}
.search-box__input.ajax-loading ~ .search-box__loading {
  display: flex;
}
.search-box__input.form-control[readonly] {
  background-color: #ffffff;
  cursor: pointer;
  opacity: 1;
}
.search-box__input::-webkit-input-placeholder {
  text-align: left;
  font-weight: normal;
  color: rgba(60, 74, 96, 0.7);
}
.search-box__input:-ms-input-placeholder {
  text-align: left;
  font-weight: normal;
  color: rgba(60, 74, 96, 0.7);
}
.search-box__input::-ms-input-placeholder {
  text-align: left;
  font-weight: normal;
  color: rgba(60, 74, 96, 0.7);
}
.search-box__input::-moz-placeholder {
  text-align: left;
  font-weight: normal;
  color: rgba(60, 74, 96, 0.7);
}
.search-box__input::placeholder {
  text-align: left;
  font-weight: normal;
  color: rgba(60, 74, 96, 0.7);
}

.search-box__search-btn {
  padding: 0;
  height: var(--search-box-input-height);
  width: var(--search-box-input-height);
  aspect-ratio: 1/1;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 3;
}

/*** HEADER CURRENCY/LANG ***/
.lang-box a {
  display: flex;
  align-items: center;
  line-height: 1;
  transition: color 0.2s, background-color 0.2s, border-color 0.2s, box-shadow 0.2s;
}
.lang-box a:hover {
  color: rgba(60, 74, 96, 0.7);
}
@media (min-width: 992px) {
  .lang-box__dropdown-btn {
    padding-left: 1.25rem;
    padding-right: 0rem;
  }
}

.lang-box .form-check-label {
  display: flex;
  column-gap: var(--padding);
  align-items: baseline;
}

.lang-box__icon {
  line-height: 0;
  flex: 0 0 var(--image-width);
  width: var(--image-width);
  transform: translateY(-1px);
}
.lang-box__icon img {
  max-height: var(--image-height);
}

.currency {
  margin: 0;
  min-height: 1em;
}

.currency__radio:not(:checked) + label:hover {
  color: rgba(60, 74, 96, 0.7);
}

.currency__label {
  display: flex;
  align-items: center;
  font-weight: 500;
  transition: color 0.2s, background-color 0.2s, border-color 0.2s, box-shadow 0.2s;
  line-height: 1.2;
  white-space: nowrap;
  margin-bottom: 0;
}
.currency__label::before, .currency__label::after {
  display: none !important;
}

.currency__radio:checked + label {
  cursor: default;
}

.lang-box__title, .currency-box__title {
  white-space: nowrap;
  margin-bottom: 1.25rem;
  font-weight: 700;
}

.lang-box__languages, .currency-box__currencies {
  list-style: none;
  margin-bottom: 0;
  display: flex;
  flex-flow: column nowrap;
  row-gap: 0.625rem;
}

@media (max-width: 991.98px) {
  .lang-box__languages, .currency-box__languages {
    justify-content: flex-end;
  }
}

.currency-box__sign::before {
  content: "(";
}
.currency-box__sign::after {
  content: ")";
}
.currency-box__code {
  min-width: 2.5em;
}

.main {
  padding-top: 0.75rem;
  padding-bottom: 1.5rem;
  min-height: 80vh;
}
.aos #ud_shop_start .main > * {
  overflow: hidden; /*aos shift fix*/
}
.aos #ud_shop_start .main #box_top_content, .aos #ud_shop_start .main #page_artref_inner, .aos #ud_shop_start .main #box_art_content, .aos #ud_shop_start .main #box_last_content {
  overflow: visible;
}
#ud_shop_start .main {
  padding-top: 0;
  padding-bottom: 0;
}
#ud_shop_start .main > .layout--carousel:first-child {
  padding-top: 0.75rem;
}
.main * {
  scroll-margin-top: 20px;
}
html.header-with-sticky-behavior .main *, html.header-is-visible-by-scroll-up .main * {
  scroll-margin-top: calc(var(--header-height) + 20px);
}

.main--landing {
  width: 100%;
  padding-top: 2.5rem;
}

.custom-content {
  margin-bottom: 1.5rem;
  color: rgba(60, 74, 96, 0.7);
}

.custom-sub-content:last-child {
  margin-bottom: 0;
}

.custom-content__content p:last-child, .custom-sub-content p:last-child {
  margin-bottom: 0;
}

.custom-content__content[class*=container-max-] {
  padding-left: 0;
  padding-right: 0;
}

.read-more {
  --readmore-btn-bg: #FFFFFF;
  --readmore-fade-bg: 255, 255, 255;
  position: relative;
  overflow: hidden;
  box-sizing: content-box;
  max-height: calc(10 * 1rem * 1.5);
  line-height: 1.5;
  font-size: 1rem;
}
.product__description-short .read-more {
  max-height: calc(4 * 1rem * 1.5);
  line-height: 1.5;
  font-size: 1rem;
}
#artdet__short-descrition .read-more {
  max-height: calc(4 * 1rem * 1.5);
  line-height: 1.5;
  font-size: 1rem;
}
.product-tooltip #artdet__short-descrition .read-more {
  max-height: calc(5 * 1rem * 1.5);
  line-height: 1.5;
  font-size: 1rem;
}
#page_art_content .custom-content .read-more, #page_artspec_content .custom-content .read-more {
  max-height: calc(10 * 1rem * 1.5);
  line-height: 1.5;
  font-size: 1rem;
}
#page_cat_content .custom-content .read-more {
  max-height: calc(10 * 1rem * 1.5);
  line-height: 1.5;
  font-size: 1rem;
}
.read-more.product-review__advantage, .read-more.product-review__disadvantage {
  max-height: calc(3 * 0.875rem * 1.25);
  line-height: 1.25;
  font-size: 0.875rem;
}
.read-more.product-review__message {
  max-height: calc(5 * 0.875rem * 1.25);
  line-height: 1.25;
  font-size: 0.875rem;
}
.read-more.product-review__admin-answer-inner {
  max-height: calc(5 * 0.875rem * 1.25);
  line-height: 1.25;
  font-size: 0.875rem;
  --readmore-btn-bg: #f4f6f9;
  --readmore-fade-bg: 244, 246, 249;
}

.read-more__content p:last-child {
  margin-bottom: 0;
}

.read-more__btn-wrap {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 1;
  text-align: right;
  line-height: inherit;
  padding-top: 0px;
  transition: opacity 0.15s linear;
  opacity: 0;
  visibility: hidden;
}
.read-more.has-button .read-more__btn-wrap {
  opacity: 1;
  visibility: visible;
}

.read-more__btn {
  --svg-icon-width: 0.55em;
  padding: 0 0 0 0.5rem;
  vertical-align: baseline;
  font-size: 0.875rem;
  background-color: var(--readmore-btn-bg);
}
.read-more__btn .icon-set {
  transform: rotate(90deg);
}
.read-more__btn.is-active::before {
  content: attr(data-opened);
}
.read-more__btn.is-active .icon-set {
  transform: rotate(-90deg);
}
.read-more__btn::before {
  content: attr(data-closed);
}
.read-more__btn:hover::after {
  opacity: 0.5;
}
.read-more__btn::after {
  content: "";
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  left: 0;
  right: 0;
  height: 1.5rem;
  background: linear-gradient(to bottom, rgba(var(--readmore-fade-bg), 0) 0%, rgba(var(--readmore-fade-bg), 1) 100%);
  z-index: -1;
  transition: opacity 0.15s linear;
}
.is-opened .read-more__btn::after {
  display: none;
}

.layout-container {
  display: flex;
  flex-direction: column;
  container-type: inline-size;
  order: var(--order-default, 0);
}
@media (min-width: 440px) {
  .layout-container {
    order: var(--order-xs, var(--order-default, 0));
  }
}
@media (min-width: 576px) {
  .layout-container {
    order: var(--order-sm, var(--order-xs, var(--order-default, 0)));
  }
}
@media (min-width: 768px) {
  .layout-container {
    order: var(--order-md, var(--order-sm, var(--order-xs, var(--order-default, 0))));
  }
}
@media (min-width: 992px) {
  .layout-container {
    order: var(--order-lg, var(--order-md, var(--order-sm, var(--order-xs, var(--order-default, 0)))));
  }
}
@media (min-width: 1240px) {
  .layout-container {
    order: var(--order-xl, var(--order-lg, var(--order-md, var(--order-sm, var(--order-xs, var(--order-default, 0))))));
  }
}
@media (min-width: 1440px) {
  .layout-container {
    order: var(--order-xxl, var(--order-xl, var(--order-lg, var(--order-md, var(--order-sm, var(--order-xs, var(--order-default, 0)))))));
  }
}
.layout-container .form-group:last-child {
  margin-bottom: 0;
}

.layout-container:empty, .layout-subcontainer:empty, .layout-block:empty {
  display: none !important;
}

.product-list-grid {
  grid-template-columns: minmax(0, 1fr);
}
@media (min-width: 1240px) {
  .filter-exists.filter-box-in-sidebar .product-list-grid, .filter-not-exists.filter-box-content-exists.filter-box-in-sidebar .product-list-grid {
    grid-template-columns: 330px minmax(0, 1fr);
  }
}

/* HIGHLIGHTED BLOCKS */
.highlighted-block {
  --padding: 0.75rem;
  padding: var(--padding);
  background-color: #ffffff;
  color: #3C4A60;
  border: 1px solid #e3e8ef;
  border-radius: 10px;
  scrollbar-width: thin;
  scrollbar-color: #a9b6c5 #ffffff;
}
.highlighted-block::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
.highlighted-block::-webkit-scrollbar-thumb {
  background: #a9b6c5;
  border: 3px solid #a9b6c5;
  border-radius: 3px;
}
.highlighted-block::-webkit-scrollbar-thumb:hover {
  background: #8494a7;
  border: 3px solid #8494a7;
}
.highlighted-block::-webkit-scrollbar-track {
  background-color: #ffffff;
  border-radius: 3px;
}
.highlighted-block .line-separator {
  margin-left: calc(var(--padding) * -1);
  margin-right: calc(var(--padding) * -1);
  width: auto;
}
@media (min-width: 768px) {
  .highlighted-block {
    --padding: 1.5rem;
  }
}
.highlighted-block .highlighted-block {
  --padding: 0;
  background-color: transparent;
}

.highlighted-primary {
  background-color: #d2d8e0;
  color: var(--bs-primary-text-emphasis);
  border-radius: 10px;
  font-weight: 500;
  padding: 0.5rem;
}

/* native scroll snap carousel */
.carousel-block {
  position: relative;
}
html:not(.carousels-in-container) .carousel-block {
  width: 1920px;
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  padding-left: var(--grid-actual-container-padding-x);
  padding-right: var(--grid-actual-container-padding-x);
}
.container .carousel-block {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.carousel-block:not(.carousel-block--grid) .carousel-cell {
  flex: 0 0 var(--main-img-width);
  width: var(--main-img-width);
  max-width: 100%;
}
.carousel-block:not(.carousel-block--grid).with-auto-crop .element-img, .carousel-block:not(.carousel-block--grid).with-auto-crop .product__img {
  object-fit: cover;
  height: 100%;
}
.carousel-block .main-title {
  margin-bottom: min(1.25rem, 1.25rem - 15px);
}
.carousel-block.carousel-block--with-nav {
  padding-bottom: calc(var(--carousel-prev-next-gap-top) + var(--carousel-prev-next-btn-height));
}
.carousel-block .type--3.card--1 .product__inner > .row {
  height: 100%;
  align-items: center;
}
.carousel-block.is-hidden {
  pointer-events: none;
}
.carousel-block.is-hidden .carousel__nav {
  opacity: 0;
}
.carousel-block.no-paging .carousel__nav {
  visibility: hidden;
}
.carousel-block:not(.no-paging) .carousel {
  cursor: grab;
}
.carousel-block .carousel__nav {
  max-width: calc(var(--container-max-actual) - var(--grid-gutter-width-actual));
}
.carousel-block.scrolling .carousel__prev-next-btn {
  pointer-events: none;
}
.carousel-block .img-lazy-bg-wrapper {
  position: absolute;
  top: 0;
  height: 100%;
  overflow: hidden;
}

/*** SEPARATORS ***/
.line-separator {
  --border-width: 1px;
  /*flex: 100%;*/
  width: 100%;
  display: flex;
  align-items: center;
  text-align: center;
  text-transform: uppercase;
  color: #e3e8ef;
  font-weight: 600;
  margin-top: 0.6375em;
  margin-bottom: 0.6375em;
  font-size: 80%;
}
.line-separator::before {
  content: "";
  flex: 1;
  border: solid #e3e8ef;
  border-width: 0 0 var(--border-width) 0;
}
.line-separator--text {
  min-height: 1em;
  line-height: 1;
}
.line-separator--text::after {
  content: "";
  flex: 1;
  border: solid #e3e8ef;
  border-width: 0 0 var(--border-width) 0;
}
.line-separator--text span {
  margin: 0 calc(var(--border-width) * 1.5);
  padding: 0 0.25em;
}
.line-separator--dashed::before {
  border-style: dashed;
}
.line-separator--text.line-separator--dashed::after {
  border-style: dashed;
}
.line-separator--vertical {
  flex-direction: column;
  flex: 0 0 auto;
  width: auto;
  margin: 0 0.6375em 0 0.6375em;
}
.line-separator--vertical::before {
  border-width: 0 var(--border-width) 0 0;
}
.line-separator--vertical.line-separator--text span {
  margin: calc(var(--border-width) * 1.5) 0;
  padding: 0.25em 0;
}
.line-separator--vertical.line-separator--text::after {
  border-width: 0 var(--border-width) 0 0;
  margin: var(--border-width) 0 0 0;
}
.line-separator--vertical.line-separator--text::before {
  margin: 0 0 var(--border-width) 0;
}

/* ALERTS */
.alert {
  column-gap: 0.5em;
}
.alert > .icon-set {
  font-size: 1.25em;
  vertical-align: middle;
  color: var(--bs-alert-icon-color);
}
.alert.no-product {
  display: inline-block;
}

.alert-iflex {
  display: inline-flex;
  align-items: center;
}

@media (min-width: 1440px) {
  .carousel-block--fluid-indent .carousel-cell:first-child,
  .carousels-fluid-indent .layout-container--full-width .carousel-block .carousel-cell:first-child,
  .carousels-fluid-indent .page-content--full-width .carousel-block .carousel-cell:first-child {
    margin-left: var(--remain-half-space-by-side-without-padding);
  }
  .carousel-block--fluid-indent .carousel-cell:last-child,
  .carousels-fluid-indent .layout-container--full-width .carousel-block .carousel-cell:last-child,
  .carousels-fluid-indent .page-content--full-width .carousel-block .carousel-cell:last-child {
    margin-right: var(--remain-half-space-by-side-without-padding) !important;
  }
  .container .carousel-block--fluid-indent .carousel-cell, .offcanvas .carousel-block--fluid-indent .carousel-cell, .modal .carousel-block--fluid-indent .carousel-cell {
    scroll-snap-align: start;
  }
  .container .carousel-block--fluid-indent .carousel-cell:first-child, .offcanvas .carousel-block--fluid-indent .carousel-cell:first-child, .modal .carousel-block--fluid-indent .carousel-cell:first-child {
    margin-left: 0;
  }
  .container .carousel-block--fluid-indent .carousel-cell:last-child, .offcanvas .carousel-block--fluid-indent .carousel-cell:last-child, .modal .carousel-block--fluid-indent .carousel-cell:last-child {
    margin-right: 0 !important;
  }
}
.carousels-fluid .layout-container--full-width .carousel-block,
.carousels-fluid-indent .layout-container--full-width .carousel-block,
.carousels-fluid .page-content--full-width .carousel-block,
.carousels-fluid-indent .page-content--full-width .carousel-block {
  width: 100vw;
  max-width: 100vw;
  left: 50%;
  transform: translateX(-50%);
  padding-right: var(--grid-actual-container-padding-x) !important;
  padding-left: var(--grid-actual-container-padding-x) !important;
}
@media (min-width: 1440px) {
  .carousels-fluid .layout-container--full-width .carousel-block .main-title__outer .container,
  .carousels-fluid-indent .layout-container--full-width .carousel-block .main-title__outer .container,
  .carousels-fluid .page-content--full-width .carousel-block .main-title__outer .container,
  .carousels-fluid-indent .page-content--full-width .carousel-block .main-title__outer .container {
    padding-right: var(--grid-actual-container-padding-x);
    padding-left: var(--grid-actual-container-padding-x);
  }
}

.carousel {
  position: relative;
  display: flex;
  overflow: auto hidden;
  -ms-scroll-snap-type: x mandatory;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  user-select: none;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.carousel::-webkit-scrollbar {
  background: transparent;
  width: 0;
  height: 0;
}
.carousel.dragging {
  cursor: grabbing;
  scroll-snap-type: none;
  scroll-behavior: auto;
}
.carousel.dragging a {
  pointer-events: none;
}
.carousel:focus-visible {
  outline: 1px solid #11253d;
  box-shadow: 0 0 0 calc(0.125rem + 0px) #a5b2c2;
}

.carousel-cell {
  position: relative;
  margin-right: 0.75rem;
  scroll-snap-align: var(--scroll-snap-align, center);
}
@media (min-width: 576px) {
  .carousel-cell {
    scroll-snap-align: var(--scroll-snap-align, end);
  }
}
.carousel-cell:last-child {
  margin-right: 0 !important;
}

/* start page product boxes (top/ref/last): fixed items-per-view instead of card width */
.carousel-block.carousel-block--start-products {
  --start-products-per-view: 2;
  --start-products-gap: 1.5rem;
}
@media (min-width: 768px) {
  .carousel-block.carousel-block--start-products {
    --start-products-per-view: 3;
  }
}
@media (min-width: 1240px) {
  .carousel-block.carousel-block--start-products {
    --start-products-per-view: 4;
  }
}
.carousel-block.carousel-block--start-products .products .carousel-cell {
  flex: 0 0 calc((100% - (var(--start-products-per-view) - 1) * var(--start-products-gap)) / var(--start-products-per-view));
  width: calc((100% - (var(--start-products-per-view) - 1) * var(--start-products-gap)) / var(--start-products-per-view));
  margin-right: var(--start-products-gap);
}

.carousel__prev-next-btn {
  --bs-btn-disabled-border-color: transparent;
  height: var(--carousel-prev-next-btn-height);
  line-height: var(--carousel-prev-next-btn-height);
  width: var(--carousel-prev-next-btn-width);
  flex: 0 0 var(--carousel-prev-next-btn-width);
  max-width: var(--carousel-prev-next-btn-width);
  padding: 0;
  text-align: center;
  letter-spacing: 0;
  border-radius: 10px;
  font-size: 1.125rem;
  color: rgba(60, 74, 96, 0.7);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.carousel__nav {
  user-select: none;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  bottom: 0;
  width: 100%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  min-height: var(--carousel-prev-next-btn-height);
  will-change: opacity;
  transition: opacity ease 1s;
}

.carousel__progress {
  --bs-progress-height: 2px;
  --bs-progress-bg: lightgray;
  --bs-progress-bar-bg: currentColor;
  --bs-progress-bar-color:#3C4A60;
  width: 80px;
  margin: 0.5rem;
}

.badge {
  user-select: none;
  border: 1px solid #e3e8ef;
  background-color: #f4f6f9;
  transition: color 0.2s, background-color 0.2s, border-color 0.2s, box-shadow 0.2s;
  text-decoration: none !important;
}
.badge span, .badge svg {
  vertical-align: top;
}
.badge svg:not(:only-child) {
  margin-right: 0.25em;
}
.badge[href]:hover, .badge:focus, .badge:focus-visible {
  background-color: #dcdde0;
}
.badge:focus-visible {
  outline: 1px solid #11253d;
  outline-offset: -1px;
  box-shadow: inset 0 0 0 0.125rem #a5b2c2;
}
.badge.on-stock {
  font-weight: 400;
  color: #1D3E66;
  background-color: rgba(255, 255, 255, 0);
  border-color: rgba(29, 62, 102, 0.4);
}
.badge.no-stock {
  font-weight: 400;
  color: #C91D25;
  background-color: rgba(255, 255, 255, 0);
  border-color: rgba(201, 29, 37, 0.4);
}
.badge.to-order {
  font-weight: 400;
  color: #165DC9;
  background-color: rgba(255, 255, 255, 0);
  border-color: rgba(22, 93, 201, 0.4);
}

.badge--status-1 {
  color: #3C4A60;
  font-weight: 500;
  background-color: rgba(255, 255, 255, 0.9);
  border-color: #e3e8ef;
}
.badge--status-1[href]:hover {
  background-color: #e6e6e6;
}

.badge--status-2 {
  color: #3C4A60;
  font-weight: 500;
  background-color: rgba(255, 255, 255, 0.9);
  border-color: #e3e8ef;
}
.badge--status-2[href]:hover {
  background-color: #e6e6e6;
}

.badge--status-3 {
  color: #3C4A60;
  font-weight: 500;
  background-color: rgba(255, 255, 255, 0.9);
  border-color: #e3e8ef;
}
.badge--status-3[href]:hover {
  background-color: #e6e6e6;
}

.badge--new {
  color: #ffffff;
  font-weight: 500;
  background-color: #1d3e66;
  border-color: #1d3e66;
}

.badge--sale {
  color: #16304F;
  font-weight: 600;
  background-color: #f6b818;
  border-color: #f6b818;
}

.badge--gift {
  color: #C91D25;
  font-weight: 500;
  background-color: #f4f6f9;
  border-color: rgba(201, 29, 37, 0.5);
}
.badge--gift::after {
  content: attr(title);
  margin-left: 0.25em;
}

.badge--bundle-qty {
  color: #3C4A60;
  font-weight: 500;
  background-color: #f4f6f9;
  border-color: #e3e8ef;
}

.stars {
  display: flex;
  align-items: center;
  line-height: 1;
  position: relative;
  column-gap: 0.333333em;
}

.star {
  line-height: 0;
}

.star--full {
  color: #F6B818;
}
.star--full path {
  opacity: 1;
}

.star--empty {
  color: #c9d3df;
}
.icon--solid .star--empty, .icon--duotone .star--empty, .icon--sharp-solid .star--empty {
  opacity: 0.5;
}

.star--percent {
  color: #c9d3df;
  position: relative;
}
.star--percent .star--full {
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
}
.icon--duotone .star--percent > .icon-set, .icon--solid .star--percent > .icon-set, .icon--sharp-solid .star--percent > .icon-set {
  opacity: 0.5;
}

.overflow-main-grid {
  grid-template-columns: minmax(0, 1fr);
  margin-bottom: 1.5rem;
}

@media (min-width: 992px) {
  .overflow-main-grid {
    grid-template-columns: minmax(0, 1fr) 380px;
  }
  .overflow-main-grid .col-b {
    grid-row: 2 span;
    grid-row: 1/-1; /*row spans*/
    grid-column: 2; /* position */
    height: fit-content;
  }
}
#ident_data {
  text-align: center;
  position: fixed;
  padding: 12px 12px 40px;
  bottom: 0;
  left: 0;
  z-index: 99999;
  background: #000;
  color: #fff;
  transition: all ease 0.2s;
  transform: translateX(-102%);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  font-size: 0.75rem;
  max-height: 100vh;
}
#ident_data b {
  font-size: 0.875rem;
  line-height: 1;
}
#ident_data b:not(:first-of-type) {
  margin-top: 0.625rem;
}
#ident_data a {
  font-size: 0.875rem;
  text-transform: uppercase;
  color: inherit;
}
#ident_data a::before {
  content: "->";
  margin-right: 0.625rem;
}
#ident_data::after {
  content: "@";
  position: absolute;
  left: 100%;
  bottom: 60px;
  font-size: 12px;
  padding: 15px 2px 15px 6px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 0 5px 5px 0;
  background-color: #000;
  color: #fff;
}
@media (min-width: 576px) {
  #ident_data::after {
    padding: 15px 5px;
  }
}
#ident_data:hover {
  transform: translateX(0%);
}

@media (max-width: 399px) {
  #ident_data {
    font-size: 0.9rem;
  }
}
#cursor {
  position: fixed;
  width: 18px;
  top: 0;
  left: 0;
  pointer-events: none;
  z-index: 9999;
  display: none;
  aspect-ratio: 6/13;
}
@media (pointer: coarse) {
  #cursor {
    display: none !important;
  }
}