/* ========== 导航样式 ========== */
.container {
	width: 100%;
}

/* ========== 等比例缩放（跟随首页） ========== */

header.top {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 99999;
	background: #fff;
	border-bottom: 1px solid #eee;
    width: 1920px;
    transform: scale(var(--scale-ratio, 1));
    transform-origin: top left;
    transition: all 0.3s ease;
}

.nav {
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-width: 100%;
	margin: 0;
	padding: 0 1.67rem;
	position: relative;
	z-index: 99999;
}

.brand {
	display: flex;
	align-items: center;
	gap: 0.83rem;
}

.brand img { height: 2.5rem; }

.menu {
	margin-left: auto;
	display: flex;
	list-style: none;
	gap: 30px;
	margin: 0;
	padding: 0;
}

.menu a { text-decoration: none; color: #333; font-size: 1.33rem; font-weight: 600; transition: color 0.3s; }

.menu a:hover,
.menu a.active {
	color: #E3C78D;
}

.hamburger {
	display: none;
	margin-left: auto;
	width: 3.17rem;
	height: 2.83rem;
	border: none;
	background: transparent;
	padding: 0;
	cursor: pointer;
}

.hamburger span {
	display: block;
	height: 0.25rem;
	background: #333;
	border-radius: 0.17rem;
	margin: 0.5rem 0;
	transition: transform 0.3s ease, opacity 0.3s ease;
}

/* ========== 咨询区域样式 ========== */
.consult {
	background-color: #e3c78d;
	width: 100%;
	padding: 66px 0;
}

.consult .container {
	width: 100%;
	max-width: 1920px;
	margin: 0 auto;
	padding: 0 100px 0 110px;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.consult-form {
	display: flex !important;
	align-items: center !important;
	gap: 30px !important;
	flex-wrap: nowrap !important;
	max-width: 100% ;
	justify-content: center !important;
	flex-direction: row !important;
	width: 90%;
	margin: 0 auto;
}

.form-group {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	flex-direction: row !important;
}

.form-group label {
	color: white;
	font-size: 28px;
	font-weight: 600;
	white-space: nowrap;
}

.consult input {
	max-width: 350px;
	height: 60px;
	padding: 0 20px;
	border: 2px solid white;
	border-radius: 8px;
	font-size: 28px !important;
	background-color: transparent;
	color: white;
}

.consult input::placeholder {
	color: #fff;
	font-weight: 600;
}

.consult-btn {
	width: 178px !important;
	height: 60px !important;
	background-color: white !important;
	border: none !important;
	color: #e3c78d !important;
	border-radius: 8px !important;
	cursor: pointer !important;
	font-size: 28px !important;
	font-weight: 600 !important;
	align-self: center !important;
	margin-top: 0 !important;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

/* 调试样式 - 确保水平排列 */
.consult-form>* {
	/* display: inline-block !important;
	vertical-align: middle !important; */
}

/* ========== 页脚样式 - 完全重新设计 ========== */
footer {
	background-color: #fff;
	border-top: 1px solid #eee;
	width: 100%;
}

/* Sticky footer: keep footer at bottom without extra whitespace */
html, body { 
	height: 100%; 
	margin: 0;
	padding: 0;
}

body { 
	min-height: 100vh; 
	display: flex; 
	flex-direction: column; 
}

.fixed_footer {
	margin-top: auto;
	width: 100%;
	background-color: #fff;
}

.footer-container {
	max-width: 1920px;
	margin: 0 auto;
	padding: 40px 95px 0px 95px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 60px;
	box-sizing: border-box;
}

/* 页脚左侧 - Logo和描述 */
.footer-left {
	flex: 0 0 auto;
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	max-width: 350px;
	padding-right: 30%;
	
}
.footer-vertical-divider{
	width: 1px;
	height: 150px;
	background: #e0e0e0;
	margin-left: 60%;
	z-index: 100;
	position: relative;
	min-width: 1px;
	padding-left: 1px;
}

.footer-logo {
	width: 250px;
	height: 150px;
	margin-right: 10vw;
	object-fit: contain;
}

.footer-left p {
	margin: 0;
	color: #353333;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* 页脚中间 - 导航链接 */
.footer-middle {
	flex: 1;
display: flex;
justify-content: space-between;
/* gap: 30px; */
max-width: 500px;
}

.footer-middle dl {
	flex: 1;
	margin: 0;
	min-width: 160px;
}

.footer-middle dt {
	margin-bottom: 20px;
	font-size: 18px;
	color: #353333;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.footer-middle dd {
	margin: 0 0 15px 0;
	color: #353333;
	font-size: 18px;
	cursor: pointer;
	transition: color 0.3s ease;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.footer-middle dd:hover {
	color: #e3c78d;
}

/* 服务热线特殊样式 */
.footer-middle .number {
	text-align: center;
}

.footer-middle .number dt {
	margin-bottom: 15px;
	color: #333;
	font-weight: 600;
	font-size: 22px;
}

.footer-middle .number dd {
	margin-bottom: 15px;
	color: #333;
	font-weight: 600;
	font-size: 20px;
}

.zixun-button {
	background-color: #e3c78d !important;
	color: white !important;
	border: none !important;
	width: 120px ;
	height: 45px ;
	border-radius: 6px !important;
	font-size: 18px ;
	font-weight: 600 !important;
	cursor: pointer !important;
	transition: background-color 0.3s ease !important;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.zixun-button:hover {
	background-color: #d4b87a !important;
}

.footer-right{
		display: flex
}
/* 页脚右侧 - 二维码 */
.footer-right {
	flex: 0 0 auto;
	display: flex;
	gap: 60px;
	align-items: flex-start;
}

.footer-right > div {
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.footer-right .qrcode {
	width: 120px;
	height: 120px;
	border-radius: 8px;
	object-fit: cover;
}

.footer-right p {
	color: #333;
	margin-top: 15px;
	margin-bottom: 0;
	font-size: 18px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* 分割线 */
.footer-divider {
	width: 100%;
	height: 1px;
	background-color: #e0e0e0;
	margin: 10px 0 20px 0;
}

/* 版权信息 */
.copyright {
	text-align: center;
	padding: 20px 0;
	background-color: #fff;
	color: #666;
	font-size: 16px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.copyright p {
	margin: 5px 0;
	line-height: 1.5;
}

.contact-section {
	width: 100%;
	position: relative;
	background-color: white;
	display: flex;
	justify-content: center;
	padding: 60px 20px;
}

.contact-slogan {
	max-height: 96px;
	display: block;
	object-fit: contain;
}

.center-pagination {
    display: flex;
    align-items: center;
    justify-content: right;
    gap: 6px;
    padding: 40px 0 40px 0;
    font-size: 32px;
    background: transparent;
    user-select: none;
}

.center-pagination .arrow {
    width: 29px;
    object-fit: contain;
    vertical-align: middle;
}

.center-pagination .arrow.right {
    filter: invert(18%) sepia(98%) saturate(7492%) hue-rotate(-7deg) brightness(97%) contrast(119%);
}

.center-pagination .page {
    color: rgba(18, 18, 18, 1);
    text-decoration: none;
    padding: 0 8px;
    font-size: 16px;
    position: relative;
    transition: color 0.2s;
    line-height: 21px;
}

.center-pagination .page.active {
    color:#CC9522;
}

.center-pagination .page.active::after {
    content: '';
    display: block;
    margin: 0 auto;
    margin-top: 2px;
    width: 9px;
    height: 1px;
    background: #CC9522;
    border-radius: 2px;
}

.center-pagination .page:hover:not(.active) {
    color: #CC9522;
}

/* ===== Submenu (shared across pages) ===== */
.menu{ position: relative; }
.menu .menu-item{ position: relative; }
.menu .menu-item > a{ display: inline-block; padding: 12px 10px; }
.menu .submenu{ display:none; position:absolute; top:calc(100% + 1px); left:0; background:#fff;  border-top:none; border-radius:0 0 8px 8px; box-shadow:none; min-width:120px; padding:6px 0; margin:0; z-index:1000; overflow:hidden; }
.menu .submenu li{ list-style:none; }
.menu .submenu a{ display:block; padding:8px 14px; color:#121212; white-space:nowrap; }
.menu .submenu a:hover{ background:#f5f5f5; color:#cc9522; }
.menu .menu-item:hover > .submenu{ display:block; }
/* Caret arrow shows only when submenu has items */
.menu .menu-item.has-sub:has(> .submenu li) > a::after{ content:""; display:inline-block; width:6px; height:6px; border-right:2px solid #999; border-bottom:2px solid #999; transform: rotate(45deg); margin-left:8px; transition: transform 0.2s ease, border-color 0.2s ease; vertical-align: middle; }
.menu .menu-item.has-sub:not(:has(> .submenu li)) > a::after{ content:none; border:0; width:0; height:0; margin:0; }
.menu .menu-item:has(> .submenu li) > a:hover::after,
.menu .menu-item:has(> .submenu li) > a:focus-visible::after,
.menu .menu-item:has(> .submenu li) > a.active::after,
.menu .menu-item.open:has(> .submenu li) > a::after{ border-right-color:#cc9522; border-bottom-color:#cc9522; }

/* ========== 响应式设计 ========== */

/* 平板设备 */
@media (max-width: 1024px) {
	.menu {
		position: absolute;
		right: 1rem;
		top: 80px;
		background: #fff;
		border: 1px solid #eee;
		border-radius: 1rem;
		box-shadow: 0 0.625rem 1.5rem rgba(0, 0, 0, .06);
		display: none;
		flex-direction: column;
		padding: 0.83rem;
		width: 18.33rem;
	}

	.nav.open .menu {
		display: flex;
	}

	.hamburger {
		display: block;
	}

	.consult-form {
		flex-direction: column;
		gap: 1rem;
		padding: 0 ;
		max-width:90% ;
	}

	.form-group {
		flex-direction: column;
		align-items: stretch;
		width: 100%;
	}

	.form-group input {
		width: 100%;
		max-width: 400px;
	}

	.footer-container {
		flex-direction: column;
		padding: 40px 20px;
		gap: 40px;
		text-align: center;
	}

	.footer-left {
		align-items: center;
		max-width: 100%;
	}

	.footer-middle {
		flex-direction: column;
		gap: 30px;
		max-width: 100%;
	}

	.footer-middle dl {
		text-align: center;
	}

	.footer-right {
		justify-content: center;
		gap: 40px;
	}

	.center-pagination .page{
		font-size: 14px;
	}
}

/* 手机设备 */
@media (max-width: 768px) {
	.zixun-button {
	width: 70px ;
	height: 35px ;
	font-size: 12px ;
}
	.footer-container {
		padding: 30px 15px;
		gap: 0px;
	}

	

	.footer-middle {
		gap: 20px;
	}

	
	.footer-right .qrcode {
		width: 100px;
		height: 100px;
	}

	.consult {
		padding: 40px 0;
	}

	.consult .container {
		padding: 0 15px;
	}

	.form-group label {
		font-size: 20px;
	}

	.consult input {
		font-size: 18px !important;
		height: 50px;
	}

	.consult-btn {
		font-size: 20px !important;
		height: 50px !important;
	}

}

/* 大屏幕适配 */
@media (min-width: 1920px) and (max-width: 2560px) {
	header.top {
		width: 100%;
	}
}

@media (max-width: 1920px) {
	header.top {
		width: 1920px;
	}
}

/* ===== Mobile: hamburger + second-level menus ===== */


@media (max-width:1440px) {
	.contact-slogan{
		height: 68px;
	}
	.form-group label{
		font-size: 22px;
	}
	.consult input{
		font-size: 22px!important;
	}
	.consult-btn{
		font-size: 22px!important;
	}
	.footer-vertical-divider{
	width: 1px;
	height: 150px;
	background: #e0e0e0;
	margin-left: 60%;
	z-index: 1111111;
	position: relative;
	min-width: 1px;
	padding-left: 1px;
}

.footer-logo {
	width: 250px;
	height: 150px;
	margin-right: 6vw;
	object-fit: contain;
}
}
@media (max-width: 1024px){
  .menu{ position: static; display:none; flex-direction:column; background:#fff; gap:0; }
  .menu.is-open{ display:flex; }
  .menu .menu-item{ width:100%; }
  .menu .menu-item > a{ padding:14px 16px; width:100%; border-bottom:1px solid #eee; }
  .menu .submenu{ position: static; display:block; border:none; border-radius:0; box-shadow:none; padding:6px 0; background:#fafafa; max-height:0; overflow:hidden; opacity:0; transform: translateY(-2px); transition: max-height 0.25s ease, opacity 0.2s ease, transform 0.2s ease; }
  .menu .menu-item.open > .submenu{ max-height:600px; opacity:1; transform: translateY(0); }
  .menu .submenu a{ padding:10px 20px; }
  .contact-slogan{
		height: 48px;
	}
	.form-group label{
		font-size: 18px;
	}
	.consult input{
		font-size: 18px!important;
		height: 40px;
		padding: 0 10px;
	}
	.consult-btn{
		font-size: 14px!important;
		min-width: 68px !important;
height: 40px !important;
	}
	.consult-form{
		gap: 5px!important;
	}
	.form-group{
		gap:0!important
	}
	.footer-container{
		flex-direction: row;
	}
	.footer-middle dd{
		font-size: 14px;
	}
	.footer-middle dt{
		font-size: 14px;
	}
	footer{
		position: relative;
	}
	.footer-right{
		position: absolute;
		bottom: 20%;
		z-index: 1000;
		width: 100%;
	}
	.footer-right div{
		display: inline-block;
	}
	.footer-middle{
		flex-direction:row;
	}
	.footer-middle .number dt{
		font-size: 14px;
	}
	.footer-middle .number  dd{
		font-size: 14px;
	}
	.footer-right .qrcode{
		width: 80px;
height: 80px;
border-radius: 8px;
object-fit: cover;
	}
	.footer-right{
		display: none;
	}
		.footer-vertical-divider{
	width: 1px;
	height: 150px;
	background: #e0e0e0;
	z-index: 1111111;
	position: relative;
	min-width: 1px;
	padding-left: 1px;
	margin: 0;
}
.footer-left{
	padding-right: 0;
}

.footer-logo {
	width: 150px;
	height: 150px;
	margin-right: 6vw;
	object-fit: contain;
}
.footer-middle dl{
	min-width: initial;
}
}
@media (max-width: 768px){
	.footer-container{
		position: relative
	}
	.contact-section{
		padding: 30px 20px ;
	}
	.consult{
		display: none;
	}
	.contact-slogan{
		height: 24px;
	}
	.form-group label{
		font-size: 14px;
	}
	.consult input{
		font-size: 14px!important;
		height: 30px;
		padding: 0 10px;
	}
	.consult-btn{
		font-size: 12px!important;
		min-width: 68px !important;
height: 30px !important;
	}
	.footer-middle dd{
		font-size: 14px;
	}
	.footer-middle dt{
		font-size: 14px;
	}
	.footer-right {
		gap: 30px;
		padding-left: 9rem;
		text-align: center;
		gap: 30px !important;
		justify-content: center !important;
		margin: 0 !important;
		align-items: flex-start;
		flex: 0 0 auto;
		position: absolute;
		bottom: 0;
	}

	.footer-right div{
		display: inline-block;
	}
	.footer-middle{
		flex-direction:row;
	}
	.footer-middle {
		margin: 0 !important;
		display: grid !important;
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 20px !important;
		width: 100% !important;
		flex-direction: row;
	}
	.footer-middle .number dt{
		font-size: 12px;
		margin-bottom:0 ;
	}
	.footer-middle .number  dd{
		font-size: 12px;
		margin-bottom:0 ;
	}
	.footer-right{
		display: block!important;
	}
	.footer-middle dl{
		display: none;
	}
	.footer-middle .number{
		display: block;
		min-width:120px ;
	}
	.zixun-button{
		position: absolute;
		right: 1rem;
		top: 30px;
	}
}
/* body{ padding-top: calc(80px * var(--scale-ratio, 1)); }
.banner,
.banner .banner_img,
.banner .banner-swiper,
.banner .banner-swiper .swiper-slide{
  height: 525px !important;
  min-height: 525px !important;
  width: 100% !important;
} */
 /* ========== 导航样式 - 修复版本 ========== */
.container {
	width: 100%;
}

/* ========== 等比例缩放（跟随首页）- 修复空白间距问题 ========== */

header.top {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 99999;
	background: #fff;
	border-bottom: 1px solid #eee;
    width: 1920px;
    transform: scale(var(--scale-ratio, 1));
    transform-origin: top left;
    transition: all 0.3s ease;
}

/* 修复：动态调整页面内容上边距，解决空白间距问题 */
body {
    padding-top: var(--nav-height, 80px);
    transition: padding-top 0.3s ease;
}

.nav {
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-width: 100%;
	margin: 0;
	padding: 0 1.67rem;
	position: relative;
	z-index: 99999;
}

.brand {
	display: flex;
	align-items: center;
	gap: 0.83rem;
}

.brand img { height: 2.5rem; }

.menu {
	margin-left: auto;
	display: flex;
	list-style: none;
	gap: 30px;
	margin: 0;
	padding: 0;
}

.menu a { text-decoration: none; color: #333; font-size: 1.33rem; font-weight: 600; transition: color 0.3s; }

.menu a:hover,
.menu a.active {
	color: #E3C78D;
}

.hamburger {
	display: none;
	margin-left: auto;
	width: 2.17rem;
	height: 2.83rem;
	border: none;
	background: transparent;
	padding: 0;
	cursor: pointer;
}

.hamburger span {
	display: block;
	height: 0.25rem;
	background: #333;
	border-radius: 0.17rem;
	margin: 0.5rem 0;
	transition: transform 0.3s ease, opacity 0.3s ease;
}

/* ========== 大屏幕适配 - 修复版本 ========== */

/* 1920px以上取消缩放，使用固定布局 */
@media (min-width: 1920px) and (max-width: 2560px) {
	header.top {
		width: 100%;
		transform: none;
	}
	
	body {
		padding-top: 80px;
	}
}

/* 2560px以上居中显示，两侧留白 */
@media (min-width: 2560px) {
	header.top {
		width: 2560px;
		margin: 0 auto;
		left: 50%;
		transform: translateX(-50%);
	}
	
	body {
		padding-top: 80px;
	}
}

/* ========== 响应式设计 - 保持原有功能 ========== */

/* 平板设备 */
@media (max-width: 1024px) {
	/* 取消缩放，使用固定布局 */
	header.top {
		width: 100%;
		transform: none;
	}
	
	body {
		padding-top: 80px;
	}
	
	.menu {
		position: absolute;
		right: 1rem;
		top: 80px;
		background: #fff;
		border: 1px solid #eee;
		border-radius: 1rem;
		box-shadow: 0 0.625rem 1.5rem rgba(0, 0, 0, .06);
		display: none;
		flex-direction: column;
		padding: 0.83rem;
		width: 18.33rem;
		gap: 0px!important;
	}

	.nav.open .menu {
		display: flex;
	}

	.hamburger {
		display: block;
	}
}

/* 手机设备 */
@media (max-width: 768px) {
	header.top {
		width: 100%;
		transform: none;
	}
	
	body {
		padding-top: 80px;
	}
}

/* ========== 兼容性处理 ========== */

/* 当CSS变量不支持时的回退方案 */
@supports not (padding-top: var(--nav-height)) {
	body {
		padding-top: 80px;
	}
}

/* 当transform不支持时的回退方案 */
@supports not (transform: scale(1)) {
	header.top {
		width: 100%;
	}
}

@media (max-width:385px) {
	.footer-logo {
		width: 120px!important;
		height: 120px!important;
	}
}