/* 全局样式开始 */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0px;
  border: 0;
  font-size: 100%;
  outline: none;
}
body {
  --color-text: #fff;
  --color-bg: #252525;
  --color-link: #fff;
  --color-link-hover: #f20c40;
  --color-bg-item1: #15171b;
  --color-bg-item2: #2c35b7;
  --color-bg-item3: #0f1013;
  --color-bg-item4: #1d2027;
  --color-bg-item5: #0f1013;
  --color-item-alt: #494d54;
  --color-quote: #5b677a;
  --color-info: #57535a;
  --color-title: #e23434;
  --color-tagline: #e2e2e2;
  font-family: "europa", Futura, Arial, sans-serif;
  min-height: 100vh;
  color: #57585c;
  color: var(--color-text);
  background-color: #fff;
  /* background-color: var(--color-bg); */
  overflow: hidden;
  padding: 6rem 0 0 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font: 14px / 1.8 "PingFang-SC-Regular";
}
.clearfix {
  zoom: 1;
}

.clearfix:after {
  content: " ";
  display: block;
  font-size: 0;
  height: 0;
  clear: both;
  visibility: hidden;
}
a {
  text-decoration: none;
  color: var(--color-link);
  outline: none;
  transition: color 0.2s;
}
/* 全局样式结束 */

/* 头部样式开始 */
.header {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 99;
  width: 100%;
}

.header.scrolls .navs {
  opacity: 0;
  visibility: hidden;
}

.header .logo {
  display: block;
  float: left;
  margin-left: 38px;
  margin-top: 1.5rem;
  width: 140px;
  position: relative;
  z-index: 10;
}

.header .logo img {
  width: 100%;
  height: auto;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  -moz-transition: 0.4s;
  transition: 0.4s;
}

.header .logo img.hide {
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  visibility: hidden;
}

.header-right {
  padding:30px;
  right:0px;
  top:0px;
  z-index: 999;
  position: absolute;
}

.header-right.active .language a {
  color: #fff !important;
}

.header-right.active .language a:first-child:before {
  background: #fff;
}

.header-right.active .menubtn.active span:after,
.header-right.active .menubtn.active span:before {
  background: #fff;
}
.header .timeinfo {
  position: fixed;
  z-index: 199;
  top: 0.5rem;
  right: 5rem;
  display: grid;
  align-content: space-between;
  width: 100%;
  max-width: none;
  height: 100vh;
  /* padding: 0.5rem 5rem 0 0; */
  /* margin-top: 0.5rem;
        margin-right: 5rem; */
  pointer-events: none;
  grid-template-columns: 50% 50%;
  grid-template-rows: auto auto auto;
  grid-template-areas: "codropsheader info";
}
.header .timeinfo .info {
  display: block;
  grid-area: info;
  margin: 1rem 0;
  justify-self: end;
  text-align: center;
}

.menubtn {
  width: 22px;
  height: 22px;
  position: relative; /* 新增 */
  cursor: pointer;
}

/* 新增点击热区 */
.menu-trigger {
  position: absolute;
  top: -35px;    /* 扩展点击区域 */
  left: -30px;
  right: -30px;
  bottom: -30px;
  z-index: 10;
}

.menubtn span {
  display: block;
  width: 100%;
  height: 2px;
  background: #fff;
  position: relative;
  margin: 6px 0; /* 调整间距 */
  transition: 0.3s;
  pointer-events: none; /* 禁止 span 接收点击 */
}

/* 保持原有伪元素动画逻辑 */

.menubtn span:after,
.menubtn span:before {
  content: "";
  position: absolute;
  display: inline-block;
  width: 100%;
  height: 2px;
  left: 0;
  background-color: #fff;
  -webkit-transition-duration: 0.3s, 0.3s;
  -moz-transition-duration: 0.3s, 0.3s;
  -ms-transition-duration: 0.3s, 0.3s;
  -o-transition-duration: 0.3s, 0.3s;
  transition-duration: 0.3s, 0.3s;
  -webkit-transition-delay: 0.3s, 0s;
  -moz-transition-delay: 0.3s, 0s;
  -ms-transition-delay: 0.3s, 0s;
  -o-transition-delay: 0.3s, 0s;
  transition-delay: 0.3s, 0s;
}

