/* 文字超出一行省略 */
.oneLineText {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* 文字超出两行省略 */
.twoLineText {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
}
.backToTop {
  position: fixed;
  bottom: 5.3125vw;
  right: 5.3125vw;
  width: 2.5vw;
  height: 2.5vw;
  cursor: pointer;
  display: none;
  z-index: 1000;
}
.clear-bottom {
  margin-bottom: 0 !important;
}

.tab-top {
  position: absolute;
  top: 1.25vw;
  left: 0;
  width: 100%;
  box-sizing: border-box;
  padding: 0 8.33333vw 0 8.33333vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
  z-index: 10;
}
.tab-top-other {
  height: 5.83333vw;
  width: 100%;
  box-sizing: border-box;
  padding: 0 8.33333vw 0 8.33333vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
  z-index: 10;
}
.logo {
  width: 3.33333vw;
  height: 3.33333vw;
}
.tab {
  display: -ms-flexbox; /* IE10 */
  display: flex;
  -ms-flex-direction: row; /* IE10 */
  flex-direction: row;
  -ms-align-items: center; /* IE10 */
  align-items: center;
  padding: 0.20833vw;
  background-color: #fff;
  font-family: Roboto, Roboto;
  font-weight: 500;
  font-size: 0.9375vw;
  border-radius: 0.41666vw;
}
/* 仅 IE10 */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .tab a {
    display: block;
  }
}
/* Tab-item */
.tab-item {
  -ms-flex: 0 0 auto; /* IE10 */
  flex: 0 0 auto;
  position: relative;
  padding: 0.46875vw 1.04166vw;
  color: rgba(29, 29, 29, 1);
  cursor: pointer;
  border-radius: 0.3125vw;
  margin-right: 0.52083vw;
}

.tab-item:last-child {
  margin-right: 0;
}
.tab-item:not(.active):hover {
  color: #8d222e;
}

.tab-item.dimmed:not(.active) {
  color: rgba(29, 29, 29, 0.3);
}

.tab-item.active {
  background: #8d222e;
  color: #ffffff;
}

.tab-item a {
  color: inherit;
  text-decoration: none;
}
.tab-item a:visited {
  color: inherit;
}

.tab-item:last-child {
  margin-right: 0;
}

.dropdown-menu {
  position: absolute;
  flex: 0 0 auto;
  top: 100%;
  left: -1.92708vw;
  width: 9.73958vw;
  height: 10.20833vw;
  background: #ffffff;
  box-shadow: 0.10416vw 0.10416vw 0.41666vw 0 rgba(0, 0, 0, 0.12);
  border-radius: 0.20833vw;
  opacity: 0;
  visibility: hidden;
  transform: translateY(0);
  transition: all 0.5s ease;
  z-index: 100;
  display: flex;
  flex-direction: column;
}

.dropdown-menu a {
  color: black;
  text-decoration: none;
}

.dropdown:hover .dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0.41666vw);
}
.products-title {
  flex: 1;
  display: flex;
  align-items: center;
  padding-left: 0.625vw;
  font-family: Roboto, Roboto;
  font-weight: bold;
  font-size: 1.25vw;
  color: #1d1d1d;
}
.dropdown-item {
  flex: 1;
  display: flex;
  align-items: center;
  padding-left: 0.625vw;
  font-family: Roboto, Roboto;
  font-weight: 500;
  font-size: 0.9375vw;
  color: #1d1d1d;
}
.dropdown-item:hover {
  color: #8d222e !important;
  background: rgba(141, 34, 46, 0.1);
}
.switch-wrapper {
  width: 3.125vw;
  height: 1.66666vw;
  border-radius: 1.35416vw;
  background: #fff;
  display: flex;
  align-items: center;
  position: relative;
  cursor: pointer;
  padding: 0.10416vw;
  box-sizing: border-box;
}
.switch-thumb {
  position: absolute;
  top: 0.10416vw;
  left: 0.10416vw;
  width: 1.45833vw;
  height: 1.45833vw;
  background-color: #1f2c3b;
  border-radius: 50%;
  transition: left 0.3s ease;
  z-index: 1;
}

.switch-labels {
  width: 100%;
  display: flex;
  justify-content: space-between;
  z-index: 2;
  position: relative;
  font-family: Roboto, Roboto;
  font-weight: 400;
  font-size: 0.625vw;
  color: #1d1d1d;
  user-select: none;
}

.switch-label {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
}

.switch-wrapper.active .switch-thumb {
  left: 1.5625vw;
}

.switch-wrapper .switch-label.active {
  color: white;
}

