:root {
  --swiper-theme-color: #c00;
}

@font-face {
  font-family: "PingFang";
  src: url("/font/PingFang.woff2") format("woff2"), url("/font/PingFang.woff") format("woff"), url("/font/PingFang.ttf") format("truetype"), url("/font/PingFang.eot") format("embedded-opentype"), url("/font/PingFang.svg") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
html {
  font-family: -apple-system, "PingFang", "Arial", "Heiti SC", "Microsoft Yahei", "Helvetica Neue", "Helvetica", Arial, sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  color: #eee;
  -webkit-font-smoothing: antialiased;
  -webkit-overflow-scrolling: touch;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

body {
  background: #fff;
  font-size: 1.075rem;
  line-height: 1.35;
  letter-spacing: 0.0125em;
}

body.body-bg-light {
  background: #eee;
}

body,
ul,
ol,
dl,
dt,
dd,
p,
h1,
h2,
h3,
h4,
h5 {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

div,
li {
  box-sizing: border-box;
}

main,
header,
footer,
section,
figure,
figcaption,
article,
aside,
nav,
address,
form,
legend,
fieldset,
details,
summary,
data,
time,
video,
source,
canvas,
svg {
  display: block;
  box-sizing: border-box;
  margin: 0;
}

ul,
ol {
  list-style: none;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

b,
strong {
  font-weight: bolder;
}

em {
  font-style: normal;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  width: 100%;
  height: auto;
  display: block;
  -ms-interpolation-mode: bicubic;
  border: none;
}

button,
input,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
  border: 0;
  box-sizing: border-box;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 0;
}

button:active {
  outline: none;
}

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

textarea {
  overflow: auto;
  resize: none;
}

[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

summary {
  display: list-item;
}

[hidden] {
  display: none;
}

input, textarea {
  border: 0;
  outline: 0;
}
input:focus, textarea:focus {
  outline: 0;
}

button {
  background: transparent;
  cursor: pointer;
}

.flex {
  display: flex;
  justify-content: space-between;
}

.flex-column {
  display: flex;
  flex-direction: column;
}

.flex-auto {
  flex: auto;
}

.flex-none {
  flex: none;
}

.flex-wrap {
  flex-wrap: wrap;
}

.justify-start {
  justify-content: start;
}

.justify-center {
  justify-content: center;
}

.justify-between {
  justify-content: space-between;
}

.align-center {
  align-items: center;
}

.align-stretch {
  align-items: stretch;
}

.align-start {
  align-items: flex-start;
}

.align-end {
  align-items: flex-end;
}

.relative {
  position: relative;
}

.absolute {
  position: absolute;
}

.static {
  position: static;
}

.text-left {
  text-align: left;
}

.text-center {
  text-align: center;
}

.text-orange {
  color: rgb(200, 20, 0);
}

.text-yellow {
  color: rgb(220, 160, 0);
}

.text-grey {
  color: #333;
}

.text-lgrey {
  color: rgba(51, 51, 51, 0.85);
}

.text-light {
  color: #eee;
}

.text-white {
  color: #fff;
}

.text-blue {
  color: rgb(20, 40, 60);
}

.text-strong {
  color: #32b4ff;
}

.text-green {
  color: rgb(80, 170, 50);
}

.text-gradient1 {
  color: #fff;
  background: -webkit-linear-gradient(0deg, #b200cc, rgb(200, 20, 0));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.text-gradient2 {
  color: #333;
  background: linear-gradient(90deg, #3877ad 20%, #bc70ff 80%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.font-bold {
  font-weight: bold;
}

.font-semibold {
  font-weight: 500;
}

.font-normal {
  font-weight: normal;
}

.text-2xl {
  font-size: 4rem;
}

.text-xl {
  font-size: 3rem;
}

.text-l {
  font-size: 2.5rem;
}

.text-m {
  font-size: 2rem;
}

.text-s {
  font-size: 1.5rem;
}

.text-xs {
  font-size: 1.15rem;
}

.text-p {
  font-size: 1rem;
  line-height: 1.35;
}

.uppercase {
  text-transform: uppercase;
}

.bg-dark {
  background-color: #000;
}

.bg-black {
  background-color: #1a1a1a;
}

.bg-orange {
  background-color: rgb(200, 20, 0);
}

.bg-grey {
  background-color: #333;
}

.bg-light {
  background-color: #eee;
}

.bg-white {
  background-color: #fff;
}

.bg-blue {
  background-color: rgb(20, 40, 60);
}

.bg-strong {
  background-color: #32b4ff;
}

.bg-gradient {
  background: linear-gradient(150deg, #f05000, #06c, #14283c, #b200cc);
}

.width-1200 {
  width: 1200px;
}

.width-400 {
  width: 400px;
}

.width-640 {
  width: 640px;
}

.width-full {
  width: 100%;
}

.width-1-2 {
  width: 48%;
}

.width-1-3 {
  width: 31%;
}

.width-2-3 {
  width: 66%;
}

.width-1-4 {
  width: 23%;
}

.width-3-4 {
  width: 75%;
}

.width-1-5 {
  width: 19%;
}

.width-1-6 {
  width: 15.5%;
}

.mg-auto {
  margin-left: auto;
  margin-right: auto;
}

.mt-10 {
  margin-top: 10px;
}

.mt-20 {
  margin-top: 20px;
}

.mt-30 {
  margin-top: 30px;
}

.mt-40 {
  margin-top: 40px;
}

.mt-60 {
  margin-top: 60px;
}

.mt-80 {
  margin-top: 80px;
}

.mlr-10 {
  margin-left: 10px;
  margin-right: 10px;
}

.ml-100 {
  margin-left: 100px;
}

.pd-6 {
  padding: 6px;
}

.pd-10 {
  padding: 10px;
}

.pd-20 {
  padding: 20px;
}

.pd-40 {
  padding: 40px;
}

.pdlr-10 {
  padding-left: 10px;
  padding-right: 10px;
}

.pdlr-40 {
  padding-left: 40px;
  padding-right: 40px;
}

.pdtb-20 {
  padding-top: 20px;
  padding-bottom: 20px;
}

.pdtb-80 {
  padding: 80px 0;
}

.pdb-40 {
  padding-bottom: 40px;
}

.pdb-60 {
  padding-bottom: 60px;
}

.pdb-80 {
  padding-bottom: 80px;
}

ol li {
  margin: 4px 0;
}

.round-10 {
  border-radius: 10px;
}

.round-20 {
  border-radius: 20px;
}

.round-2 {
  border-radius: 2px;
}

.round-4 {
  border-radius: 4px;
}

.circle {
  border-radius: 50%;
}

.inline-block {
  display: inline-block;
}

.underline {
  text-decoration: underline;
}

.blur {
  backdrop-filter: blur(8px);
}

.text-shine {
  text-shadow: 0 0 6px rgba(255, 255, 255, 0.5);
}

.overflow {
  overflow: hidden;
}

.round-img img {
  border-radius: 10px;
  overflow: hidden;
}

.img-cover {
  overflow: hidden;
}
.img-cover img {
  height: 100%;
  object-fit: cover;
}

.order-0 {
  order: 0;
}

.order-1 {
  order: 1;
}

.zindex-top {
  z-index: 1;
}

.zindex-bottom {
  z-index: -1;
}

.absolute-center-x {
  left: 50%;
  transform: translateX(-50%);
}

.absolute-center-y {
  top: 50%;
  transform: translateY(-50%);
}

.absolute-center-t {
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 4px;
  transform: translateX(-50%);
}

.absolute-center-b {
  position: absolute;
  z-index: 1;
  left: 50%;
  top: auto;
  bottom: 60px;
  transform: translateX(-50%);
}

.absolute-center {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.absolute-default {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.pointer {
  cursor: pointer;
}

.link + .link {
  margin-left: 30px;
}
.link span[class^=icon-] {
  transform: rotate(-90deg);
  margin-top: 2px;
}

.landing-form-textarea {
  height: 6rem;
}

.landing-form-submit {
  width: 200px;
  height: 4rem;
}

.title-border-b {
  border-bottom: 1px solid rgba(238, 238, 238, 0.2);
}

.ul-circle-list li {
  position: relative;
  padding-left: 16px;
  margin: 0.4em 0;
}
.ul-circle-list li:before {
  content: "";
  position: absolute;
  top: 0.435em;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #32b4ff;
}
.ul-circle-list li:hover > a {
  color: rgb(200, 20, 0);
}

.multi-layer {
  position: relative;
  z-index: 1;
  width: 1000px;
  border-radius: 10px;
}
.multi-layer:before, .multi-layer:after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  height: 80px;
  background-color: inherit;
  border-radius: 20px;
  z-index: 0;
}
.multi-layer:before {
  top: -24px;
  width: 94%;
  opacity: 0.5;
}
.multi-layer:after {
  top: -40px;
  width: 86%;
  opacity: 0.3;
}

.hover {
  transition: all 0.3s ease;
}

.hover-img:hover img {
  transform: scale(1.01);
}
.hover-img img {
  transition: all 0.5s ease;
}

.hover-underline:hover {
  text-decoration: underline;
}

.hover-color-white:hover {
  color: #fff;
}

.hover-color-strong:hover {
  color: #32b4ff;
}

.hover-color-blue:hover {
  color: rgb(20, 40, 60);
}

.hover-color-orange:hover {
  color: rgb(200, 20, 0);
}

.hover-bg-strong:hover {
  background-color: #32b4ff;
}

.hover-bg-blue:hover {
  background-color: rgb(20, 40, 60);
}

.hover-bg-orange:hover {
  background-color: rgb(200, 20, 0);
}

.pop-wrapper {
  position: fixed;
  z-index: 10000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  background: #1a1a1a;
  overflow: hidden;
  display: none;
  justify-content: center;
}

.pop-close {
  position: absolute;
  z-index: 10001;
  top: 20px;
  right: 40px;
  width: 80px;
  height: 80px;
  transform: rotate(45deg);
  cursor: pointer;
}
.pop-close:before, .pop-close:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  border-radius: 2px;
}
.pop-close:before {
  width: 2px;
  height: 40px;
}
.pop-close:after {
  width: 40px;
  height: 2px;
}

.pop-content {
  width: 80%;
}

.pop-search-wrapper {
  border-radius: 4px;
  overflow: hidden;
}
.pop-search-wrapper input[type=text] {
  flex: 1;
  padding: 16px;
  background: #eee;
  height: 60px;
  line-height: 60px;
  border-radius: 0;
}
.pop-search-wrapper button {
  width: 60px;
  height: 60px;
  box-sizing: border-box;
  padding: 16px;
  background: #eee;
  color: #32b4ff;
}

.pop-search-list li {
  margin: 0 10px;
}

.wechat-pop-wrapper {
  z-index: 99;
  background: rgba(26, 26, 26, 0.2);
  backdrop-filter: blur(10px);
  transform: translateY(-56px);
  align-items: center;
}

.wechat-pop-section {
  height: auto;
  background: #fff;
  color: #333;
  padding: 40px 30px;
  border-radius: 10px;
  position: relative;
  transform: translateY(60px);
}
.wechat-pop-section .wechat-content h3 {
  font-size: 2rem;
}
.wechat-pop-section .wechat-content i {
  font-size: 4rem;
}
.wechat-pop-section .wechat-content a {
  background: rgb(80, 170, 50);
  border-radius: 4px;
  color: #fff;
  height: 48px;
  line-height: 48px;
  margin-top: 8px;
  width: auto;
}
.wechat-pop-section .pop-close {
  top: 0;
  right: 0;
}
.wechat-pop-section .pop-close:before, .wechat-pop-section .pop-close:after {
  background: #333;
}
.wechat-pop-section .pop-close:before {
  height: 24px;
}
.wechat-pop-section .pop-close:after {
  width: 24px;
}

.outdoor-full-width-video {
  position: relative;
  overflow: hidden;
  display: inline-block;
  width: 100%;
  vertical-align: top;
}

.ratio-35:before {
  content: "";
  padding-top: 40%;
  float: left;
}
.ratio-35 video {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  transform: translateY(-50%);
}
.ratio-35:after {
  content: "";
  display: block;
  clear: both;
}

.ratio-50:before {
  content: "";
  padding-top: 50%;
  float: left;
}
.ratio-50:after {
  content: "";
  display: block;
  clear: both;
}

.link + .pop-quote-button {
  margin-left: 28px;
}

.pop-quote-button {
  padding: 16px 40px;
  transition: transform 0.3s;
}
.pop-quote-button:hover {
  transform: translatey(-2px);
}

.fixed-banner {
  position: fixed;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.fixed-banner .fixed-height-400 {
  position: relative;
  width: 100%;
  height: 484px;
  vertical-align: top;
  overflow: hidden;
}
.fixed-banner .fixed-height-400:before {
  content: "";
  padding-top: 484px;
  float: left;
}
.fixed-banner .fixed-height-400:after {
  content: "";
  display: block;
  clear: both;
}

.fixed-banner-main {
  margin-top: 400px;
}

.wash-table-list {
  border-collapse: collapse;
  text-align: center;
  width: 100%;
}
.wash-table-list th, .wash-table-list td {
  padding: 6px 10px;
  border: 1px solid rgba(51, 51, 51, 0.2);
}
.wash-table-list th {
  color: #32b4ff;
  font-weight: 500;
}

@media screen and (max-width: 1200px) {
  .flex-column-m {
    flex-direction: column;
  }
  .width-1200 {
    width: 100%;
  }
  .width-1-m {
    width: 100%;
  }
  .width-1-2-m {
    width: 48%;
  }
  .width-1-3-m {
    width: 32%;
  }
  .mt-0-m {
    margin-top: 0;
  }
  .mt-10-m {
    margin-top: 10px;
  }
  .mt-20-m {
    margin-top: 20px;
  }
  .mt-40-m {
    margin-top: 40px;
  }
  .mt-60-m {
    margin-top: 60px;
  }
  .mlr-0-m {
    margin-left: 0;
    margin-right: 0;
  }
  .mlr-10-m {
    margin-left: 10px;
    margin-right: 10px;
  }
  .mlr-20-m {
    margin-left: 20px;
    margin-right: 20px;
  }
  .pd-0-m {
    padding: 0;
  }
  .pd-10-m {
    padding: 10px;
  }
  .pd-20-m {
    padding: 20px;
  }
  .pdlr-10-m {
    padding-left: 10px;
    padding-right: 10px;
  }
  .pdlr-20-m {
    padding-left: 20px;
    padding-right: 20px;
  }
  .pdlr-40-m {
    padding-left: 40px;
    padding-right: 40px;
  }
  .pdtb-40-m {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .pdb-10-m {
    padding-bottom: 10px;
  }
  .pdb-40-m {
    padding-bottom: 40px;
  }
  .text-2xl {
    font-size: 3rem;
  }
  .text-xl {
    font-size: 1.5rem;
  }
  .text-l {
    font-size: 1.35rem;
  }
  .text-m {
    font-size: 1.25rem;
  }
  .text-s {
    font-size: 1.15rem;
  }
  .text-xs {
    font-size: 1rem;
  }
  .text-2xl-m {
    font-size: 2rem;
  }
  .text-xl-m {
    font-size: 1.65rem;
  }
  .text-blue-m {
    color: rgb(20, 40, 60);
  }
  .text-grey-m {
    color: #333;
  }
  .text-lgrey-m {
    color: rgba(51, 51, 51, 0.85);
  }
  .absolute-center-t {
    top: 0;
  }
  .absolute-center-b {
    bottom: 30px;
  }
  .position-none-m {
    position: static;
    top: 0;
    left: 0;
    transform: translate(0, 0);
    margin: 0;
  }
  .display-none-m {
    display: none;
  }
  .border-b-m {
    border-bottom: 1px solid #eee;
  }
  .order-0-m {
    order: 0;
  }
  .order-1-m {
    order: 1;
  }
  .multi-layer {
    width: 94%;
  }
  .outdoor-full-width-video {
    position: static;
  }
  .ratio-35:before {
    padding-top: 0;
  }
  .ratio-35 video {
    position: static;
    top: 0;
    transform: translateY(0);
  }
  .fixed-banner {
    position: static;
  }
  .fixed-banner .fixed-height-400 {
    height: auto;
  }
  .fixed-banner .fixed-height-400:before {
    padding-top: 0;
  }
  .fixed-banner-main {
    margin-top: 0;
  }
}
.outdoor-print-switch-section {
  background: #eee;
  transition: background-color 0.5s;
}
.outdoor-print-switch-section h2, .outdoor-print-switch-section p {
  color: #333;
  transition: color 0.5s;
}
.outdoor-print-switch-section.active {
  background: #1a1a1a;
}
.outdoor-print-switch-section.active h2, .outdoor-print-switch-section.active p {
  color: #eee;
}

.outdoor-print-switch img {
  transition: opacity 1s;
}
.outdoor-print-switch span:nth-of-type(1) img {
  opacity: 1;
}
.outdoor-print-switch span:nth-of-type(2) {
  top: 0;
}
.outdoor-print-switch span:nth-of-type(2) img {
  opacity: 0;
}
.outdoor-print-switch.active span:nth-of-type(1) img {
  opacity: 0;
}
.outdoor-print-switch.active span:nth-of-type(2) img {
  opacity: 1;
}

.outdoor-print-switch-trigger input {
  display: none;
}
.outdoor-print-switch-trigger input:checked + label span {
  background: rgba(20, 40, 60, 0.8);
}
.outdoor-print-switch-trigger input:checked + label span:before {
  transform: translateX(28px);
  background: #32b4ff;
}
.outdoor-print-switch-trigger label {
  display: flex;
  align-items: center;
  cursor: pointer;
}
.outdoor-print-switch-trigger span {
  width: 68px;
  height: 36px;
  box-sizing: border-box;
  border-radius: 36px;
  background: #fff;
  display: flex;
  align-items: center;
  padding: 4px 8px;
  position: relative;
  transition: background-color 0.5s;
}
.outdoor-print-switch-trigger span:before {
  content: "";
  position: absolute;
  display: inline-block;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: rgb(200, 20, 0);
  transition: transform 0.5s, background-color 0.5s;
}
.outdoor-print-switch-trigger span:after {
  width: 130px;
  content: "";
  position: absolute;
  left: 80px;
  color: #32b4ff;
  font-size: 1.25rem;
  font-weight: bold;
}

.video {
  width: 100%;
}
.video iframe {
  width: 100%;
  height: 360px;
}

html {
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -webkit-overflow-scrolling: touch;
  font-display: swap;
}

body {
  overflow-x: hidden;
  -webkit-tap-highlight-color: transparent;
}
body.active {
  height: 100%;
  overflow: hidden;
}

html, body {
  scroll-behavior: smooth;
}

@font-face {
  font-family: "icomoon";
  src: url("../font-new/icomoon.eot");
  src: url("../font-new/icomoon.eot#iefix") format("embedded-opentype"), url("../font-new/icomoon.ttf") format("truetype"), url("../font-new/icomoon.woff") format("woff"), url("../font-new/icomoon.svg#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
[class^=icon-], [class*=" icon-"] {
  font-family: "icomoon";
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-response:before {
  content: "\e919";
}

.icon-moq:before {
  content: "\e93a";
}

.icon-customize:before {
  content: "\e992";
}

.icon-delivery:before {
  content: "\e9af";
}

.icon-play:before {
  content: "\ea15";
}

.icon-pause:before {
  content: "\ea16";
}

.icon-logo:before {
  content: "\e917";
}

.icon-patent:before {
  content: "\e916";
}

.icon-cancel:before {
  content: "\e913";
}

.icon-check:before {
  content: "\e912";
}

.icon-location:before {
  content: "\e90f";
}

.icon-flag:before {
  content: "\e90e";
}

.icon-wechat:before {
  content: "\e910";
}

.icon-user:before {
  content: "\e90d";
}

.icon-edit:before {
  content: "\e904";
}

.icon-email:before {
  content: "\e903";
}

.icon-chevrons-down:before {
  content: "\e914";
}

.icon-chevron-down:before {
  content: "\e915";
}

.icon-search:before {
  content: "\e911";
}

.icon-arrow-right-circle:before {
  content: "\e901";
}

.icon-phone:before {
  content: "\e918";
}

.icon-organize:before {
  content: "\e90c";
}

.icon-twitter:before {
  content: "\e90b";
}

.icon-pinterest:before {
  content: "\e90a";
}

.icon-instagram:before {
  content: "\e909";
}

.icon-facebook:before {
  content: "\e908";
}

.icon-linkedin:before {
  content: "\e907";
}

.icon-youtube:before {
  content: "\e906";
}

.icon-skype:before {
  content: "\e905";
}

.icon-whatsapp:before {
  content: "\e902";
}

.icon-arrow-right:before {
  content: "\e900";
}

::-webkit-scrollbar {
  width: 4px;
}

::-webkit-scrollbar-track {
  background: #1a1a1a;
}

::-webkit-scrollbar-thumb {
  background: rgb(220, 160, 0);
}

.clearfix:after {
  display: block;
  content: "";
  clear: both;
}

.subnav, .aside-contact, .page-header, .page-footer {
  display: flex;
}

.page-header-m, .page-footer-m {
  display: none;
}

@media screen and (max-width: 1200px) {
  .subnav .aside-contact, .page-header, .page-footer {
    display: none;
  }
  .page-header-m, .page-footer-m {
    display: flex;
  }
}
.page-header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  width: 100%;
  height: 90px;
  padding: 0 80px;
  background: linear-gradient(180deg, rgba(26, 26, 26, 0.2), transparent);
  color: #fff;
  transition: all 0.3s;
}
.page-header > * {
  height: 100%;
}
.page-header.hidden-header {
  transform: translateY(-90px);
}
.page-header.header-bg {
  background: rgba(255, 255, 255, 0.95);
  box-shadow: 0 1px 1px rgba(26, 26, 26, 0.05);
  color: #333;
  backdrop-filter: blur(10px);
}
.page-header.header-bg .header-search button {
  color: #333;
}
.page-header a {
  font-size: 1.15rem;
}
.page-header:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: rgba(238, 238, 238, 0.2);
}

.cnss-logo a {
  height: 100%;
  align-items: center;
}
.cnss-logo span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 42px;
  height: 42px;
  background: rgb(220, 160, 0);
  border-radius: 4px;
  font-size: 1.75rem;
  color: rgb(20, 40, 60);
  margin-right: 6px;
}
.cnss-logo em {
  font-size: 2.25rem;
  font-weight: bold;
  margin-top: 4px;
  color: rgb(220, 160, 0);
}

.cnss-nav > ul {
  height: 100%;
}
.cnss-nav > ul > li {
  height: 100%;
  position: relative;
}
.cnss-nav > ul > li.active, .cnss-nav > ul > li:hover {
  text-shadow: 0 0 12px rgba(255, 255, 255, 0.6), 0 0 4px rgba(255, 255, 255, 0.9);
}
.cnss-nav > ul > li.active:before, .cnss-nav > ul > li:hover:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: #32b4ff;
}
.cnss-nav > ul > li a {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 20px;
  height: 100%;
  position: relative;
  transition: all 0.3s;
}
.cnss-nav > ul > li:hover .cnss-subnav {
  height: auto;
  transform: translate(-50%, 0);
}
.cnss-nav > ul .cnss-subnav {
  position: absolute;
  overflow: hidden;
  height: 0;
  z-index: 1000;
  top: 100%;
  left: 50%;
  width: 200px;
  padding: 0 20px;
  transform: translate(-50%, 0);
  will-change: transform;
  background: rgba(255, 255, 255, 0.95);
  color: #333;
  box-shadow: 0 6px 12px rgba(20, 40, 60, 0.2);
  color: #333;
  transition: all 0.3s;
}
.cnss-nav > ul .cnss-subnav a {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 16px;
  border-top: 1px solid rgba(51, 51, 51, 0.05);
  transition: all 0.3s;
}
.cnss-nav > ul .cnss-subnav a:hover {
  color: rgb(200, 20, 0);
}
.cnss-nav > ul .cnss-subnav a:hover:before {
  display: none;
}
.cnss-nav > ul .cnss-subnav:before {
  content: "";
  position: absolute;
  top: -2px;
  left: 0;
  width: 100%;
  height: 2px;
  background: #32b4ff;
}

.header-en a {
  display: flex;
  padding: 8px;
  border-bottom: 1px solid #32b4ff;
}

.header-search {
  margin-left: 10px;
}
.header-search button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 60px;
  height: 60px;
  border-radius: 2px;
  font-size: 1.35rem;
  color: #fff;
  cursor: pointer;
}

.page-header-m {
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  width: 100%;
  height: 56px;
  padding: 0 10px;
  background: #fff;
  box-shadow: 0 2px 2px rgba(20, 40, 60, 0.1);
}
.page-header-m .cnss-logo {
  flex: 1;
}
.page-header-m .cnss-logo em {
  font-size: 1.8rem;
}

.m-header-en {
  width: 36px;
  height: 36px;
  background: #eee;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #333;
  font-size: 0.85rem;
}

.m-nav-icon {
  width: 48px;
  height: 48px;
  position: relative;
}
.m-nav-icon input {
  width: 100%;
  height: 100%;
  opacity: 0;
}
.m-nav-icon input:checked ~ span:before {
  top: 23px;
  transform: rotate(45deg);
  transition: top 0.3s, transform 0.3s 0.2s;
}
.m-nav-icon input:checked ~ span:after {
  top: 23px;
  transform: rotate(-45deg);
  transition: top 0.3s, transform 0.3s 0.2s;
}
.m-nav-icon span:before, .m-nav-icon span:after {
  content: "";
  position: absolute;
  right: 10px;
  width: 21px;
  height: 2px;
  margin-left: -6px;
  background: rgba(20, 40, 60, 0.8);
  border-radius: 2px;
  transform-origin: 50% 50%;
  will-change: transform;
  transform: translateZ(0);
  transition: transform 0.3s, top 0.3s 0.2s;
}
.m-nav-icon span:before {
  top: 18px;
}
.m-nav-icon span:after {
  top: 28px;
}

.m-nav-wrapper {
  position: absolute;
  top: 56px;
  left: 0;
  width: 100%;
  overflow-y: scroll;
  padding: 10px 10px 200px;
  background: #fff;
  display: none;
  height: 0;
  transform: translateY(-100%);
  height: 100vh;
  transform: translateY(0);
}
.m-nav-wrapper.active {
  display: flex;
  flex-direction: column;
  height: 100vh;
  transform: translateY(0);
}

.m-nav-list > ul > li {
  padding: 0 10px;
  line-height: 60px;
  overflow: hidden;
  border-bottom: 1px solid rgba(238, 238, 238, 0.5);
}
.m-nav-list > ul > li a {
  display: block;
}

.expand-icon {
  position: relative;
}
.expand-icon i {
  display: block;
  width: 20px;
  height: 20px;
  transition: transform 0.3s;
  position: relative;
}
.expand-icon i:before, .expand-icon i:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: rgba(51, 51, 51, 0.8);
  transform: translate(-50%, -50%);
}
.expand-icon i:before {
  width: 2px;
  height: 10px;
  margin-right: 4px;
}
.expand-icon i:after {
  width: 10px;
  height: 2px;
}
.expand-icon.active i {
  transform: rotate(45deg);
}
.expand-icon.active ~ .m-subnav {
  height: auto;
}

.m-subnav {
  height: 0;
  overflow: hidden;
  transition: height 0.3s;
}
.m-subnav li {
  line-height: 36px;
}
.m-subnav li:last-child {
  margin-bottom: 20px;
}
.m-subnav a {
  display: inline-block;
  padding: 0 0 0 12px;
  overflow: hidden;
  position: relative;
}
.m-subnav a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 4px;
  height: 4px;
  transform: translateY(-50%);
  background: rgba(51, 51, 51, 0.5);
}

.m-contact-nav {
  position: fixed;
  z-index: 999;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 56px;
  padding: 8px;
  overflow-x: hidden;
  background: #1a1a1a;
  box-shadow: 0 -2px 2px rgba(26, 26, 26, 0.1);
  color: #fff;
}
.m-contact-nav li, .m-contact-nav a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 40px;
  line-height: 40px;
  border-radius: 40px;
  margin: 0 4px;
  overflow: hidden;
}
.m-contact-nav i {
  display: block;
  font-size: 1.35rem;
  margin: 0 2px 1px 0;
}
.m-contact-nav li:nth-of-type(1) a {
  background: rgb(200, 20, 0);
}
.m-contact-nav li:nth-of-type(2) {
  background: rgb(80, 170, 50);
}
.m-contact-nav li:nth-of-type(3) a {
  background: rgb(200, 20, 0);
}

.page-footer-m .footer-contact-wrapper {
  padding: 40px 20px 80px;
}
.page-footer-m .footer-contact-list {
  margin: 20px 0;
}
.page-footer-m .footer-contact-list dl {
  display: flex;
  overflow: hidden;
  padding: 12px 0;
  border-top: 1px solid rgba(51, 51, 51, 0.02);
  border-bottom: 1px solid rgba(51, 51, 51, 0.02);
  margin-top: -1px;
}
.page-footer-m .footer-contact-list dl:nth-of-type(6) {
  display: block;
}

.page-footer {
  padding: 80px 80px 10px;
}
.page-footer h2 {
  height: 80px;
}
.page-footer li {
  padding: 6px 0;
}
.page-footer img {
  width: 160px;
}
.page-footer a:hover {
  text-decoration: underline;
}

.page-footer-copyright {
  padding: 20px 0;
  margin-top: 40px;
  border-top: 1px solid rgba(51, 51, 51, 0.1);
}

.lazyload, .lazyloading {
  opacity: 0;
}

.lazyloaded {
  opacity: 1;
  transition: opacity 300ms;
}

.ratio-classify {
  position: relative;
}
.ratio-classify:before {
  content: "";
  display: block;
  width: 100%;
  height: 0;
  padding-bottom: 67.3685%;
  background: rgba(51, 51, 51, 0.2);
}
.ratio-classify > * {
  position: absolute;
  z-index: 3;
  top: 0;
  left: 0;
  width: 100%;
}

.ratio-products {
  position: relative;
}
.ratio-products:before {
  content: "";
  display: block;
  width: 100%;
  height: 0;
  padding-bottom: 100%;
  background: rgba(51, 51, 51, 0.2);
}
.ratio-products > * {
  position: absolute;
  z-index: 3;
  top: 0;
  left: 0;
  width: 100%;
}

.swiper-button-prev:after, .swiper-button-next:after {
  content: "";
  display: none;
}

.swiper-pagination-bullet {
  width: 16px;
  height: 16px;
  opacity: 1;
  background: rgba(255, 255, 255, 0.5);
}

.swiper-pagination-bullet-active {
  background: rgba(255, 255, 255, 0.98);
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 6px;
}

.fixbody {
  overflow: hidden;
  height: 100%;
}

.color-gradient {
  color: #333;
  background: -webkit-linear-gradient(0deg, #b200cc, rgb(200, 20, 0));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

body {
  --window-height: 960px;
}

.fabric-banner-wrapper {
  position: relative;
  width: 100%;
  height: var(--window-height);
  overflow: hidden;
}
.fabric-banner-wrapper.active .fabric-banner-img {
  opacity: 0.8;
  transition: opacity 5s ease;
}
.fabric-banner-wrapper.active .fabric-banner-img img {
  transform: scale(1);
}
.fabric-banner-wrapper.active .fabric-banner-video {
  opacity: 1;
}
.fabric-banner-wrapper.active .fabric-content-wrapper {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 3s ease, transform 3s ease;
}
.fabric-banner-wrapper.active .fabric-content:after {
  animation: bannerSqura 5s forwards;
}

.fabric-banner-img, .fabric-banner-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.fabric-banner-img {
  z-index: 1;
}
.fabric-banner-img img {
  transform: scale(1.05);
  transform-origin: 50% 0;
  transition: transform 10s;
}

.fabric-banner-video {
  z-index: 0;
  opacity: 0;
  transition: opacity 3s;
}
.fabric-banner-video video {
  object-fit: cover;
  width: 100%;
}

@media screen and (max-width: 1200px) {
  .fabric-banner-video {
    z-index: 0;
  }
  .fabric-banner-video video {
    object-fit: cover;
    height: 100%;
    width: auto;
    transform: translateX(-50%);
  }
}
@keyframes bannerSqura {
  0% {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    opacity: 0;
    transform: translate(-50%, -50%);
    background: rgba(255, 255, 60, 0.9);
  }
  50% {
    width: 480px;
    height: 480px;
    opacity: 1;
    border-radius: 0;
    background: rgba(180, 60, 180, 0.9);
    transition-timing-function: ease-in;
    transform: translate(-50%, -50%) rotate3D(0, 1, 0, 0deg);
  }
  60% {
    width: 480px;
    height: 480px;
    transition-timing-function: ease-in;
    transform: translate(-50%, -50%) rotate3D(0, 1, 0, 180deg);
  }
  100% {
    width: 480px;
    height: 500px;
    transition-timing-function: ease-out;
    background: rgba(50, 180, 255, 0.9);
  }
}
@media screen and (max-width: 1200px) {
  @keyframes bannerSqura {
    0% {
      width: 40px;
      height: 40px;
      opacity: 0;
      transform: translate(-50%, -50%);
      background: rgba(255, 255, 60, 0.9);
    }
    50% {
      width: 94%;
      height: 400px;
      opacity: 1;
      background: rgba(180, 60, 180, 0.9);
      transition-timing-function: ease-in;
      transform: translate(-50%, -50%) rotate3D(0, 1, 0, 0deg);
    }
    60% {
      width: 94%;
      height: 400px;
      transition-timing-function: ease-in;
      transform: translate(-50%, -50%) rotate3D(0, 1, 0, 180deg);
    }
    100% {
      width: 94%;
      height: 400px;
      background: rgba(50, 180, 255, 0.9);
    }
  }
}
.fabric-content-wrapper {
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
}

.fabric-content {
  text-align: center;
  max-width: 400px;
  color: #fff;
  position: relative;
  margin-top: 80px;
}
.fabric-content:after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  border-radius: 2px;
  transform: translate(-50%, -50%);
}

.ob-img-wrapper {
  overflow: hidden;
}
.ob-img-wrapper .ob-img-list {
  transition: transform 1s;
  transform: perspective(400px) translateZ(-80px);
}
.ob-img-wrapper .ob-img-list.active {
  transform: perspective(400px) translateZ(0px);
}
.ob-img-wrapper .ob-img-list.active .ob-img-item {
  transform: scale(1);
}
.ob-img-wrapper .ob-img-item {
  width: 18%;
  margin: 20px 1%;
  transition: all 1.5s;
}
.ob-img-wrapper .ob-img-item:nth-of-type(2) {
  transform: scale(0.8);
}
.ob-img-wrapper .ob-img-item:nth-of-type(3) {
  transform: scale(0.6);
  transform-origin: 20% 100%;
}
.ob-img-wrapper .ob-img-item:nth-of-type(4) {
  transform: scale(0.65);
  transform-origin: 0 50%;
}
.ob-img-wrapper .ob-img-item:nth-of-type(7) {
  transform: scale(0.6);
  transform-origin: 50% 50%;
}
.ob-img-wrapper .ob-img-item:nth-of-type(8) {
  transform: scale(0.65);
  transform-origin: 30% 30%;
}
.ob-img-wrapper .ob-img-item:nth-of-type(9) {
  transform: scale(0.8);
  transform-origin: 20% 50%;
}

@media screen and (max-width: 1200px) {
  .ob-img-wrapper .ob-img-item {
    width: 30%;
    margin: 10px 1.66%;
  }
  .fabric-banner-wrapper.active .fabric-banner-img img {
    width: auto;
    height: 100%;
    transform: translate(-10%, 0) scale(1);
    transition: none;
  }
  .fabric-content {
    width: 90%;
    max-width: 360px;
    margin-top: -40px;
  }
}
.print-switch-section {
  min-height: 940px;
}
.print-switch-section .print-switch-img-night, .print-switch-section .print-switch-img-day {
  position: absolute;
  transition: opacity 1s;
}
.print-switch-section .print-switch-img-night {
  opacity: 1;
}
.print-switch-section .print-switch-img-day {
  opacity: 0;
}
.print-switch-section.active .print-switch-img-night {
  opacity: 0;
}
.print-switch-section.active .print-switch-img-day {
  opacity: 1;
}

.print-switch-img {
  width: 100%;
  height: 100%;
}
.print-switch-img img {
  width: auto;
  height: 100%;
  object-fit: cover;
  object-position: 50% bottom;
}

.print-switch-content {
  justify-content: flex-end;
}

.outdoor-print-switch-trigger + span {
  margin-top: 4px;
}

.print-crafts-compare li {
  padding: 16px 0;
  border-top: 1px solid rgba(50, 180, 255, 0.1);
  border-bottom: 1px solid rgba(50, 180, 255, 0.1);
  margin-bottom: -1px;
  color: #32b4ff;
}

@media screen and (max-width: 1200px) {
  .print-crafts-compare li {
    padding: 10px 0;
  }
}
.print-pattern-list {
  perspective: 1200px;
}
.print-pattern-list li {
  transform: perspective(400px) translateZ(-400px);
  transition: all 1s ease-out;
}
.print-pattern-list li:nth-of-type(1), .print-pattern-list li:nth-of-type(5), .print-pattern-list li:nth-of-type(6), .print-pattern-list li:nth-of-type(10), .print-pattern-list li:nth-of-type(11), .print-pattern-list li:nth-of-type(15) {
  transform: scale(0.9);
}
.print-pattern-list li:nth-of-type(2), .print-pattern-list li:nth-of-type(4), .print-pattern-list li:nth-of-type(12), .print-pattern-list li:nth-of-type(14) {
  transform: scale(0.7);
  transition: all 1.1s;
}
.print-pattern-list li:nth-of-type(3), .print-pattern-list li:nth-of-type(7), .print-pattern-list li:nth-of-type(9), .print-pattern-list li:nth-of-type(13) {
  transform: scale(0.5);
  transition: all 1.3s;
}
.print-pattern-list li:nth-of-type(8) {
  transform: scale(0.3);
  transition: all 1.5s;
}
.print-pattern-list.active li {
  transform: perspective(400px) scaleZ(1.2) translateZ(0);
}

.print-faq-list li {
  padding: 20px 10px;
  border-top: 1px solid rgba(20, 40, 60, 0.05);
  border-bottom: 1px solid rgba(20, 40, 60, 0.05);
  margin-bottom: -1px;
}
.print-faq-list p {
  margin-top: 10px;
}

.fabric-related-list {
  justify-content: flex-start;
}
.fabric-related-list > div {
  width: 30%;
  margin-left: 1.66%;
  margin-right: 1.66%;
}

.fabric-list-img-wrapper {
  position: relative;
  width: 100%;
  min-height: 486px;
  overflow: hidden;
}
.fabric-list-img-wrapper:hover .fabric-list-img-front {
  opacity: 0;
}
.fabric-list-img-wrapper:hover .fabric-list-img-back {
  opacity: 1;
}

.fabric-list-img {
  width: 100%;
}

.fabric-list-img-front, .fabric-list-img-back {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transition: opacity 1s;
}

.fabric-list-img-back {
  opacity: 0;
}

.button-link {
  display: flex;
  justify-content: center;
  padding: 12px 48px 10px;
  transition: all 0.5s;
}
.button-link.border-white {
  border: 1px solid #fff;
}
.button-link:hover {
  background: #fff;
  color: rgb(20, 40, 60);
}

@media screen and (max-width: 1200px) {
  .fabric-related-list > div {
    width: 46%;
    margin-left: 2%;
    margin-right: 2%;
  }
  .fabric-list-img-wrapper {
    min-height: 240px;
    max-height: 256px;
  }
  .button-link {
    padding: 12px 40px 10px;
  }
}
