:root { --layout-unit: 1vw; --header-unit: 1vw; --site-header-height: 72px; --site-font: "Noto Sans SC", "Noto Sans", sans-serif; }
/* Product cards are HTML; only the isolated cylinders are image assets. */
.desktop .product-cards,
.home-content .product-cards {
  position: absolute;
  top: 10.9375vw;
  top: calc(10.9375vw);
  top: calc(10.9375 * var(--layout-unit));
  left: 12.135417vw;
  left: calc(12.13542vw);
  left: calc(12.13542 * var(--layout-unit));
  display: block;
  width: 75.260417vw;
  width: calc(75.26042vw);
  width: calc(75.26042 * var(--layout-unit));
  height: 22.5vw;
  height: calc(22.5vw);
  height: calc(22.5 * var(--layout-unit));
}

.desktop .product-card,
.home-content .product-card {
  position: relative;
  flex: 0 0 23.350694vw;
  flex: 0 0 calc(23.35069vw);
  flex: 0 0 calc(23.35069 * var(--layout-unit));
  min-width: 0;
  margin-right: 2.604167vw;
  margin-right: calc(2.60417vw);
  margin-right: calc(2.60417 * var(--layout-unit));
  overflow: hidden;
  border-radius: 0.625vw;
  border-radius: calc(.625vw);
  border-radius: calc(.625 * var(--layout-unit));
  background: #fff;
  transition: flex-basis 550ms cubic-bezier(0.22, 1, 0.36, 1);
}

.desktop .product-card::before,
.home-content .product-card::before {
  position: absolute;
  top: 4.84375vw;
  top: calc(4.84375vw);
  top: calc(4.84375 * var(--layout-unit));
  right: 1.666667vw;
  right: calc(1.66667vw);
  right: calc(1.66667 * var(--layout-unit));
  left: 1.5625vw;
  left: calc(1.5625vw);
  left: calc(1.5625 * var(--layout-unit));
  height: 0.052083vw;
  height: calc(.052083vw);
  height: calc(.052083 * var(--layout-unit));
  background: #bbb;
  content: "";
}

.desktop .product-card .product-card-title,
.home-content .product-card .product-card-title {
  top: 2.0375vw;
  top: calc(2.0375vw);
  top: calc(2.0375 * var(--layout-unit));
  left: 1.5625vw;
  left: calc(1.5625vw);
  left: calc(1.5625 * var(--layout-unit));
  width: calc(100% - 3.125vw);
  width: calc(100% - 3.125vw);
  width: calc(100% - (3.125 * var(--layout-unit)));
  margin: 0;
  color: #023b80;
  font: 400 1.25vw / 1.770833vw "Noto Sans SC", sans-serif;
  font: 400 calc(1.25vw) / calc(1.77083vw) "Noto Sans SC", sans-serif;
  font: 400 calc(1.25 * var(--layout-unit)) / calc(1.77083 * var(--layout-unit)) "Noto Sans SC", sans-serif;
}

.desktop .product-card .product-card-description,
.home-content .product-card .product-card-description {
  top: 5.797917vw;
  top: calc(5.79792vw);
  top: calc(5.79792 * var(--layout-unit));
  left: 1.5625vw;
  left: calc(1.5625vw);
  left: calc(1.5625 * var(--layout-unit));
  width: calc(100% - 9.375vw);
  width: calc(100% - 9.375vw);
  width: calc(100% - (9.375 * var(--layout-unit)));
  transition: width 550ms cubic-bezier(0.22, 1, 0.36, 1);
  margin: 0;
  color: #333;
  font: 400 0.729167vw / 1.25vw "Noto Sans SC", sans-serif;
  font: 400 calc(.72917vw) / calc(1.25vw) "Noto Sans SC", sans-serif;
  font: 400 calc(.72917 * var(--layout-unit)) / calc(1.25 * var(--layout-unit)) "Noto Sans SC", sans-serif;
}

.desktop .product-card-image,
.home-content .product-card-image {
  position: absolute;
  display: block;
  height: auto;
  object-fit: contain;
  transition: top 550ms ease, width 550ms ease;
}

