/* 产品中心页（ChanPinzhongxin.html）专属样式：从 CSSstyles.css 拆出 */

@import url("footer-helpers.css");

:root {
	--container-max-width: 1200px;
	/* 中心容器最大宽度，控制整体不超宽 */
	--grid-gap: 36px;
	/* 产品项间距，可调 */
	--card-radius: 8px;
	--caption-color: #6b7280;
	--title-color: #0f1724;
	--font-family: "PingFang SC", "Helvetica Neue", Arial, "Microsoft YaHei", sans-serif;
	--page-bg: linear-gradient(180deg, #f3f4f7 0%, #f3f4f5 45%, #f6f7f6 100%);
}

/* 仅影响本页：图片/排版 */
img {
	display: block;
	max-width: 100%;
	height: auto;
}

/* 外层容器：居中并留白 */
.product-gallery-wrap {
	width: 100%;
	padding: 48px 20px;
	display: flex;
	justify-content: center;
}

/* 关键修改：使用 auto-fit + minmax，让列数根据可用宽度自适应 */
.product-gallery {
	width: 100%;
	max-width: var(--container-max-width);
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: var(--grid-gap);
	align-items: start;
}

/* 单个产品卡（居中、文本居中） */
.product-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: 8px 12px;
	background: transparent;
	font-family: var(--font-family);
	color: var(--title-color);
}

/* 图片框：宽度随单元自适应，高度使用 aspect-ratio 保持一致（避免溢出） */
.product-thumb {
	width: 100%;
	border-radius: var(--card-radius);
	background: linear-gradient(180deg, #fafafa, #ffffff);
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	box-shadow: 0 8px 18px rgba(15, 23, 42, 0.06);
	transition: transform 180ms ease, box-shadow 180ms ease;
	/* 使用 aspect-ratio 保持一致的展示高度（现代浏览器支持） */
	aspect-ratio: 320 / 260;
}

.product-thumb img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	/* 保持图片完整显示 */
	display: block;
}

/* 鼠标悬停微动效 */
.product-item:hover .product-thumb {
	transform: translateY(-6px);
	box-shadow: 0 20px 40px rgba(15, 23, 42, 0.10);
}

/* 标题 */
.product-title {
	margin-top: 14px;
	font-size: 14px;
	color: var(--caption-color);
	line-height: 1.4;
}

/* 响应式：在更小屏上减小 gap 与最小列宽 */
@media (max-width: 1100px) {
	:root {
		--grid-gap: 28px;
	}

	.product-gallery {
		grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	}

	.product-thumb {
		aspect-ratio: 320 / 260;
	}
}

@media (max-width: 760px) {
	:root {
		--grid-gap: 20px;
	}

	.product-gallery {
		grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	}

	.product-thumb {
		aspect-ratio: 4 / 3;
	}

	.product-item {
		padding: 6px 8px;
	}
}

