site-footer {
  display: block;
  width: 100%;
  min-height: 460px;
  clear: both;
  position: relative;
  z-index: 1;
  box-sizing: content-box;
  background-color: #151515;
  font-family: var(--site-font-sans);
  line-height: 1.6;
  overflow-x: hidden;
}

site-footer:empty {
  background-color: #151515;
}

site-footer * {
  font-family: var(--site-font-sans);
}

.Footer_container,
.Footer_container *,
site-footer * {
  box-sizing: content-box;
}

.Footer_container {
  background-color: #151515;
  color: #fff;
  width: 100%;
  display: flow-root;
  padding: 0;
  font-family: var(--site-font-sans);
  line-height: 1.6;
  overflow-x: hidden;
}

.Footer_content {
  max-width: 1280px;
  margin: 25px auto 0;
  padding: 60px 20px 24px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  row-gap: 0;
}

.Footer_left {
  box-sizing: border-box;
  flex: 0 0 38%;
  max-width: 38%;
  min-width: 0;
  padding-right: 28px;
}

.Footer_logo {
  height: 50px;
  margin-bottom: 25px;
  display: block;
}

.Footer_description {
  font-size: 15px;
  line-height: 1.7;
  color: #ccc;
  margin-bottom: 25px;
  max-width: 600px;
}

html[lang="zh-CN"] .Footer_description,
html[data-language="CN"] .Footer_description {
  font-size: 14px;
}

.Footer_description_lead {
  display: inline-block;
  font-size: 16px;
  font-weight: 600;
  color: #fff;
  margin-bottom: 15px;
}

.Footer_right {
  box-sizing: border-box;
  flex: 1 1 0;
  max-width: 62%;
  width: 62%;
  min-width: 0;
  padding-left: 28px;
  padding-top: 75px;
}

.Footer_right[data-footer-dynamic-nav]:empty {
  min-height: 210px;
}

.Footer_nav_columns {
  display: grid;
  grid-template-columns: minmax(128px, 128px) minmax(180px, 180px) minmax(360px, 360px);
  column-gap: clamp(24px, 2vw, 36px);
  justify-content: end;
  width: 100%;
}

.Footer_nav_column {
  min-width: 0;
}

.Footer_nav_heading {
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
  margin: 0 0 15px;
}

.Footer_nav_list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0;
}

.Footer_nav_list li {
  color: #ccc;
  font-size: 14px;
  line-height: 1.7;
}

.Footer_nav_column:first-child .Footer_nav_list li {
  white-space: nowrap;
}

.Footer_nav_list a {
  color: #ccc;
  text-decoration: none;
  transition: color 0.25s ease;
}

.Footer_nav_list a:hover {
  color: #fff;
}

.Footer_nav_social .Footer_social_icons {
  justify-content: flex-start;
}

.Footer_copyright {
  font-size: 13px;
  color: #999;
  margin-top: 0;
  text-align: center;
}

.Footer_social_icons {
  display: flex;
  gap: 15px;
  justify-content: center;
}

.Footer_social_icons a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  background-color: #333;
  border-radius: 50%;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  position: relative;
  overflow: hidden;
}

.Footer_social_icons a::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #c00, #f33);
  opacity: 0;
  transition: opacity 0.3s ease;
  border-radius: 50%;
}

.Footer_social_icons a:hover {
  background-color: transparent;
  transform: scale(1.08);
  box-shadow: 0 8px 20px rgba(204, 0, 0, 0.3);
}

.Footer_social_icons a:hover::before {
  opacity: 1;
}

.Footer_social_icons a:hover .Footer_social_icon {
  filter: brightness(0) invert(1);
}

.Footer_social_icon {
  width: 22px;
  height: 22px;
  position: relative;
  z-index: 1;
  transition: filter 0.3s ease;
}

.Footer_facebook {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath fill='%23ffffff' d='M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z'/%3E%3C/svg%3E") no-repeat center;
}

.Footer_instagram {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23ffffff' d='M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7-29.5 9-99.5 9-132.1s2.7-102.7-9-132.1z'/%3E%3C/svg%3E") no-repeat center;
}