.desktop .product-card-construction .product-card-image,
.home-content .product-card-construction .product-card-image {
  top: 10w;
  top: calc(10vw);
  top: calc(10 * var(--layout-unit));
  right: 1.822917vw;
  right: calc(1.82292vw);
  right: calc(1.82292 * var(--layout-unit));
  width: 12.375vw;
  width: calc(12.375vw);
  width: calc(12.375 * var(--layout-unit));
}

.desktop .product-card-heavy .product-card-image,
.home-content .product-card-heavy .product-card-image {
  top: 5.197917vw;
  top: calc(5.19792vw);
  top: calc(5.19792 * var(--layout-unit));
  right: 1.71875vw;
  right: calc(1.71875vw);
  right: calc(1.71875 * var(--layout-unit));
  width: 12.9375vw;
  width: calc(12.9375vw);
  width: calc(12.9375 * var(--layout-unit));
}

.desktop .product-card-custom .product-card-image,
.home-content .product-card-custom .product-card-image {
  top: 13.020833vw;
  top: calc(13.02083vw);
  top: calc(13.02083 * var(--layout-unit));
  right: 1.614583vw;
  right: calc(1.61458vw);
  right: calc(1.61458 * var(--layout-unit));
  width: 10.416667vw;
  width: calc(10.41667vw);
  width: calc(10.41667 * var(--layout-unit));
}

.desktop .product-card-link,
.home-content .product-card-link {
  position: absolute;
  bottom: 1.875vw;
  bottom: calc(1.875vw);
  bottom: calc(1.875 * var(--layout-unit));
  left: 1.5625vw;
  left: calc(1.5625vw);
  left: calc(1.5625 * var(--layout-unit));
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.979167vw;
  width: calc(1.97917vw);
  width: calc(1.97917 * var(--layout-unit));
  height: 1.979167vw;
  height: calc(1.97917vw);
  height: calc(1.97917 * var(--layout-unit));
  border: 1px solid #bfbfbf;
  border-radius: 50%;
  color: #aaa;
  font: 400 1.25vw / 1 sans-serif;
  font: 400 calc(1.25vw) / 1 sans-serif;
  font: 400 calc(1.25 * var(--layout-unit)) / 1 sans-serif;
  transition: color 180ms ease, border-color 180ms ease;
}

.desktop .product-card-link:hover,
.home-content .product-card-link:hover {
  color: #e88301;
  border-color: #e88301;
}

.desktop .product-actions,
.home-content .product-actions {
  position: absolute;
  top: 36.5625vw;
  top: calc(36.5625vw);
  top: calc(36.5625 * var(--layout-unit));
  left: 39.791667vw;
  left: calc(39.79167vw);
  left: calc(39.79167 * var(--layout-unit));
  display: flex;
  align-items: center;
  gap: 1.145833vw;
  gap: calc(1.14583vw);
  gap: calc(1.14583 * var(--layout-unit));
}

.desktop .product-actions a,
.home-content .product-actions a {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  isolation: isolate;
  overflow: hidden;
  gap: 0.625vw;
  gap: calc(.625vw);
  gap: calc(.625 * var(--layout-unit));
  width: 9.583333vw;
  width: calc(9.58333vw);
  width: calc(9.58333 * var(--layout-unit));
  height: 2.864583vw;
  height: calc(2.86458vw);
  height: calc(2.86458 * var(--layout-unit));
  border: 2px solid #023b80;
  border-radius: 0.260417vw;
  border-radius: calc(.26042vw);
  border-radius: calc(.26042 * var(--layout-unit));
  font: 400 1.145833vw / 1.6 "Noto Sans SC", sans-serif;
  font: 400 calc(1.14583vw) / 1.6 "Noto Sans SC", sans-serif;
  font: 400 calc(1.14583 * var(--layout-unit)) / 1.6 "Noto Sans SC", sans-serif;
  transition: transform 250ms ease, box-shadow 250ms ease, background-color 250ms ease;
}

.desktop .product-actions a::before,
.home-content .product-actions a::before {
  content: "›";
  font-size: 1.666667vw;
  font-size: calc(1.66667vw);
  font-size: calc(1.66667 * var(--layout-unit));
  line-height: 1;
  transition: transform 250ms ease;
}

.desktop .product-action-primary,
.home-content .product-action-primary {
  color: #fff;
  background: #023b80;
}

