/* 
/* 显示类 */
.custom-block {
  display: block !important;
}
.custom-inline {
  display: inline !important;
}
.custom-inline-block {
  display: inline-block !important;
}
.custom-flex {
  display: flex !important;
}
.custom-inline-flex {
  display: inline-flex !important;
}

/* 隐藏类 */
.custom-none {
  display: none !important;
}

/* 响应式显示类 - 小屏幕 (sm) */
@media (min-width: 576px) {
  .custom-sm-block {
    display: block !important;
  }
  .custom-sm-none {
    display: none !important;
  }
  /* 可以添加其他显示类型 */
}

/* 响应式显示类 - 中等屏幕 (md) */
@media (min-width: 768px) {
  .custom-md-block {
    display: block !important;
  }
  .custom-md-none {
    display: none !important;
  }
}

/* 响应式显示类 - 大屏幕 (lg) */
@media (min-width: 992px) {
  .custom-lg-block {
    display: block !important;
  }
  .custom-lg-none {
    display: none !important;
  }
}

/* 响应式显示类 - 超大屏幕 (xl) */
@media (min-width: 1200px) {
  .custom-xl-block {
    display: block !important;
  }
  .custom-xl-none {
    display: none !important;
  }
}

/* 响应式显示类 - 特大屏幕 (xxl) */
@media (min-width: 1400px) {
  .custom-xxl-block {
    display: block !important;
  }
  .custom-xxl-none {
    display: none !important;
  }
}
.banner-logo {
	transition: transform .2s;
	/* 动画效果 */
	/* width: 400px;
	    height: 400px; */
	margin: 0 auto;
}

.banner-logo:hover {
	transform: scale(1.2);
	/* 放大1.5倍 */
	/* 可以添加其他悬停效果 */
	box-shadow: 0 0 0px rgba(0, 0, 0, 0.5);
}

.swiper {
	overflow: hidden !important;
}

/* 确保 body 不出现滚动条 */
body {
	overflow-x: hidden;
}

.hanzi-font {
	font-size: 17px;
	font-weight: 500;
	color: #232938;
}


.dropdown-menu {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 1000;
	display: none;
	float: left;
	min-width: 10rem;
	padding: 0.5rem 0;
	margin: 0.125rem 0 0;
	font-size: 1rem;
	color: #212529;
	text-align: left;
	list-style: none;
	background-color: #fff;
	background-clip: padding-box;
	border: 1px solid rgba(0, 0, 0, 0.15);
	border-radius: 0.25rem;
	box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.175);
}

.dropdown-menu.show {
	display: block;
}

.dropdown-item {
	display: block;
	width: 100%;
	padding: 0.25rem 1rem;
	clear: both;
	font-weight: 400;
	color: #212529;
	text-align: inherit;
	text-decoration: none;
	white-space: nowrap;
	background-color: transparent;
	border: 0;
}

.dropdown-item:hover,
.dropdown-item:focus {
	color: #16181b;
	background-color: #f8f9fa;
}

.dropdown-item.active,
.dropdown-item:active {
	color: #fff;
	text-decoration: none;
	background-color: #0d6efd;
}

/* 自定义样式 */
.mySwiper {
	margin-left: 8%;
}
.swiper-slide {
	transition: transform 0.3s ease;
	overflow: hidden;
	border-radius: 8px;
	will-change: transform;
}

.swiper-slide img {
	width: 300px;
	height: 300px;
	object-fit: cover;
	transition: transform 0.3s ease;
	border-radius: inherit;

}

.swiper-slide:hover img {
	width: 300px;
	height: 300px;
	transform: scale(1.1);

}

.swiper-container {
	padding: 8px 0;
}

.rounded-img {
	border-radius: 8px !important;
}

/* 自定义下拉菜单悬停效果 */
.dropdown-item:hover {
	background-color: #f8f9fa;
	color: #0d6efd;
}

/* 导航链接悬停效果 */
.nav-link:hover {
	color: #0d6efd !important;
}

/* 自定义语言切换器样式 */
.language-switcher .dropdown-menu {
	min-width: 120px;
}

.language-option {
	display: flex;
	align-items: center;
	gap: 8px;
}

.nav-link.active {
	font-weight: 500;
}

.language-switcher {
	position: relative;
	display: inline-block;
}

.language-trigger {
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 5px;
	padding: 0.5rem 1rem;
	color: #495057;
}

.language-trigger:hover {
	color: #0d6efd;
}

.language-trigger::after {
	display: inline-block;
	margin-left: 0.255em;
	vertical-align: 0.255em;
	content: "";
	border-top: 0.3em solid;
	border-right: 0.3em solid transparent;
	border-bottom: 0;
	border-left: 0.3em solid transparent;
}

.language-menu {
	display: none;
	position: absolute;
	right: 0;
	min-width: 120px;
	z-index: 1000;
}

.language-switcher:hover .language-menu {
	display: block;
}

.language-option {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 0.5rem 1rem;
}

.current-language {
	font-weight: 500;
}

.clickable-div:hover {
	cursor: pointer;
}

.image-container {
	position: relative;
	overflow: hidden;
}

.image-container img {
	width: 160;
	height: 170px;
	object-fit: contain;
	transition: transform 0.3s ease-in-out;
	padding-left: 3px;
	border-radius: 8px;
	image-rendering: -webkit-optimize-contrast; /* Chrome/Safari */
	  image-rendering: crisp-edges; /* 标准属性 */
	  image-rendering: pixelated; /* 保持像素感 */
	  image-rendering: -moz-crisp-edges; /* Firefox */
	      image-rendering: -o-crisp-edges; /* Opera */
	
}

.image-container:hover img {
	/* transform: scale(2.0); */
}

.image-container:hover {
	transform: translateY(-5px);
}

.main-section{
	margin-top: -40px;
}
.main-pa {
	margin-top: 30px;
}
.adv-main{
	margin-top: -160px;
}

/* 浮层样式 */
.overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.8);
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 1000;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s, visibility 0.3s;
}

.overlay.active {
	opacity: 1;
	visibility: visible;
}

.overlay-content {
	position: relative;
	max-width: 90%;
	max-height: 90%;
}

.overlay-img {
	max-width: 100%;
	max-height: 80vh;
	border-radius: 8px;
	box-shadow: 0 8px 16px rgba(0, 0, 0, 0.3);
}

.close-btn {
	position: absolute;
	top: -40px;
	right: 0;
	color: white;
	font-size: 30px;
	cursor: pointer;
	background: none;
	border: none;
}

.close-btn:hover {
	background: none;
	border: none;
}

.image-caption {
	color: white;
	text-align: center;
	margin-top: 15px;
	font-size: 1.2rem;
} 

.contact-form-div{
	width: 100%;
}

.flow-chart{
	border-radius: 8px !important;
}

.link-div{
	margin-top: 40px;
}
.link-img{
	border-radius: 8px !important;
	
}

#firstName-error{
	color: #fff
}
#lastName-error{
	color: #fff
}
#email-error{
	color: #fff
}