.header-box {
  position: relative;
  width: 100%;
  height: 18.80208vw;
  background: #eae9e6;
}
.seat {
  width: 100%;
  height: 8.38541vw;
}
.header-title {
  text-align: center;
  font-family: Roboto, Roboto;
  font-weight: 300;
  font-size: 1.66666vw;
  color: #1d1d1d;
}
.header-text {
  margin-top: 0.83333vw;
  text-align: center;
  font-family: Roboto, Roboto;
  font-weight: 300;
  font-size: 2.91666vw;
  color: #1d1d1d;
  text-transform: uppercase;
}
.from-box {
  width: 100%;
  height: 33.33333vw;
  box-sizing: border-box;
  padding: 4.16666vw 8.33333vw;
  display: flex;
  justify-content: space-between;
  background-image: url("../img/from.png");
  background-size: 100% 100%;
}
.from-left {
  padding-top: 4.63541vw;
}
.from-left-title {
  font-family: Roboto, Roboto;
  font-weight: 500;
  font-size: 1.66666vw;
  color: #ffffff;
  margin-bottom: 0.83333vw;
  height: 1.66666vw;
}
.from-left-text {
  font-family: Roboto, Roboto;
  font-weight: 400;
  font-size: 1.25vw;
  color: #ffffff;
  height: 1.45833vw;
  margin-bottom: 2.08333vw;
}
.from-right {
  width: 25vw;
  height: 25vw;
  box-sizing: border-box;
  padding: 2.08333vw 2.08333vw 2.65625vw 2.08333vw;
  background: #ffffff;
}
.from-right-title {
  height: 2.08333vw;
  line-height: 2.08333vw;
  font-family: Roboto, Roboto;
  font-weight: 500;
  font-size: 1.04166vw;
  color: #1d1d1d;
  margin-bottom: 0.41666vw;
}
.from-right-text {
  width: 16.71875vw;
  font-family: Roboto, Roboto;
  font-weight: 400;
  font-size: 0.83333vw;
  color: #1d1d1d;
  margin-bottom: 1.04166vw;
}
.from-right-input {
  width: 20.83333vw;
  height: 2.08333vw;
  box-sizing: border-box;
  padding-left: 0.83333vw;
  border-radius: 0.20833vw;
  border: 0.05208vw solid #d8d8d8;
  margin-bottom: 0.78125vw;
  font-family: Roboto, Roboto;
  font-weight: 300;
  font-size: 0.72916vw;
  color: #1d1d1d;
}
.from-right-input::placeholder {
  font-family: Roboto, Roboto;
  font-weight: 300;
  font-size: 0.72916vw;
  color: #b8b8b8;
}

.sub-but {
  margin-top: 0.78125vw;
  width: 6.25vw;
  height: 2.5vw;
  border-radius: 0.20833vw;
  background: #8d222e;
  text-align: center;
  line-height: 2.5vw;
  font-family: Roboto, Roboto;
  font-weight: 400;
  font-size: 0.83333vw;
  color: #ffffff;
  cursor: pointer;
}
.sub-but:hover {
  background: #6d0a15;
}
.from-left-but {
  display: flex;
  width: 36.14583vw;
  justify-content: space-between;
}
.from-left-but-item {
  display: flex;
  flex-direction: column;
}
.from-left-but-item-top-num {
  font-family: Roboto, Roboto;
  font-weight: 500;
  font-size: 1.875vw;
  color: #ffffff;
}
.from-left-but-item-top-unit {
  font-family: Roboto, Roboto;
  font-weight: 400;
  font-size: 0.83333vw;
  color: #ffffff;
  margin-right: 0.78125vw;
}
.from-left-but-item-top-icon {
  width: 1.875vw;
  height: 1.875vw;
}
.from-left-but-item-top {
  display: flex;
  align-items: center;
}
.from-left-but-item-bot {
  font-family: Roboto, Roboto;
  font-weight: 400;
  font-size: 0.83333vw;
  color: #ffffff;
  height: 2.08333vw;
  line-height: 2.08333vw;
}
.from-left-but-more {
  margin-top: 2.5vw;
  width: 7.34375vw;
  height: 2.65625vw;
  border-radius: 0.20833vw;
  background: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.from-left-but-more:hover {
  background: #d8d8d8;
}
.from-left-but-more-title {
  font-family: Roboto, Roboto;
  font-weight: 400;
  font-size: 0.83333vw;
  color: #8d222e;
  margin-right: 0.46875vw;
}
.from-left-but-more-img {
  width: 1.25vw;
  height: 1.25vw;
}
.video-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  display: none; /* 初始隐藏 */
  align-items: center;
  justify-content: center;
  z-index: 999;
}
.video-content {
  position: relative;
  width: 56.25vw;
  height: 31.66666vw;
}
iframe {
  width: 100%;
  height: 100%;
}
body.modal-open {
  overflow: hidden;
}

.close-btn {
  position: absolute;
  top: 0;
  right: -2.5vw;
  width: 1.66666vw;
  height: 1.66666vw;
}
.toast {
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background-color: rgba(0, 0, 0, 0.8);
  color: #fff;
  padding: 0.52083vw 1.04166vw;
  border-radius: 1.04166vw;
  font-size: 0.72916vw;
  z-index: 9999;
  display: none;
}