.desktop .product-actions .product-action-outline,
.home-content .product-actions .product-action-outline {
  color: #ee8301;
  border-color: #ee8301;
  background: transparent;
}

.desktop .product-actions a::after,
.home-content .product-actions a::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  background: linear-gradient(110deg, transparent 20%, rgba(255,255,255,0.25098) 50%, transparent 80%);
  transform: translateX(-120%);
  pointer-events: none;
  content: "";
}

.desktop .product-actions a:focus-visible,
.home-content .product-actions a:focus-visible {
  outline: 2px solid #e88b16;
  outline-offset: 4px;
}

@media (hover: hover) and (pointer: fine) {
  .desktop .product-actions a:hover,
.home-content .product-actions a:hover {
    transform: translateY(-3px);
    box-shadow: 0 7px 18px rgba(2,59,128,0.14902);
  }

  .desktop .product-actions a:hover::before,
.home-content .product-actions a:hover::before {
    transform: translateX(3px);
  }

  .desktop .product-actions a:hover::after,
.home-content .product-actions a:hover::after {
    animation: product-button-sheen 650ms ease-out both;
  }

  .desktop .product-actions .product-action-outline:hover,
.home-content .product-actions .product-action-outline:hover {
    background-color: #fff4e5;
    box-shadow: 0 7px 18px rgba(238,131,1,0.14902);
  }
}

.desktop .product-actions a:active,
.home-content .product-actions a:active {
  transform: translateY(0);
  box-shadow: none;
}

@keyframes product-button-sheen {
  to {
    transform: translateX(120%);
  }
}

html[lang="en"] .desktop .product-card .product-card-description,
html[lang="en"] .home-content .product-card .product-card-description,
html[lang="ru"] .desktop .product-card .product-card-description,
html[lang="ru"] .home-content .product-card .product-card-description {
  font-size: 0.677083vw;
  font-size: calc(.67708vw);
  font-size: calc(.67708 * var(--layout-unit));
  line-height: 1.145833vw;
  line-height: calc(1.14583vw);
  line-height: calc(1.14583 * var(--layout-unit));
}

html[lang="en"] #products .psd-layer-259,
html[lang="ru"] #products .psd-layer-259 {
  left: 30vw;
  left: calc(30vw);
  left: calc(30 * var(--layout-unit));
  width: 40vw;
  width: calc(40vw);
  width: calc(40 * var(--layout-unit));
  text-align: center;
}

html[lang="en"] #products .psd-layer-260,
html[lang="ru"] #products .psd-layer-260 {
  left: 30vw;
  left: calc(30vw);
  left: calc(30 * var(--layout-unit));
  width: 40vw;
  width: calc(40vw);
  width: calc(40 * var(--layout-unit));
  height: auto;
  font-size: 0.9vw;
  font-size: calc(.9vw);
  font-size: calc(.9 * var(--layout-unit));
  text-align: center;
}

html[lang="en"] .desktop .product-card .product-card-title,
html[lang="en"] .home-content .product-card .product-card-title,
html[lang="ru"] .desktop .product-card .product-card-title,
html[lang="ru"] .home-content .product-card .product-card-title {
  font-size: 0.95vw;
  font-size: calc(.95vw);
  font-size: calc(.95 * var(--layout-unit));
}

html[lang="en"] .desktop .product-actions a,
html[lang="en"] .home-content .product-actions a,
html[lang="ru"] .desktop .product-actions a,
html[lang="ru"] .home-content .product-actions a {
  gap: 0.4vw;
  gap: calc(.4vw);
  gap: calc(.4 * var(--layout-unit));
  font-size: 0.7vw;
  font-size: calc(.7vw);
  font-size: calc(.7 * var(--layout-unit));
  white-space: nowrap;
}

.product-cards[data-product-carousel] {
  overflow: hidden;
  touch-action: pan-y;
  cursor: -webkit-grab;
  cursor: grab;
}