.menubtn span:before {
  top: -6px;
  -webkit-transition-property: top, transform;
  -moz-transition-property: top, transform;
  -ms-transition-property: top, transform;
  -o-transition-property: top, transform;
  transition-property: top, transform;
}

.menubtn span:after {
  width: 10px;
  bottom: -6px;
  -webkit-transition-property: bottom, transform;
  -moz-transition-property: bottom, transform;
  -ms-transition-property: bottom, transform;
  -o-transition-property: bottom, transform;
  transition-property: bottom, transform;
}

.menubtn.active {
  margin-left: 29px;
}

.menubtn.active span {
  background-color: transparent;
  -webkit-transition-delay: 0s, 0s;
  -moz-transition-delay: 0s, 0s;
  -ms-transition-delay: 0s, 0s;
  -o-transition-delay: 0s, 0s;
  transition-delay: 0s, 0s;
}

.menubtn.active span:after,
.menubtn.active span:before {
  background: #fff;
  -webkit-transition-delay: 0s, 0.3s;
  -moz-transition-delay: 0s, 0.3s;
  -ms-transition-delay: 0s, 0.3s;
  -o-transition-delay: 0s, 0.3s;
  transition-delay: 0s, 0.3s;
}

.menubtn.active span:before {
  top: 0px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

.menubtn.active span:after {
  width: 100%;
  bottom: 0px;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/* ================= 导航菜单修正版 ================= */
.navigate-mark {
  position: fixed;
  width: 100%;
  left: 0;
  top: 0;
  height: 100%;
}

.navigate {
  width: 63.85%;
  height: 100%;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 4;
  visibility: hidden;
  transition: 0.7s;
  padding: 40px 10% 40px 25%;  /* 增加右侧空间 */
}

.navigate.show {
  visibility: visible;
}

.navigate-list {
  position: absolute;
  left: 25%;    /* 向右移动内容 */
  top: 18%;     /* 向下移动内容 */
  right: 10%;
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}

.navigate-item {
  flex: 1 1 45%;
  min-width: 260px;  /* 增加最小宽度 */
  opacity: 0;
  visibility: hidden;
  transform: translateX(120px);
  transition: 0.4s;
}

.navigate-item dt a {
  font-size: clamp(24px, 4vw, 34px);
  line-height: 3.2;
  font-weight:bold;
}

.navigate-item dd p a {
  font-size: clamp(18px, 2.5vw, 24px);
  line-height: 1.4;
}

/* 背景层定位修正 */
.navigate:before {
  left: 12%;  /* 背景向右移动 */
  top: -8%;
}

.navigate:after {
  left: 25%;  /* 背景向右移动 */
  top: -10%;
}

/* 移动端适配 */
@media (max-width: 768px) {
  .navigate {
    width: 82%;  /* 增大容器宽度 */
    padding: 30px 8% 40px 15%;
  }
  
  .navigate-list {
    left: 12%;
    right: 8%;
    top: 15%;
  }
  
  .navigate:after {
    left: 12%;  /* 同步背景移动 */
    top: -8%;
  }
  
  .navigate-item {
    flex: 1 1 100%;
    min-width: 220px;  /* 优化最小宽度 */
  }
  
  .navigate-item dt a {
    font-size: clamp(20px, 5.5vw, 26px);
  }
  
  .navigate-item dd p a {
    font-size: clamp(16px, 3.8vw, 20px);
  }
}

/* 超小屏幕适配 */
@media (max-width: 480px) {
  .navigate {
    width: 90%;
    padding: 20px 5% 30px 12%;
  }
  
  .navigate-list {
    left: 10%;
    right: 5%;
    top: 12%;
  }
  
  .navigate:after {
    left: 10%;
    top: -5%;
  }
}

/* 保持原有动画和背景效果 */
.navigate.show:before,
.navigate.show:after {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
}

.navigate.show .navigate-item {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
  transition: 0.6s 0.4s;
}

/* 保持原有背景动画 */
.navigate:before,
.navigate:after {
  content: "";
  width: 100%;
  padding-bottom: 100%;
  height: 0;
  overflow: hidden;
  position: absolute;
  opacity: 0;
  visibility: hidden;
  transform: scale(0);
  transition: 0.78s;
}

.navigate:before {
  left: 0;
  top: 0;
  background: rgba(225, 225, 225, 0.2);
  z-index: -2;
  border-radius: 0 0 0 100%;
  transform-origin: right top;
}

.navigate:after {
  left: 80px;
  top: -40px;
  background: rgba(120, 120, 120, 0.8);
  z-index: -1;
  border-radius: 0 0 0 100%;
  transform-origin: right top;
}

.navigate.show:before,
.navigate.show:after {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
}
/* 头部样式结束 */

/* 脚部样式开始 */
footer {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 400px;
}

.container {
  width: calc(100% - 40px);
  max-width: 1680px;
  margin: 0 auto;
}

footer.simple {
  background: #fbfbfb;
  padding: 30px 0;
}

@media (min-width: 640px) {
  footer.simple {
    padding: 10vh 0 30px;
  }
}

@media (min-width: 1680px) {
  footer.simple {
    padding: 215px 0 30px;
  }
}

footer.simple:before {
  content: "";
  position: absolute;
  top: -60px;
  right: 0;
  width: 50%;
  height: 60px;
  background: #fbfbfb;
}

@media (min-width: 1200px) {
  footer.simple:before {
    width: 360px;
    height: 90px;
    top: -90px;
  }
}

@media (min-width: 1680px) {
  footer.simple:before {
    width: calc((100% - 1680px) / 2 + 360px);
  }
}

footer.simple p {
  color: #656565;
  margin: 0;
  font-size: 14px;
}

@media (max-width: 640px) {
  footer.simple p {
    text-align: center;
    margin: 5px 0;
  }
}

@media (min-width: 640px) {
  footer.simple .footer-copy {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}

.footer-main {
  background: #000000;
  padding: 40px 0;
}

@media (min-width: 768px) {
  .footer-main {
    padding: 60px 0;
  }
}

@media (min-width: 1200px) {
  .footer-main {
    padding: 65px 0 50px;
  }
}

.footer-main .footer-title {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  margin: 35px 0;
}

@media (min-width: 768px) {
  .footer-main .footer-title {
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
    margin: 0 0 60px;
  }
}

@media (min-width: 1200px) {
  .footer-main .footer-title {
    margin: 0 0 55px;
  }
}

.footer-main .footer-title h2,
.footer-main .footer-title strong {
  color: white;
  margin: 0;
  line-height: 1;
  order: 2;
  text-align: center;
}

@media (min-width: 768px) {
  .footer-main .footer-title h2,
  .footer-main .footer-title strong {
    order: 1;
    text-align: left;
  }
}

.footer-main .footer-title strong {
  font-size: 38px;
}

@media (min-width: 640px) {
  .footer-main .footer-title strong {
    font-size: 46px;
  }
  h1.small {
    font-size: 38px;
  }
}

@media (min-width: 768px) {
  .footer-main .footer-title strong {
    font-size: 48px;
  }
  h1.small {
    font-size: 46px;
  }
}

@media (min-width: 1200px) {
  .footer-main .footer-title strong {
    font-size: 62px;
  }
  h1.small {
    font-size: 46px;
  }
}

@media (min-width: 1440px) {
  .footer-main .footer-title strong {
    font-size: 76px;
  }
  h1.small {
    font-size: 60px;
  }
}

.footer-main .footer-title .icon {
  display: none;
}

@media (min-width: 768px) {
  .footer-main .footer-title .icon {
    position: relative;
    display: block;
    background-image: url("../image/logo-9.svg");
    background-size: contain;
    width: 30px;
    height: 36px;
    order: 2;
    margin: 0;
  }
}

@media (min-width: 1200px) {
  .footer-columns {
    display: flex;
    justify-content: space-between;
  }
}

@media (min-width: 768px) {
  .footer-columns .footer-columns-left {
    display: flex;
    justify-content: space-between;
  }
}

@media (min-width: 1200px) {
  .footer-columns .footer-columns-left {
    justify-content: flex-start;
  }
}

.footer-locales {
  display: flex;
  flex-wrap: wrap;
  margin-left: -20px;
  margin-right: -20px;
}

@media (min-width: 768px) {
  .footer-locales {
    margin: 0;
    margin-left: 50px;
    flex-wrap: nowrap;
  }
}

@media (min-width: 1200px) {
  .footer-locales {
    margin-left: 100px;
  }
}

@media (min-width: 1680px) {
  .footer-locales {
    margin-left: 200px;
  }
}

.footer-locales .col {
  margin: 0 20px;
  width: calc(50% - 40px);
}

@media (min-width: 576px) {
  .footer-locales .col {
    width: 33.3333%;
  }
}

@media (min-width: 1200px) {
  .footer-locales .col {
    margin: 0 30px;
  }
}

@media (min-width: 1680px) {
  .footer-locales .col {
    margin: 0 50px;
    width: 190px;
  }
}

@media (min-width: 576px) {
  .footer-locales .col:first-child {
    margin-left: 0;
  }
  .footer-locales .col:last-child {
    margin-right: 0;
  }
}

.footer-locales .col > div {
  margin: 0 0 25px;
}

.footer-locales strong {
  font-size: 14px;
  color: #656565;
  margin: 0 0 12px;
  font-weight: 600;
}

@media (min-width: 768px) {
  .footer-locales strong {
    font-size: 16px;
  }
}

.footer-locales p {
  margin: 0 0 12px;
  font-size: 14px;
  color: #b8b8b8;
}

@media (min-width: 768px) {
  .footer-locales p {
    font-size: 16px;
  }
}

.footer-locales a,
.footer-locales p a {
  font-size: 14px;
  color: #b8b8b8;
  text-decoration: none;
}

@media (min-width: 768px) {
  .footer-locales a,
  .footer-locales p a {
    font-size: 16px;
  }
}

@media (max-width: 1440px) {
  .footer-locales a,
  .footer-locales p a {
    display: block;
  }
}

.footer-locales a:hover,
.footer-locales p a:hover {
  color: white;
}

.footer-locales ul {
  margin: 0;
  padding: 0;
}

.footer-locales ul li {
  margin: 0 0 10px;
}

.footer-contact {
  margin: 40px 0 0;
  position: relative;
}

@media (min-width: 1200px) {
  .footer-contact {
    margin: 0;
  }
}

.footer-contact-links {
  margin: 0 0 20px;
  padding: 0;
  display: flex;
  justify-content: center;
}

@media (min-width: 1200px) {
  .footer-contact-links {
    margin: 0 0 80px;
    justify-content: flex-end;
  }
}

.footer-contact-links li {
  margin: 0 10px;
}

@media (min-width: 768px) {
  .footer-contact-links li {
    margin: 0 30px;
  }
}

.footer-contact-links li a {
  color: #656565;
  font-size: 20px;
  text-decoration: none;
}

.footer-contact-links li a:hover {
  color: #ffffff;
}

.footer-contact-links li:first-child {
  margin-left: 0;
}

.footer-contact-links li:last-child {
  margin-right: 0;
}

.footer-contact-social {
  display: flex;
  justify-content: center;
  margin: 0;
  padding: 0;
}

@media (min-width: 1200px) {
  .footer-contact-social,
  .footer-contact-links {
    justify-content: flex-end;
  }
}

.footer-contact-social li {
  display: block;
  margin: 0 10px;
}

.footer-contact-social li:first-child {
  margin-left: 0;
}

.footer-contact-social li:last-child {
  margin-right: 0;
}

.footer-contact-social li a {
  position: relative;
  display: block;
  overflow: hidden;
  width: 50px;
  height: 50px;
}

@media (min-width: 768px) {
  .footer-contact-social li a {
    width: 60px;
    height: 60px;
  }
}

.footer-contact-social li a.dribbble {
  background-image: url("../image/ball-lager.svg");
  background-size: contain;
}

.footer-contact-social li a.dribbble:hover {
  background-image: url("../image/ball-lager-hover.svg");
  background-size: contain;
}

.footer-contact-social li a.station {
  background-image: url("../image/ball-lager.svg");
  background-size: contain;
}

.footer-contact-social li a.station:hover {
  background-image: url("../image/ball-lager-hover.svg");
  background-size: contain;
}

.footer-contact-social li a.instagram {
  background-image: url("../image/pane-lager.svg");
  background-size: contain;
}

.footer-contact-social li a.instagram:hover {
  background-image: url("../image/pane-lager-hover.svg");
  background-size: contain;
}

.footer-contact-social li a.behance {
  background-image: url("../image/be-lager.svg");
  background-size: contain;
}

.footer-contact-social li a.behance:hover {
  background-image: url("../image/be-lager-hover.svg");
  background-size: contain;
}

.footer-logo {
  position: relative;
  width: 90px;
  height: 55px;
  overflow: hidden;
  text-indent: -999px;
  background-image: url("../picture/logo-l-w.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin: 0;
}

.footer-columns .footer-logo {
  display: block;
  width: 120px;
  height: 75px;
  margin: 0 auto 30px;
}

@media (min-width: 768px) {
  .footer-logo,
  .footer-columns .footer-logo {
    width: 300px;
    height: 100px;
    margin: 0;
  }
}

@media (max-width: 640px) {
  .footer-columns .footer-logo {
    display: none;
  }
}

.footer-bottom {
  background: #1a1a1a;
  padding: 20px 0;
}

.footer-bottom p,
.footer-bottom a {
  color: #656565;
  margin: 0;
  font-size: 14px;
}

@media (max-width: 640px) {
  .footer-bottom p,
  .footer-bottom a {
    text-align: center;
    margin: 5px 0;
  }
}

@media (min-width: 640px) {
  .footer-bottom {
    padding: 30px 0;
  }
  .footer-bottom .footer-copy {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}
/* 脚部样式结束 */

/* 首页开屏动画 */
.home-load {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 199;
  background: #101010;
  display: none;
}

.home-load .load-bg {
  width: 0;
  height: 100%;
  background: #1b1b1b;
  position: absolute;
  top: 0;
}

.home-load .load-left {
  left: 0;
}

.home-load .load-right {
  right: 0;
}

.load-lines {
  width: 1px;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 0;
  background: #101010;
  z-index: 5;
  pointer-events: none;
}

.load-texts {
  width: 480px;
  position: absolute;
  left: 50%;
  margin-left: -240px;
  top: 50%;
  margin-top: -111px;
  text-align: center;
}

.load-logo {
  display: inline-block;
  position: relative;
  margin: auto;
  width: 200px;
  transform: translateX(8px);
}

.load-logo img {
  display: block;
  width: 100%;
  height: auto;
  opacity: 1;
}

.load-line {
  width: 100%;
  height: 2px;
  position: relative;
  margin-top: 55px;
}

.load-line b {
  display: block;
  width: 100%;
  height: 2px;
  position: absolute;
  left: 0;
  top: 0;
  background: #282828;
  transform: scale(1);
}

.load-line i {
  display: block;
  width: 100%;
  height: 2px;
  background: #fff;
  position: absolute;
  left: 0;
  top: 0;
  transform: scale(1);
}

.load-fonts {
  margin-top: 47px;
  text-align: center;
  color: #ffffff;
  font-size: 20px;
  line-height: 1;
  opacity: 1;
  position: relative;
  top: -30px;
}
/* 首页开屏动画结束 */

/* 列表页开屏动画开始 */
.listload {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  background-color: #fff;
  transition: 0.88s;
  overflow: hidden;
}

.listload.hide {
  opacity: 0;
  height: 0;
  visibility: hidden;
}

.listLoadline {
  width: 0;
  transition: 2s linear;
  height: 6px;
  background-color: #000;
}

.listLoadline.load {
  width: 100%;
}

.listload-text {
  width: 100%;
  height: 100vh;
  top: 0;
  text-align: center;
  position: absolute;
  left: 0;
}

.listload-text strong {
  width: 100%;
  display: block;
  text-align: center;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -35px;
  color: #000;
  font-family: "Gilroy-Bold.woff", Arial, sans-serif;
  font-size: 70px;
  line-height: 1;
  opacity: 0;
  font-variant-ligatures: no-common-ligatures;
  animation-duration: 0.5s;
  animation-timing-function: ease-in-out;
}

@keyframes fadeIn {
  from {
      opacity: 0;
  }
  to {
      opacity: 1;
  }
}

@keyframes fadeOut {
  from {
      opacity: 1;
  }
  to {
      opacity: 0;
  }
}
/* 列表页开屏动画结束 */