.Footer_x {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23ffffff' d='M389.2 48h70.6L305.6 224.2 487 464H345L233.7 318.6 106.5 464H35.8L200.7 275.5 26.8 48H172.4L272.9 180.9 389.2 48zM364.4 421.8h39.1L151.1 88h-42L364.4 421.8z'/%3E%3C/svg%3E") no-repeat center;
}

.Footer_youtube {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath fill='%23ffffff' d='M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z'/%3E%3C/svg%3E") no-repeat center;
}

.Footer_tiktok {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23ffffff' d='M448,209.91a210.06,210.06,0,0,1-122.77-39.25V349.38A162.55,162.55,0,1,1,185,188.31v89.61a74.62,74.62,0,1,0,52.23,71.18V0h88a121.18,121.18,0,0,0,1.86,22.17h0A122.18,122.18,0,0,0,381,102.39a121.43,121.43,0,0,0,67,20.14Z'/%3E%3C/svg%3E") no-repeat center;
}

.Footer_wechat {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath fill='%23ffffff' d='M385.2 167.6c6.4 0 12.6.3 18.8 1.1C387.4 90.3 303.3 32 207.7 32 100.5 32 13 104.8 13 197.4c0 53.4 29.3 97.5 77.9 131.6l-19.3 58.6 68-34.1c24.4 4.8 43.8 9.7 68.2 9.7 6.2 0 12.1-.3 18.3-.8-4-12.9-6.2-26.6-6.2-40.8-.1-84.9 72.9-154 165.3-154zm-104.5-52.9c14.5 0 26.2 11.7 26.2 26.2 0 14.5-11.7 26.2-26.2 26.2-14.5 0-26.2-11.7-26.2-26.2 0-14.5 11.7-26.2 26.2-26.2zm-143.4 52.9c-14.5 0-26.2-11.7-26.2-26.2 0-14.5 11.7-26.2 26.2-26.2 14.5 0 26.2 11.7 26.2 26.2 0 14.4-11.7 26.2-26.2 26.2zm364.8 67.9c-64.2 0-116.3 52.1-116.3 116.3 0 64.2 52.1 116.3 116.3 116.3 64.2 0 116.3 52.1 116.3 116.3 0-64.2-52.1-116.3-116.3-116.3zm-45.7 130.3c-9.3 0-16.9-7.6-16.9-16.9 0-9.3 7.6-16.9 16.9-16.9 9.3 0 16.9 7.6 16.9 16.9 0 9.3-7.6 16.9-16.9 16.9zm92.5 0c-9.3 0-16.9-7.6-16.9-16.9 0-9.3 7.6-16.9 16.9-16.9 9.3 0 16.9 7.6 16.9 16.9 0 9.3-7.6 16.9-16.9 16.9z'/%3E%3C/svg%3E") no-repeat center;
}

.Footer_bottom {
  width: 100%;
  padding-top: 16px;
  border-top: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}

.Footer_bottom::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  width: 100vw;
  border-top: 1px solid #333;
  transform: translateX(-50%);
}

@media (min-width: 1025px) {
  .Footer_content {
    padding-bottom: 24px;
  }

  .Footer_left {
    min-height: 270px;
  }

  .Footer_nav_list {
    gap: 0;
  }

  .Footer_nav_list li {
    line-height: 1.7;
  }

  .Footer_bottom {
    margin-top: 46px;
    padding-top: 24px;
  }
}

.Footer_nav_columns.Footer_nav_columns_single {
  grid-template-columns: minmax(0, max-content);
}

@media (min-width: 1181px) and (max-width: 1320px) {
  .Footer_left {
    flex-basis: 38%;
    max-width: 38%;
    padding-right: 24px;
  }

  .Footer_right {
    max-width: 62%;
    width: 62%;
    padding-left: 24px;
  }

  .Footer_nav_columns {
    grid-template-columns: minmax(128px, 128px) minmax(176px, 176px) minmax(340px, 340px);
    column-gap: clamp(18px, 2vw, 28px);
  }
}

@media (min-width: 1025px) and (max-width: 1180px) {
  .Footer_left {
    flex-basis: 100%;
    max-width: 100%;
    width: 100%;
    padding-right: 0;
    margin-bottom: 40px;
  }

  .Footer_right {
    flex-basis: 100%;
    max-width: 100%;
    width: 100%;
    padding-left: 0;
    padding-top: 0;
  }

  .Footer_nav_columns {
    grid-template-columns: minmax(128px, 1fr) minmax(128px, 1fr) minmax(320px, 1.35fr);
    column-gap: 30px;
    justify-content: stretch;
  }
}