.product-cards.is-dragging {
  cursor: -webkit-grabbing;
  cursor: grabbing;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.product-track {
  position: relative;
  display: flex;
  width: 100%;
  height: 100%;
  transform: translate3d(0px, 0, 0);
  transform: translate3d(var(--product-offset, 0px), 0, 0);
}

.product-track img {
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-user-drag: none;
}

.mobile .product-cards {
  display: block;
}

.mobile .product-track {
  align-items: stretch;
  height: auto;
}

.mobile .product-track > article {
  flex: 0 0 100%;
  min-width: 0;
  margin-right: 20px;
}

@media (max-width: 1199px) {
  .product-cards:focus-visible {
    outline: 2px solid #e88b16;
    outline-offset: 4px;
  }
}

/* All three cards share a neutral state; emphasis follows the hovered card. */
.desktop .product-card::after,
.home-content .product-card::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
  background: linear-gradient(#eef1f7 0%, #fff 70%);
  opacity: 0;
  transition: opacity 450ms ease;
  pointer-events: none;
  content: "";
}

.desktop .product-card::before,
.home-content .product-card::before,

.desktop .product-card > *,

.home-content .product-card > * {
  z-index: 1;
}

.desktop .product-cards.has-highlight .product-card,
.home-content .product-cards.has-highlight .product-card {
  flex-basis: 20.572917vw;
  flex-basis: calc(20.57292vw);
  flex-basis: calc(20.57292 * var(--layout-unit));
}

.desktop .product-cards.has-highlight .product-card.is-highlighted,
.home-content .product-cards.has-highlight .product-card.is-highlighted {
  flex-basis: 28.90625vw;
  flex-basis: calc(28.90625vw);
  flex-basis: calc(28.90625 * var(--layout-unit));
}

.desktop .product-card.is-highlighted::after,
.home-content .product-card.is-highlighted::after {
  opacity: 1;
}

.desktop .product-card.is-highlighted .product-card-link,
.home-content .product-card.is-highlighted .product-card-link {
  color: #e88b16;
  border-color: #efd5b2;
}

.desktop .product-card-construction.is-highlighted .product-card-image,
.home-content .product-card-construction.is-highlighted .product-card-image {
  top: 10.885417vw;
  top: calc(10.88542vw);
  top: calc(10.88542 * var(--layout-unit));
  width: 10.572917vw;
  width: calc(10.57292vw);
  width: calc(10.57292 * var(--layout-unit));
}

.desktop .product-cards.is-dragging .product-card,
.home-content .product-cards.is-dragging .product-card,

.desktop .product-cards.is-dragging .product-card > *,

.home-content .product-cards.is-dragging .product-card > * {
  transition: none;
}

@media (prefers-reduced-motion: reduce) {
  .desktop .product-card,
.home-content .product-card,

  .desktop .product-card::after,

  .home-content .product-card::after,

  .desktop .product-card > *,

  .home-content .product-card > * {
    transition: none;
  }
}

.desktop .product-cards.is-dragging .live-text,
.home-content .product-cards.is-dragging .live-text {
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

@media (prefers-reduced-motion: reduce) {
  .desktop .product-actions a,
.home-content .product-actions a,

  .desktop .product-actions a::before,

  .home-content .product-actions a::before {
    transition: none;
  }

  .desktop .product-actions a:hover,
.home-content .product-actions a:hover,

  .desktop .product-actions a:hover::before,

  .home-content .product-actions a:hover::before {
    transform: none;
  }

  .desktop .product-actions a:hover::after,
.home-content .product-actions a:hover::after {
    animation: none;
  }
}
  html.legacy-browser .desktop .product-actions a:hover,
html.legacy-browser .home-content .product-actions a:hover {
    transform: translateY(-3px);
    box-shadow: 0 7px 18px rgba(2,59,128,0.14902);
  }

  html.legacy-browser .desktop .product-actions a:hover::before,
html.legacy-browser .home-content .product-actions a:hover::before {
    transform: translateX(3px);
  }

  html.legacy-browser .desktop .product-actions a:hover::after,
html.legacy-browser .home-content .product-actions a:hover::after {
    animation: product-button-sheen 650ms ease-out both;
  }

  html.legacy-browser .desktop .product-actions .product-action-outline:hover,
html.legacy-browser .home-content .product-actions .product-action-outline:hover {
    background-color: #fff4e5;
    box-shadow: 0 7px 18px rgba(238,131,1,0.14902);
  }