@media (max-width: 420px) {
	.product-gallery {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.product-thumb {
		aspect-ratio: 16 / 10;
	}
}







/* =====页眉内容 Header / Nav ===== */
.site-header{
  background:rgba(255,255,255,0.98);
  position:fixed; top:0; left:0; right:0;
  z-index:1000; box-shadow:0 1px 8px rgba(30,40,50,0.06);
}
.header-inner{
  max-width:1180px;
  margin:0 auto;
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 20px; gap:12px;
}
.brand{display:flex;align-items:center;gap:12px}
.brand-link{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:inherit}
.brand-link img{height:38px}
.header-actions{display:flex;align-items:center;gap:12px}

/* Nav list / dropdown */
nav.main-nav{flex:1 1 auto;display:flex;justify-content:center}
.nav-list{list-style:none;margin:0;padding:0;display:flex;gap:28px;align-items:center}
.nav-item{position:relative}
.nav-item > a{display:inline-block;padding:8px 12px;font-size:14px;color:#6b7b87;text-decoration:none}
.nav-item > a:hover{color:#1d84ff}

/* dropdown menu */
.dropdown{
	position:absolute; top:100%; left:0;
  min-width:180px; background:#fff; border-radius:8px;
  box-shadow:0 12px 34px rgba(20,30,40,0.08);
  padding:8px 0; display:none; z-index:70;
}
.nav-item:hover > .dropdown, .nav-item:focus-within > .dropdown{ display:block; }
.dropdown a{display:block;padding:8px 14px;color:#2b3b49;text-decoration:none}

/* Language: redesigned dropdown (copied from Index.css for page-level styling) */
.lang-wrap {
	position: relative;
	display: inline-flex;
	align-items: center;
}

.lang-btn {
	font-size: 13px;
	color: var(--muted);
	padding: 8px 12px;
	border-radius: 20px;
	background: linear-gradient(180deg, #ffffff 0%, #f7f9fc 100%);
	border: 1px solid rgba(16, 30, 40, 0.04);
	box-shadow: 0 6px 18px rgba(29, 132, 255, 0.04);
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	transition: transform .12s ease, box-shadow .12s ease, color .12s ease;
}

.lang-btn:focus { outline: 2px solid rgba(29, 132, 255, 0.12); outline-offset: 2px; }
.lang-btn:hover { transform: translateY(-2px); box-shadow: 0 10px 28px rgba(29, 132, 255, 0.06); color: var(--accent); }

.lang-dropdown { position: absolute; right: 0; top: calc(100% + 10px); min-width: 180px; background: #fff; border-radius: 10px; box-shadow: 0 12px 34px rgba(20, 30, 40, 0.12); padding: 8px; opacity: 0; transform: translateY(-6px); transition: opacity .18s ease, transform .18s ease; pointer-events: none; z-index: 1100; border: 1px solid rgba(16, 30, 40, 0.04); }
.lang-wrap:hover > .lang-dropdown, .lang-wrap:focus-within > .lang-dropdown { opacity: 1; transform: translateY(0); pointer-events: auto; }
.lang-dropdown a { display: flex; align-items: center; gap: 10px; padding: 8px 12px; border-radius: 8px; text-decoration: none; color: var(--text-dark); font-size: 14px; }
.lang-dropdown a + a { margin-top: 6px; }
.lang-dropdown a:hover, .lang-dropdown a:focus { background: linear-gradient(90deg, rgba(29, 132, 255, 0.06), rgba(29, 132, 255, 0.02)); color: var(--accent); outline: none; }
.lang-dropdown a:focus { box-shadow: 0 0 0 3px rgba(29, 132, 255, 0.08); }

/* Force-hide when .lang-closed is applied */
.lang-wrap.lang-closed > .lang-dropdown { opacity: 0 !important; transform: translateY(-6px) !important; pointer-events: none !important; }

/* Keep dropdown hidden after selection until mouse leaves or user re-opens */
.lang-wrap.lang-disabled > .lang-dropdown { opacity: 0 !important; transform: translateY(-6px) !important; pointer-events: none !important; }

/* Mobile nav toggle */
.mobile-nav-toggle{display:none;font-size:18px;background:transparent;border:0;cursor:pointer}
@media (max-width:540px){
  .mobile-nav-toggle{display:block}
  nav.main-nav{display:none}
  .header-inner{justify-content:space-between}
}

/* ===== Hero / Static banner ===== */
.hero{width:100%; background:#fff; padding-bottom:8px}
.carousel-wrap{position:relative; left:50%; right:50%; margin-left:-50vw; margin-right:-50vw; width:100vw; padding:0}
.carousel-wrap[data-static="true"]{height:420px; overflow:hidden; background:#f6f8fb}
.static-hero{width:100%; height:100%; object-fit:cover; display:block}
/* subtle overlay */
.carousel-wrap[data-static="true"]::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg, rgba(7,20,34,0.06) 0%, rgba(7,20,34,0.02) 30%, transparent 60%);
}
@media (max-width:1100px){
  .carousel-wrap[data-static="true"]{height:360px}
}

/* ===== Page-band (breadcrumb / page title strip) ===== */
.page-band{
  background:rgba(255,255,255,0.92);
  border-top:1px solid rgba(16,30,40,0.06);
  border-bottom:1px solid rgba(16,30,40,0.06);
}
.page-band-inner{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:16px;
  padding:14px 20px;
  max-width:1180px;
  margin:0 auto;
}
.page-band-left{font-size:13px;color:#6b7b87}
.page-band-center{font-size:18px;font-weight:700;color:#2b3b49;text-align:center;letter-spacing:0.5px}
.page-band-right{text-align:right}
.page-band-link{color:var(--text-dark);text-decoration:none}
.page-band-link:hover{color:var(--accent)}
.page-band .sep{opacity:0.65;margin:0 6px}

@media (max-width:760px){
  .page-band-inner{grid-template-columns:1fr; justify-items:start; gap:8px}
  .page-band-center{text-align:left}
  .page-band-right{display:none}
}
.site-footer-min{
  border-top:1px solid rgba(255,255,255,0.06);
  background:linear-gradient(180deg,#53585a 0%,#636f74 100%);
  color:#dbeeff;
  padding:28px 0;
  font-size:14px;
  line-height:1.5;
}
.footer-inner-min{
  max-width:var(--container,1180px);
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:12px 20px;
  box-sizing:border-box;
  position:relative;
}
.footer-meta-min{
  color:rgba(255,255,255,0.9);
  font-size:13px;
  line-height:1.5;
  text-align:right;
  min-width:220px;
}
.footer-meta-min .meta-copyright{ color:#ffffff; font-weight:600; }
.footer-meta-min .meta-icp{ font-size:12px; opacity:0.85; margin-top:4px; color:rgba(255,255,255,0.8); }

.footer-contact-min{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:6px;
  font-size:13px;
  color:rgba(255,255,255,0.92);
  min-width:240px;
}
.footer-contact-min .fc-line{white-space:nowrap}
.footer-contact-min a{color:inherit; text-decoration:underline}
.footer-contact-min a:hover{opacity:0.95}

/* subtle decorative separator */
.footer-inner-min::before{
  content:'';
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  top:-10px;
  width:84%;
  height:1px;
  background:linear-gradient(90deg,rgba(255,255,255,0.06),transparent);
  pointer-events:none;
}

/* Responsive */
@media (max-width:880px){
  .footer-inner-min{flex-direction:column;align-items:center;text-align:center}
  .footer-contact-min{align-items:center}
  .footer-meta-min{min-width:auto;text-align:center}
}