@media (max-width: 1024px) {
  site-footer {
    min-height: 460px;
  }

  .Footer_content {
    padding: 50px 20px 22px;
    row-gap: 0;
  }

  .Footer_left {
    flex-basis: 100%;
    max-width: 100%;
    width: 100%;
    padding-right: 0;
    margin-bottom: 40px;
  }

  .Footer_description {
    max-width: none;
    width: 100%;
    margin-bottom: 0;
  }

  .Footer_right {
    flex-basis: 100%;
    max-width: 100%;
    width: 100%;
    padding-left: 0;
    padding-top: 0;
  }

  .Footer_nav_columns {
    grid-template-columns: minmax(120px, max-content) minmax(160px, max-content) minmax(300px, max-content);
    column-gap: 36px;
    justify-content: space-between;
    margin-bottom: 28px;
  }

  .Footer_nav_heading {
    margin-bottom: 10px;
  }

  .Footer_bottom::before {
    left: 0;
    width: 100%;
    transform: none;
  }
}

@media (max-width: 767px) {
  site-footer {
    min-height: 600px;
  }

  .Footer_content {
    flex-direction: column;
    padding: 40px 20px 22px;
    text-align: center;
  }

  .Footer_left {
    order: 1;
    max-width: 100%;
    width: 100%;
    padding-right: 0;
    padding-top: 0;
    margin-bottom: 28px;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .Footer_right {
    order: 3;
    max-width: 100%;
    width: 100%;
    padding-left: 0;
    padding-top: 0;
  }

  .Footer_nav_columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 44px;
    row-gap: 24px;
    justify-content: stretch;
    text-align: left;
  }

  .Footer_nav_heading {
    margin-bottom: 14px;
  }

  .Footer_nav_social {
    grid-column: 1 / -1;
  }

  .Footer_description {
    max-width: 100%;
    width: 100%;
    text-align: left;
  }

  .Footer_logo {
    height: 45px;
    align-self: flex-start;
    margin-left: 0;
    margin-right: 0;
  }

  .Footer_social_icons {
    justify-content: center;
  }

  .Footer_bottom {
    order: 4;
    text-align: center;
    padding-top: 14px;
    margin-top: 0;
  }
}

@media (max-width: 480px) {
  site-footer {
    min-height: 700px;
  }

  .Footer_content {
    padding: 30px 15px 16px;
  }

  .Footer_logo {
    height: 40px;
  }

  .Footer_copyright {
    padding-top: 4px;
    font-size: 12px;
  }

  .Footer_social_icons {
    gap: 12px;
  }

  .Footer_social_icons a {
    width: 42px;
    height: 42px;
  }

  .Footer_social_icon {
    width: 20px;
    height: 20px;
  }

  .Footer_nav_columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 24px;
    row-gap: 24px;
  }
}

@media (max-width: 400px) {
  .Footer_social_icons {
    gap: 10px;
  }

  .Footer_social_icons a {
    width: 40px;
    height: 40px;
  }

  .Footer_social_icon {
    width: 19px;
    height: 19px;
  }
}

@media (max-width: 360px) {
  .Footer_social_icons {
    gap: 8px;
  }

  .Footer_social_icons a {
    width: 38px;
    height: 38px;
  }

  .Footer_social_icon {
    width: 18px;
    height: 18px;
  }

}

@media (max-width: 320px) {
  site-footer {
    min-height: 640px;
  }

  .Footer_content {
    padding: 25px 10px 12px;
  }

  .Footer_logo {
    height: 35px;
    margin-bottom: 20px;
  }

  .Footer_description {
    font-size: 13px;
    line-height: 1.6;
    margin-bottom: 20px;
    text-align: left;
  }

  .Footer_nav_list li {
    line-height: 1.6;
  }

  .Footer_social_icons {
    gap: 6px;
  }

  .Footer_social_icons a {
    width: 36px;
    height: 36px;
  }

  .Footer_social_icon {
    width: 17px;
    height: 17px;
  }

  .Footer_copyright {
    font-size: 11px;
    padding-top: 4px;
  }

  .Footer_left {
    margin-bottom: 25px;
  }
}
