/* ============================================================
   青丘装饰主题主样式表
   风格：现代轻奢·东方质感
   主色：青墨深色 #16202b  点缀：暖金 #c4a062
   背景：米白暖灰 #f7f5f1  文字：深灰 #2b2b2b
   移动端优先，响应式
   ============================================================ */

/* ---------- 设计变量 ---------- */
:root {
	--qq-ink: #16202b;          /* 青墨深色 主色 */
	--qq-ink-2: #1f2d3d;        /* 稍浅深色 */
	--qq-ink-3: #2c3e50;
	--qq-gold: #c4a062;         /* 暖金/铜 点缀 */
	--qq-gold-light: #d8bd8a;
	--qq-gold-dark: #a8854a;
	--qq-cream: #f7f5f1;        /* 米白暖灰背景 */
	--qq-cream-2: #efece5;
	--qq-text: #2b2b2b;         /* 正文深灰 */
	--qq-text-light: #5b6470;
	--qq-white: #ffffff;
	--qq-line: #e6e1d8;         /* 金色调分隔线 */
	--qq-radius: 14px;
	--qq-radius-lg: 20px;
	--qq-shadow: 0 10px 40px rgba(22, 32, 43, 0.08);
	--qq-shadow-hover: 0 18px 50px rgba(22, 32, 43, 0.16);
	--qq-font-serif: "Noto Serif SC", "Source Han Serif SC", "Songti SC", "STSong", serif;
	--qq-font-sans: "Noto Sans SC", "Source Han Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
	--qq-container: 1200px;
	--qq-header-h: 72px;
	--qq-transition: all .3s cubic-bezier(.4, 0, .2, 1);
}

/* ---------- 重置 ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
	margin: 0;
	font-family: var(--qq-font-sans);
	font-size: 16px;
	line-height: 1.8;
	color: var(--qq-text);
	background: var(--qq-cream);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: hidden;
}
img { max-width: 100%; height: auto; display: block; }
a { color: var(--qq-ink); text-decoration: none; transition: var(--qq-transition); }
a:hover { color: var(--qq-gold-dark); }
h1, h2, h3, h4, h5 {
	font-family: var(--qq-font-serif);
	color: var(--qq-ink);
	line-height: 1.35;
	margin: 0 0 .6em;
	font-weight: 700;
}
p { margin: 0 0 1em; }
ul, ol { margin: 0; padding: 0; list-style: none; }
button { font-family: inherit; cursor: pointer; }

.qq-skip-link {
	position: absolute; left: -9999px; top: 0;
	background: var(--qq-gold); color: #fff; padding: 10px 18px;
	z-index: 9999; border-radius: 0 0 8px 0;
}
.qq-skip-link:focus { left: 0; }

.qq-container {
	width: 100%;
	max-width: var(--qq-container);
	margin: 0 auto;
	padding: 0 20px;
}
.qq-container--narrow { max-width: 860px; }

/* ---------- 按钮 ---------- */
.qq-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	padding: 12px 28px;
	border-radius: 999px;
	font-size: 15px; font-weight: 600;
	letter-spacing: .02em;
	border: 1.5px solid transparent;
	transition: var(--qq-transition);
	white-space: nowrap;
	line-height: 1.4;
}
.qq-btn--gold {
	background: linear-gradient(135deg, var(--qq-gold-light), var(--qq-gold) 55%, var(--qq-gold-dark));
	color: #fff;
	box-shadow: 0 8px 22px rgba(196, 160, 98, .35);
}
.qq-btn--gold:hover { color: #fff; transform: translateY(-2px); box-shadow: 0 12px 28px rgba(196, 160, 98, .45); }
.qq-btn--outline { background: transparent; border-color: var(--qq-ink); color: var(--qq-ink); }
.qq-btn--outline:hover { background: var(--qq-ink); color: #fff; }
.qq-btn--outline-light { background: transparent; border-color: rgba(255,255,255,.6); color: #fff; }
.qq-btn--outline-light:hover { background: #fff; color: var(--qq-ink); border-color: #fff; }
.qq-btn--sm { padding: 8px 18px; font-size: 14px; }
.qq-btn--lg { padding: 15px 36px; font-size: 16px; }
.qq-btn--block { display: flex; width: 100%; }

/* ---------- 顶部信息条 ---------- */
.qq-topbar {
	background: var(--qq-ink);
	color: rgba(255,255,255,.78);
	font-size: 13px;
}
.qq-topbar__inner {
	display: flex; justify-content: space-between; align-items: center;
	min-height: 38px; gap: 16px; flex-wrap: wrap;
}
.qq-topbar__item { display: inline-flex; align-items: center; gap: 6px; }
.qq-topbar__item a { color: rgba(255,255,255,.85); }
.qq-topbar__item a:hover { color: var(--qq-gold-light); }
.qq-topbar__sep { margin: 0 6px; opacity: .4; }
.qq-topbar__item--right { margin-left: auto; }

/* ---------- 头部导航 ---------- */
.qq-header {
	position: sticky; top: 0; z-index: 1000;
	background: rgba(255,255,255,.96);
	backdrop-filter: blur(12px);
	border-bottom: 1px solid var(--qq-line);
	transition: var(--qq-transition);
}
.qq-header.is-scrolled { box-shadow: 0 4px 24px rgba(22,32,43,.08); }
.qq-header__inner {
	display: flex; align-items: center; gap: 24px;
	height: var(--qq-header-h);
}
.qq-logo { flex-shrink: 0; }
.qq-logo .custom-logo { max-height: 48px; width: auto; }
.qq-logo__text { display: inline-flex; flex-direction: column; line-height: 1.1; }
.qq-logo__mark {
	font-family: var(--qq-font-serif);
	font-size: 26px; font-weight: 900;
	color: var(--qq-ink);
	letter-spacing: .12em;
	position: relative;
}
.qq-logo__mark::after {
	content: ""; display: inline-block; width: 4px; height: 22px;
	background: var(--qq-gold); margin-left: 8px; vertical-align: -2px;
}
.qq-logo__mark--light { color: #fff; }
.qq-logo__sub { font-size: 10px; letter-spacing: .28em; color: var(--qq-gold-dark); margin-top: 2px; }

.qq-nav { margin-left: auto; }
.qq-nav__list { display: flex; align-items: center; gap: 4px; }
.qq-nav__link {
	display: block; padding: 10px 16px;
	font-size: 15.5px; font-weight: 500;
	color: var(--qq-text);
	border-radius: 8px;
	position: relative;
}
.qq-nav__link:hover, .qq-nav__current-menu-item > .qq-nav__link { color: var(--qq-gold-dark); }
.qq-nav__link::after {
	content: ""; position: absolute; left: 50%; bottom: 4px;
	width: 0; height: 2px; background: var(--qq-gold);
	transition: var(--qq-transition); transform: translateX(-50%);
}
.qq-nav__link:hover::after, .qq-nav__current-menu-item > .qq-nav__link::after { width: 22px; }
.qq-header__cta { flex-shrink: 0; }

/* 移动端菜单按钮 */
.qq-menu-toggle {
	display: none;
	margin-left: auto;
	width: 44px; height: 44px;
	background: none; border: none;
	flex-direction: column; justify-content: center; align-items: center; gap: 5px;
}
.qq-menu-toggle span {
	display: block; width: 24px; height: 2px;
	background: var(--qq-ink); border-radius: 2px;
	transition: var(--qq-transition);
}
.qq-menu-toggle.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.qq-menu-toggle.is-open span:nth-child(2) { opacity: 0; }
.qq-menu-toggle.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* 移动端抽屉 */
.qq-mobile-menu {
	position: fixed; top: 0; right: -320px; z-index: 2001;
	width: 300px; max-width: 85vw; height: 100vh; height: 100dvh;
	background: var(--qq-ink);
	display: flex; flex-direction: column;
	transition: right .35s cubic-bezier(.4,0,.2,1);
	box-shadow: -10px 0 40px rgba(0,0,0,.25);
}
.qq-mobile-menu.is-open { right: 0; }
.qq-mobile-menu__head {
	display: flex; align-items: center; justify-content: space-between;
	padding: 20px 24px; border-bottom: 1px solid rgba(255,255,255,.1);
}
.qq-mobile-menu__head .qq-logo__mark { color: #fff; font-size: 20px; }
.qq-mobile-menu__close {
	background: none; border: none; color: #fff;
	font-size: 30px; line-height: 1; padding: 0 6px;
}
.qq-mobile-nav { flex: 1; overflow-y: auto; padding: 12px 0; }
.qq-mobile-nav__list li a {
	display: block; padding: 14px 28px;
	color: rgba(255,255,255,.88); font-size: 16px;
	border-left: 3px solid transparent;
}
.qq-mobile-nav__list li a:hover { color: var(--qq-gold-light); border-left-color: var(--qq-gold); background: rgba(255,255,255,.04); }
.qq-mobile-menu__foot { padding: 20px 24px; border-top: 1px solid rgba(255,255,255,.1); }
.qq-mobile-overlay {
	position: fixed; inset: 0; z-index: 2000;
	background: rgba(22,32,43,.55);
	opacity: 0; visibility: hidden; transition: var(--qq-transition);
}
.qq-mobile-overlay.is-open { opacity: 1; visibility: visible; }

/* ---------- 首页 Hero ---------- */
.qq-hero {
	position: relative;
	min-height: 88vh; min-height: 88dvh;
	display: flex; align-items: center;
	overflow: hidden;
	background: var(--qq-ink);
	color: #fff;
}
.qq-hero__bg { position: absolute; inset: 0; }
.qq-hero__img { width: 100%; height: 100%; object-fit: cover; }
.qq-hero__placeholder {
	width: 100%; height: 100%;
	background:
		radial-gradient(circle at 78% 22%, rgba(196,160,98,.22), transparent 42%),
		radial-gradient(circle at 20% 80%, rgba(120,150,180,.14), transparent 45%),
		linear-gradient(150deg, #16202b 0%, #1f2d3d 55%, #141d27 100%);
}
.qq-hero__placeholder::before {
	content: ""; position: absolute; inset: 0;
	background-image:
		linear-gradient(rgba(196,160,98,.05) 1px, transparent 1px),
		linear-gradient(90deg, rgba(196,160,98,.05) 1px, transparent 1px);
	background-size: 60px 60px;
}
.qq-hero__overlay {
	position: absolute; inset: 0;
	background: linear-gradient(180deg, rgba(22,32,43,.55) 0%, rgba(22,32,43,.35) 40%, rgba(22,32,43,.78) 100%);
}
.qq-hero__content { position: relative; z-index: 2; padding: 80px 20px; text-align: center; }
.qq-hero__eyebrow {
	color: var(--qq-gold-light);
	letter-spacing: .42em; font-size: 13px;
	margin-bottom: 22px; text-indent: .42em;
}
.qq-hero__title { margin-bottom: 24px; }
.qq-hero__title-cn {
	display: block;
	font-family: var(--qq-font-serif);
	font-size: clamp(30px, 5.4vw, 58px);
	font-weight: 900; color: #fff;
	letter-spacing: .06em;
	margin-bottom: 14px;
}
.qq-hero__slogan {
	display: inline-block;
	font-size: clamp(18px, 2.6vw, 28px);
	color: var(--qq-gold-light);
	font-family: var(--qq-font-serif);
	letter-spacing: .3em; text-indent: .3em;
	padding-bottom: 16px;
	position: relative;
}
.qq-hero__slogan::after {
	content: ""; position: absolute; left: 50%; bottom: 0;
	transform: translateX(-50%);
	width: 60px; height: 2px; background: var(--qq-gold);
}
.qq-hero__desc {
	color: rgba(255,255,255,.82);
	font-size: clamp(14px, 1.8vw, 17px);
	margin: 26px 0 36px;
	line-height: 2;
}
.qq-hero__actions { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }
.qq-hero__stats {
	display: flex; justify-content: center; flex-wrap: wrap;
	gap: clamp(24px, 5vw, 64px);
	margin-top: 64px;
}
.qq-hero__stats li { text-align: center; }
.qq-hero__stats strong {
	display: block;
	font-family: var(--qq-font-serif);
	font-size: clamp(28px, 4vw, 44px);
	font-weight: 900; color: var(--qq-gold-light);
	line-height: 1;
}
.qq-hero__stats span {
	display: block; margin-top: 8px;
	font-size: 14px; color: rgba(255,255,255,.7); letter-spacing: .1em;
}

/* ---------- 通用 Section ---------- */
.qq-section { padding: 84px 0; }
.qq-section--tint { background: var(--qq-cream-2); }
.qq-section__head { text-align: center; max-width: 720px; margin: 0 auto 56px; }
.qq-section__head--row {
	display: flex; align-items: flex-end; justify-content: space-between;
	text-align: left; max-width: none; gap: 20px; flex-wrap: wrap;
}
.qq-section__eyebrow {
	color: var(--qq-gold-dark);
	font-size: 13px; font-weight: 700;
	letter-spacing: .34em; text-indent: .34em;
	margin: 0 0 12px;
}
.qq-section__title {
	font-size: clamp(26px, 3.4vw, 38px);
	margin: 0 0 14px;
	position: relative; display: inline-block;
}
.qq-section__title--left { display: block; }
.qq-section__title::after {
	content: ""; display: block;
	width: 44px; height: 3px;
	background: var(--qq-gold);
	margin: 16px auto 0;
	border-radius: 2px;
}
.qq-section__title--left::after { margin-left: 0; }
.qq-section__head--row .qq-section__title::after { margin-left: 0; }
.qq-section__sub { color: var(--qq-text-light); font-size: 15.5px; margin: 0; }

.qq-link-more {
	color: var(--qq-gold-dark); font-weight: 600; font-size: 15px;
	white-space: nowrap;
}
.qq-link-more:hover { color: var(--qq-ink); }

/* ---------- 卡片网格 ---------- */
.qq-card-grid { display: grid; gap: 28px; }
.qq-card-grid--3 { grid-template-columns: repeat(3, 1fr); }
.qq-card-grid--4 { grid-template-columns: repeat(4, 1fr); }

/* ---------- 服务卡片 ---------- */
.qq-service-card {
	background: var(--qq-white);
	border: 1px solid var(--qq-line);
	border-radius: var(--qq-radius-lg);
	padding: 38px 28px 30px;
	text-align: center;
	transition: var(--qq-transition);
	position: relative;
	overflow: hidden;
}
.qq-service-card::before {
	content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px;
	background: linear-gradient(90deg, var(--qq-gold-light), var(--qq-gold), var(--qq-gold-dark));
	transform: scaleX(0); transform-origin: left;
	transition: transform .4s ease;
}
.qq-service-card:hover { transform: translateY(-8px); box-shadow: var(--qq-shadow-hover); border-color: transparent; }
.qq-service-card:hover::before { transform: scaleX(1); }
.qq-service-card__icon {
	display: inline-flex; align-items: center; justify-content: center;
	width: 68px; height: 68px; border-radius: 50%;
	background: linear-gradient(135deg, rgba(196,160,98,.14), rgba(196,160,98,.05));
	border: 1.5px solid rgba(196,160,98,.4);
	margin-bottom: 20px;
}
.qq-service-card__icon svg { width: 30px; height: 30px; stroke: var(--qq-gold-dark); }
.qq-service-card__name { font-size: 21px; margin-bottom: 10px; }
.qq-service-card__desc { color: var(--qq-text-light); font-size: 14.5px; margin-bottom: 18px; }
.qq-service-card__more {
	color: var(--qq-gold-dark); font-size: 14px; font-weight: 600;
	display: inline-flex; align-items: center; gap: 4px;
}
.qq-service-card:hover .qq-service-card__more { gap: 8px; }

/* 图标 sprite（纯 CSS 内嵌 SVG 背景） */
.qq-icon-home, .qq-icon-tools, .qq-icon-refresh, .qq-icon-castle, .qq-icon-shop, .qq-icon-sofa {
	display: inline-block;
}
.qq-icon-home::before { content: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 24 24' fill='none' stroke='%23a8854a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3Cpolyline points='9 22 9 12 15 12 15 22'/%3E%3C/svg%3E"); }
.qq-icon-tools::before { content: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 24 24' fill='none' stroke='%23a8854a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z'/%3E%3C/svg%3E"); }
.qq-icon-refresh::before { content: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 24 24' fill='none' stroke='%23a8854a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='23 4 23 10 17 10'/%3E%3Cpolyline points='1 20 1 14 7 14'/%3E%3Cpath d='M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15'/%3E%3C/svg%3E"); }
.qq-icon-castle::before { content: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 24 24' fill='none' stroke='%23a8854a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21h18'/%3E%3Cpath d='M5 21V7l7-4 7 4v14'/%3E%3Cpath d='M9 21v-6h6v6'/%3E%3Cpath d='M10 10h.01M14 10h.01'/%3E%3C/svg%3E"); }
.qq-icon-shop::before { content: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 24 24' fill='none' stroke='%23a8854a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9l1-5h16l1 5'/%3E%3Cpath d='M4 9v11h16V9'/%3E%3Cpath d='M9 20v-6h6v6'/%3E%3C/svg%3E"); }
.qq-icon-sofa::before { content: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 24 24' fill='none' stroke='%23a8854a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 11V7a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v4'/%3E%3Cpath d='M2 13a2 2 0 0 1 2 2v2h16v-2a2 2 0 0 1 2-2 2 2 0 0 1 2 2v3a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1v-3a2 2 0 0 1 2-2z'/%3E%3Cline x1='6' y1='18' x2='6' y2='21'/%3E%3Cline x1='18' y1='18' x2='18' y2='21'/%3E%3C/svg%3E"); }

/* ---------- 案例卡片 ---------- */
.qq-case-card {
	background: var(--qq-white);
	border-radius: var(--qq-radius-lg);
	overflow: hidden;
	border: 1px solid var(--qq-line);
	transition: var(--qq-transition);
}
.qq-case-card:hover { transform: translateY(-8px); box-shadow: var(--qq-shadow-hover); }
.qq-case-card__media {
	position: relative; display: block;
	aspect-ratio: 10 / 7;
	overflow: hidden;
}
.qq-case-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }
.qq-case-card:hover .qq-case-card__media img { transform: scale(1.06); }
.qq-case-card__tag {
	position: absolute; top: 14px; left: 14px;
	background: rgba(22,32,43,.82); color: var(--qq-gold-light);
	font-size: 12.5px; padding: 5px 14px; border-radius: 999px;
	backdrop-filter: blur(4px);
}
.qq-case-card__body { padding: 22px 24px 24px; }
.qq-case-card__title { font-size: 18.5px; margin-bottom: 12px; }
.qq-case-card__title a { color: var(--qq-ink); }
.qq-case-card__title a:hover { color: var(--qq-gold-dark); }
.qq-case-card__meta {
	display: flex; flex-wrap: wrap; gap: 8px;
}
.qq-case-card__meta li {
	font-size: 13px; color: var(--qq-text-light);
	background: var(--qq-cream);
	padding: 4px 12px; border-radius: 6px;
	border: 1px solid var(--qq-line);
}

/* ---------- 占位图 ---------- */
.qq-placeholder {
	display: flex; flex-direction: column; align-items: center; justify-content: center;
	width: 100%; height: 100%;
	text-align: center;
	font-size: 14px; line-height: 1.8;
	color: rgba(255,255,255,.72);
	background: linear-gradient(145deg, #2c3e50, #16202b);
}
.qq-placeholder--case { background: linear-gradient(145deg, #31455a, #1a2634); }
.qq-placeholder--news { background: linear-gradient(145deg, #6b5f49, #4a4234); }
.qq-placeholder--about { min-height: 420px; background: linear-gradient(145deg, #2c3e50, #16202b); }
.qq-placeholder--service { min-height: 340px; gap: 12px; font-size: 16px; }
.qq-placeholder--team { background: linear-gradient(145deg, #3a4a5c, #22303f); }
.qq-placeholder--team-lg { min-height: 460px; }
.qq-placeholder--qual {
	height: 200px; border-radius: var(--qq-radius);
	font-size: 14px;
}

/* ---------- 优势卡片 ---------- */
.qq-advantage-grid {
	display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px;
}
.qq-advantage-card {
	background: var(--qq-white);
	border: 1px solid var(--qq-line);
	border-radius: var(--qq-radius-lg);
	padding: 36px 28px;
	position: relative;
	transition: var(--qq-transition);
}
.qq-advantage-card:hover { box-shadow: var(--qq-shadow); transform: translateY(-5px); border-color: rgba(196,160,98,.5); }
.qq-advantage-card__num {
	font-family: var(--qq-font-serif);
	font-size: 44px; font-weight: 900;
	color: transparent;
	-webkit-text-stroke: 1.5px var(--qq-gold);
	line-height: 1; display: block; margin-bottom: 18px;
	opacity: .8;
}
.qq-advantage-card__title { font-size: 19px; margin-bottom: 10px; }
.qq-advantage-card__desc { font-size: 14.5px; color: var(--qq-text-light); margin: 0; }

/* ---------- 文章/新闻卡片 ---------- */
.qq-news-card {
	background: var(--qq-white);
	border-radius: var(--qq-radius-lg);
	overflow: hidden;
	border: 1px solid var(--qq-line);
	transition: var(--qq-transition);
	display: flex; flex-direction: column;
}
.qq-news-card:hover { transform: translateY(-8px); box-shadow: var(--qq-shadow-hover); }
.qq-news-card__media { display: block; aspect-ratio: 16/10; overflow: hidden; }
.qq-news-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }
.qq-news-card:hover .qq-news-card__media img { transform: scale(1.06); }
.qq-news-card__body { padding: 24px; flex: 1; display: flex; flex-direction: column; }
.qq-news-card__date { font-size: 13px; color: var(--qq-gold-dark); font-weight: 600; margin-bottom: 8px; }
.qq-news-card__title { font-size: 18px; margin-bottom: 10px; line-height: 1.5; }
.qq-news-card__title a { color: var(--qq-ink); }
.qq-news-card__title a:hover { color: var(--qq-gold-dark); }
.qq-news-card__excerpt { font-size: 14.5px; color: var(--qq-text-light); margin: 0; flex: 1; }

/* ---------- FAQ ---------- */
.qq-faq-list { display: flex; flex-direction: column; gap: 14px; }
.qq-faq-item {
	background: var(--qq-white);
	border: 1px solid var(--qq-line);
	border-radius: var(--qq-radius);
	overflow: hidden;
	transition: var(--qq-transition);
}
.qq-faq-item[open] { border-color: rgba(196,160,98,.55); box-shadow: var(--qq-shadow); }
.qq-faq-item__q {
	display: flex; align-items: center; gap: 14px;
	padding: 20px 24px;
	cursor: pointer; list-style: none;
	font-size: 16.5px; font-weight: 600; color: var(--qq-ink);
	font-family: var(--qq-font-serif);
}
.qq-faq-item__q::-webkit-details-marker { display: none; }
.qq-faq-item__marker {
	flex-shrink: 0;
	width: 30px; height: 30px; border-radius: 50%;
	background: var(--qq-ink); color: var(--qq-gold-light);
	display: inline-flex; align-items: center; justify-content: center;
	font-size: 15px; font-weight: 700;
	font-family: var(--qq-font-sans);
}
.qq-faq-item__marker--a { background: var(--qq-gold); color: #fff; }
.qq-faq-item__toggle {
	margin-left: auto; flex-shrink: 0;
	width: 12px; height: 12px;
	border-right: 2px solid var(--qq-gold-dark);
	border-bottom: 2px solid var(--qq-gold-dark);
	transform: rotate(45deg);
	transition: transform .3s ease;
}
.qq-faq-item[open] .qq-faq-item__toggle { transform: rotate(-135deg); }
.qq-faq-item__a {
	display: flex; gap: 14px;
	padding: 0 24px 22px 24px;
	color: var(--qq-text-light); font-size: 15.5px;
}
.qq-faq-item__a p { margin: 4px 0 0; flex: 1; }

/* ---------- CTA 横幅 ---------- */
.qq-cta-band {
	background: linear-gradient(135deg, var(--qq-ink) 0%, var(--qq-ink-2) 100%);
	position: relative; overflow: hidden;
}
.qq-cta-band::before {
	content: ""; position: absolute; inset: 0;
	background: radial-gradient(circle at 85% 20%, rgba(196,160,98,.2), transparent 45%);
}
.qq-cta-band__inner {
	position: relative; z-index: 1;
	display: flex; align-items: center; justify-content: space-between;
	gap: 32px; flex-wrap: wrap;
	padding: 56px 20px;
}
.qq-cta-band__title { color: #fff; font-size: clamp(22px, 3vw, 30px); margin-bottom: 10px; }
.qq-cta-band__desc { color: rgba(255,255,255,.7); margin: 0; font-size: 15px; }
.qq-cta-band__actions { display: flex; gap: 14px; flex-wrap: wrap; }

/* ---------- 页脚 ---------- */
.qq-footer { background: #101820; color: rgba(255,255,255,.72); }
.qq-footer__grid {
	display: grid; grid-template-columns: 1.6fr 1fr 1fr 1.1fr;
	gap: 44px;
	padding: 68px 0 48px;
}
.qq-footer__logo { display: flex; flex-direction: column; gap: 6px; margin-bottom: 14px; }
.qq-footer__logo-sub { color: var(--qq-gold-light); font-size: 15px; font-family: var(--qq-font-serif); font-weight: 700; }
.qq-footer__slogan { color: rgba(255,255,255,.55); font-size: 14px; letter-spacing: .1em; margin-bottom: 22px; }
.qq-footer__contact li {
	display: flex; align-items: flex-start; gap: 10px;
	margin-bottom: 14px; font-size: 14.5px;
	color: rgba(255,255,255,.72);
}
.qq-footer__contact svg { flex-shrink: 0; margin-top: 5px; color: var(--qq-gold); }
.qq-footer__contact a { color: rgba(255,255,255,.85); }
.qq-footer__contact a:hover { color: var(--qq-gold-light); }
.qq-footer__sep { margin: 0 6px; opacity: .4; }
.qq-footer__title, .qq-footer-widget__title {
	color: #fff; font-size: 16.5px;
	margin-bottom: 20px; position: relative; padding-bottom: 12px;
}
.qq-footer__title::after, .qq-footer-widget__title::after {
	content: ""; position: absolute; left: 0; bottom: 0;
	width: 28px; height: 2px; background: var(--qq-gold);
}
.qq-footer__nav li { margin-bottom: 12px; }
.qq-footer__nav a { color: rgba(255,255,255,.7); font-size: 14.5px; }
.qq-footer__nav a:hover { color: var(--qq-gold-light); padding-left: 6px; }
.qq-qrcode { text-align: center; }
.qq-qrcode svg { border-radius: 10px; margin: 0 auto 10px; }
.qq-qrcode span { font-size: 13px; color: rgba(255,255,255,.6); }
.qq-footer__bottom { border-top: 1px solid rgba(255,255,255,.08); }
.qq-footer__bottom-inner {
	display: flex; justify-content: space-between; align-items: center;
	flex-wrap: wrap; gap: 10px;
	padding: 22px 0; font-size: 13.5px; color: rgba(255,255,255,.5);
}
.qq-footer__copyright a, .qq-footer__powered a { color: rgba(255,255,255,.6); }
.qq-footer__copyright a:hover { color: var(--qq-gold-light); }

/* ---------- 回到顶部 ---------- */
.qq-back-top {
	position: fixed; right: 24px; bottom: 28px; z-index: 900;
	width: 48px; height: 48px; border-radius: 50%;
	background: var(--qq-ink); color: var(--qq-gold-light);
	border: 1.5px solid var(--qq-gold);
	display: flex; align-items: center; justify-content: center;
	opacity: 0; visibility: hidden; transform: translateY(16px);
	transition: var(--qq-transition);
	box-shadow: 0 8px 24px rgba(0,0,0,.25);
}
.qq-back-top.is-visible { opacity: 1; visibility: visible; transform: translateY(0); }
.qq-back-top:hover { background: var(--qq-gold); color: #fff; }

/* ---------- 页面头部（内页） ---------- */
.qq-page-hero {
	background: linear-gradient(145deg, var(--qq-ink) 0%, var(--qq-ink-2) 100%);
	color: #fff; text-align: center;
	padding: 72px 20px 64px;
	position: relative; overflow: hidden;
}
.qq-page-hero::before {
	content: ""; position: absolute; inset: 0;
	background:
		radial-gradient(circle at 15% 30%, rgba(196,160,98,.16), transparent 40%),
		linear-gradient(rgba(196,160,98,.04) 1px, transparent 1px),
		linear-gradient(90deg, rgba(196,160,98,.04) 1px, transparent 1px);
	background-size: auto, 50px 50px, 50px 50px;
}
.qq-page-hero > .qq-container { position: relative; z-index: 1; }
.qq-page-hero__title {
	color: #fff; font-size: clamp(28px, 4vw, 42px);
	margin-bottom: 12px;
}
.qq-page-hero__title::after {
	content: ""; display: block; width: 52px; height: 3px;
	background: var(--qq-gold); margin: 18px auto 0;
}
.qq-page-hero__desc { color: rgba(255,255,255,.72); font-size: 15.5px; margin: 0; max-width: 720px; margin-left: auto; margin-right: auto; }

/* ---------- 面包屑 ---------- */
.qq-breadcrumb {
	padding: 18px 0 0;
	font-size: 13.5px; color: var(--qq-text-light);
}
.qq-breadcrumb__list { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.qq-breadcrumb__item::after { content: "/"; margin-left: 8px; color: var(--qq-line); }
.qq-breadcrumb__item:last-child::after { display: none; }
.qq-breadcrumb__item a { color: var(--qq-text-light); }
.qq-breadcrumb__item a:hover { color: var(--qq-gold-dark); }
.qq-breadcrumb__item.is-current { color: var(--qq-ink); font-weight: 600; }

/* ---------- 布局（带侧边栏） ---------- */
.qq-layout {
	display: grid; grid-template-columns: 1fr 320px;
	gap: 40px;
	padding: 48px 20px 84px;
	align-items: start;
}
.qq-content { padding: 40px 20px 84px; }

/* ---------- 文章列表行 ---------- */
.qq-news-list { display: flex; flex-direction: column; gap: 28px; }
.qq-news-row {
	display: grid; grid-template-columns: 260px 1fr;
	background: var(--qq-white);
	border: 1px solid var(--qq-line);
	border-radius: var(--qq-radius);
	overflow: hidden;
	transition: var(--qq-transition);
}
.qq-news-row:hover { box-shadow: var(--qq-shadow); transform: translateY(-4px); }
.qq-news-row__media { display: block; min-height: 180px; overflow: hidden; }
.qq-news-row__media img { width: 100%; height: 100%; object-fit: cover; }
.qq-news-row__body { padding: 24px 26px; }
.qq-news-row__meta { display: flex; gap: 12px; align-items: center; font-size: 13px; color: var(--qq-text-light); margin-bottom: 8px; }
.qq-news-row__cat {
	background: rgba(196,160,98,.14); color: var(--qq-gold-dark);
	padding: 2px 10px; border-radius: 5px; font-weight: 600;
}
.qq-news-row__title { font-size: 20px; margin-bottom: 10px; }
.qq-news-row__title a { color: var(--qq-ink); }
.qq-news-row__title a:hover { color: var(--qq-gold-dark); }
.qq-news-row__excerpt { color: var(--qq-text-light); font-size: 14.5px; margin-bottom: 14px; }

/* ---------- 侧边栏小工具 ---------- */
.qq-layout__sidebar { position: sticky; top: calc(var(--qq-header-h) + 20px); }
.qq-widget {
	background: var(--qq-white);
	border: 1px solid var(--qq-line);
	border-radius: var(--qq-radius);
	padding: 26px 24px;
	margin-bottom: 24px;
}
.qq-widget__title {
	font-size: 17.5px; margin-bottom: 16px;
	padding-bottom: 12px; border-bottom: 2px solid var(--qq-gold);
	display: inline-block;
}
.qq-widget__list li { border-bottom: 1px dashed var(--qq-line); }
.qq-widget__list li a { display: flex; justify-content: space-between; padding: 11px 0; font-size: 14.5px; }
.qq-widget__list li a:hover { color: var(--qq-gold-dark); }
.qq-widget__posts li { margin-bottom: 12px; padding-left: 14px; position: relative; }
.qq-widget__posts li::before { content: ""; position: absolute; left: 0; top: 11px; width: 5px; height: 5px; border-radius: 50%; background: var(--qq-gold); }
.qq-widget__posts a { font-size: 14.5px; line-height: 1.5; }
.qq-widget--cta { background: linear-gradient(150deg, var(--qq-ink), var(--qq-ink-2)); color: rgba(255,255,255,.8); text-align: center; }
.qq-widget--cta .qq-widget__title { color: #fff; border-bottom-color: var(--qq-gold); }
.qq-widget__phone { font-size: 22px; font-weight: 700; color: var(--qq-gold-light); font-family: var(--qq-font-serif); }

/* ---------- 分页 ---------- */
.qq-pagination, .navigation.pagination, .nav-links {
	display: flex; justify-content: center; gap: 8px;
	margin-top: 48px; flex-wrap: wrap;
}
.page-numbers {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 42px; height: 42px; padding: 0 14px;
	border: 1px solid var(--qq-line);
	border-radius: 10px; background: var(--qq-white);
	color: var(--qq-text); font-size: 15px;
}
.page-numbers.current, .page-numbers:hover {
	background: var(--qq-ink); color: var(--qq-gold-light);
	border-color: var(--qq-ink);
}

/* ---------- 文章详情 ---------- */
.qq-article--single { background: var(--qq-white); border: 1px solid var(--qq-line); border-radius: var(--qq-radius-lg); padding: 44px clamp(24px, 4vw, 52px); }
.qq-article__header { margin-bottom: 30px; }
.qq-article__header .qq-breadcrumb { padding: 0 0 16px; }
.qq-article__title { font-size: clamp(24px, 3.4vw, 34px); margin-bottom: 16px; }
.qq-article__meta { display: flex; flex-wrap: wrap; gap: 18px; color: var(--qq-text-light); font-size: 14px; }
.qq-article__meta > * { display: inline-flex; align-items: center; gap: 6px; }
.qq-article__meta svg { color: var(--qq-gold-dark); }
.qq-article__cat { background: rgba(196,160,98,.14); color: var(--qq-gold-dark); padding: 2px 12px; border-radius: 5px; font-weight: 600; }
.qq-article__cover { margin: 0 0 34px; border-radius: var(--qq-radius); overflow: hidden; }
.qq-article__footer { margin-top: 44px; padding-top: 30px; border-top: 1px solid var(--qq-line); }
.qq-article__tags { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 24px; }
.qq-article__tags-label { color: var(--qq-text-light); font-size: 14px; }
.qq-tag {
	background: var(--qq-cream); border: 1px solid var(--qq-line);
	padding: 4px 14px; border-radius: 999px; font-size: 13.5px;
	color: var(--qq-text-light);
}
.qq-tag:hover { background: var(--qq-ink); color: var(--qq-gold-light); border-color: var(--qq-ink); }
.qq-article__cta {
	background: var(--qq-cream); border: 1px dashed var(--qq-gold);
	border-radius: var(--qq-radius); padding: 22px 26px;
	display: flex; align-items: center; justify-content: space-between;
	gap: 18px; flex-wrap: wrap;
}
.qq-article__cta p { margin: 0; font-size: 14.5px; color: var(--qq-text-light); }

/* 文章正文排版 */
.qq-rich-content { font-size: 16px; line-height: 1.95; }
.qq-rich-content h2 {
	font-size: 24px; margin: 1.8em 0 .7em;
	padding-left: 14px; border-left: 4px solid var(--qq-gold);
}
.qq-rich-content h3 { font-size: 20px; margin: 1.5em 0 .6em; color: var(--qq-ink); }
.qq-rich-content p { margin: 0 0 1.2em; }
.qq-rich-content img { border-radius: 12px; margin: 1.4em 0; }
.qq-rich-content ul, .qq-rich-content ol { margin: 0 0 1.4em; padding-left: 1.4em; }
.qq-rich-content ul { list-style: disc; }
.qq-rich-content ol { list-style: decimal; }
.qq-rich-content li { margin-bottom: .5em; }
.qq-rich-content blockquote {
	margin: 1.6em 0; padding: 18px 26px;
	background: var(--qq-cream);
	border-left: 4px solid var(--qq-gold);
	border-radius: 0 12px 12px 0;
	color: var(--qq-text-light);
	font-size: 15.5px;
}
.qq-rich-content a { color: var(--qq-gold-dark); text-decoration: underline; text-underline-offset: 3px; }
.qq-rich-content table { width: 100%; border-collapse: collapse; margin: 1.6em 0; font-size: 14.5px; }
.qq-rich-content th, .qq-rich-content td { border: 1px solid var(--qq-line); padding: 12px 14px; text-align: left; }
.qq-rich-content th { background: var(--qq-ink); color: #fff; font-weight: 600; }
.qq-rich-content tr:nth-child(even) td { background: var(--qq-cream); }

/* 上一篇/下一篇 */
.qq-post-nav {
	display: grid; grid-template-columns: 1fr 1fr; gap: 20px;
	margin-top: 36px;
}
.qq-post-nav__item {
	background: var(--qq-white); border: 1px solid var(--qq-line);
	border-radius: var(--qq-radius); padding: 20px 24px;
	transition: var(--qq-transition);
}
.qq-post-nav__item:hover { border-color: var(--qq-gold); box-shadow: var(--qq-shadow); }
.qq-post-nav__item--next { text-align: right; }
.qq-post-nav__dir { display: block; font-size: 13px; color: var(--qq-gold-dark); font-weight: 700; margin-bottom: 6px; }
.qq-post-nav__title { font-size: 15px; color: var(--qq-ink); font-family: var(--qq-font-serif); font-weight: 600; }

/* ---------- 空状态 / 404 ---------- */
.qq-empty { text-align: center; padding: 70px 20px; background: var(--qq-white); border-radius: var(--qq-radius-lg); border: 1px dashed var(--qq-line); }
.qq-empty h2 { font-size: 24px; margin-bottom: 12px; }
.qq-empty p { color: var(--qq-text-light); }
.qq-error-section { padding: 110px 20px; text-align: center; }
.qq-error__code {
	font-family: var(--qq-font-serif);
	font-size: clamp(90px, 18vw, 160px); font-weight: 900;
	color: transparent; -webkit-text-stroke: 2px var(--qq-gold);
	line-height: 1; margin: 0 0 10px;
}
.qq-error__title { font-size: 28px; margin-bottom: 14px; }
.qq-error__desc { color: var(--qq-text-light); margin-bottom: 32px; }
.qq-error__actions { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; margin-bottom: 40px; }
.qq-error__search { max-width: 480px; margin: 0 auto; }
.search-form { display: flex; gap: 10px; }
.search-field {
	flex: 1; padding: 13px 18px;
	border: 1.5px solid var(--qq-line); border-radius: 999px;
	font-size: 15px; font-family: inherit; background: var(--qq-white);
}
.search-field:focus { outline: none; border-color: var(--qq-gold); }
.search-submit {
	background: var(--qq-ink); color: var(--qq-gold-light);
	border: none; padding: 13px 28px; border-radius: 999px;
	font-size: 15px; font-weight: 600;
}
.search-submit:hover { background: var(--qq-gold); color: #fff; }

/* ---------- 关于页 ---------- */
.qq-about-intro {
	display: grid; grid-template-columns: 1fr 1.1fr;
	gap: 56px; align-items: center;
}
.qq-about-intro__media { border-radius: var(--qq-radius-lg); overflow: hidden; box-shadow: var(--qq-shadow); }
.qq-about-intro__media img { width: 100%; }
.qq-stats-band {
	background: linear-gradient(135deg, var(--qq-ink), var(--qq-ink-2));
	padding: 60px 0;
}
.qq-stats-band__list {
	display: grid; grid-template-columns: repeat(4, 1fr);
	gap: 30px; text-align: center;
}
.qq-stats-band__item strong {
	display: block; font-family: var(--qq-font-serif);
	font-size: clamp(34px, 5vw, 52px); font-weight: 900;
	color: var(--qq-gold-light); line-height: 1;
}
.qq-stats-band__item span { display: block; margin-top: 10px; color: rgba(255,255,255,.7); font-size: 15px; }

.qq-process {
	display: grid; grid-template-columns: repeat(6, 1fr);
	gap: 18px; counter-reset: step;
}
.qq-process__item {
	text-align: center; position: relative;
	background: var(--qq-white); border: 1px solid var(--qq-line);
	border-radius: var(--qq-radius); padding: 30px 16px 26px;
}
.qq-process__num {
	display: inline-flex; align-items: center; justify-content: center;
	width: 46px; height: 46px; border-radius: 50%;
	background: var(--qq-ink); color: var(--qq-gold-light);
	font-family: var(--qq-font-serif); font-size: 22px; font-weight: 900;
	margin-bottom: 14px;
	border: 2px solid var(--qq-gold);
}
.qq-process__item h3 { font-size: 17px; margin-bottom: 6px; }
.qq-process__item p { font-size: 13.5px; color: var(--qq-text-light); margin: 0; }

.qq-culture-card {
	background: var(--qq-white); border: 1px solid var(--qq-line);
	border-radius: var(--qq-radius-lg); padding: 32px 26px;
	text-align: center; transition: var(--qq-transition);
}
.qq-culture-card:hover { transform: translateY(-6px); box-shadow: var(--qq-shadow); border-color: rgba(196,160,98,.5); }
.qq-culture-card__title {
	font-size: 22px; color: var(--qq-gold-dark);
	margin-bottom: 12px;
}
.qq-culture-card__title::after {
	content: ""; display: block; width: 30px; height: 2px;
	background: var(--qq-gold); margin: 12px auto 0;
}
.qq-culture-card__desc { color: var(--qq-text-light); font-size: 14.5px; margin: 0; }

.qq-qual-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.qq-qual-item p { text-align: center; margin-top: 12px; font-size: 14px; color: var(--qq-text-light); }

/* ---------- 服务页 ---------- */
.qq-service-detail-list { display: flex; flex-direction: column; gap: 80px; }
.qq-service-detail {
	display: grid; grid-template-columns: 1fr 1fr;
	gap: 56px; align-items: center;
}
.qq-service-detail--reverse .qq-service-detail__media { order: 2; }
.qq-service-detail__media { border-radius: var(--qq-radius-lg); overflow: hidden; box-shadow: var(--qq-shadow); }
.qq-service-detail__title { font-size: clamp(24px, 3vw, 32px); margin-bottom: 16px; }
.qq-service-detail__desc { color: var(--qq-text-light); font-size: 15.5px; margin-bottom: 22px; }
.qq-service-detail__points { margin-bottom: 28px; }
.qq-service-detail__points li {
	display: flex; align-items: flex-start; gap: 10px;
	padding: 9px 0; font-size: 15px;
	border-bottom: 1px dashed var(--qq-line);
}
.qq-service-detail__points li svg { flex-shrink: 0; margin-top: 5px; }
.qq-service-detail__icon { margin-bottom: 6px; }

.qq-table-wrap { overflow-x: auto; border-radius: var(--qq-radius); box-shadow: var(--qq-shadow); }
.qq-price-table {
	width: 100%; border-collapse: collapse;
	background: var(--qq-white);
}
.qq-price-table th {
	background: var(--qq-ink); color: var(--qq-gold-light);
	padding: 18px 20px; text-align: left; font-weight: 600; font-size: 15px;
	white-space: nowrap;
}
.qq-price-table td { padding: 16px 20px; border-bottom: 1px solid var(--qq-line); font-size: 14.5px; }
.qq-price-table tr:nth-child(even) td { background: var(--qq-cream); }
.qq-price-table td:nth-child(2) { color: var(--qq-gold-dark); font-weight: 700; white-space: nowrap; }
.qq-price-note { text-align: center; color: var(--qq-text-light); font-size: 13.5px; margin-top: 20px; }

/* ---------- 案例详情 ---------- */
.qq-case-hero {
	background: linear-gradient(145deg, var(--qq-ink), var(--qq-ink-2));
	color: #fff; padding: 56px 0 60px;
}
.qq-case-hero .qq-breadcrumb { color: rgba(255,255,255,.6); padding-top: 0; margin-bottom: 20px; }
.qq-case-hero .qq-breadcrumb a { color: rgba(255,255,255,.7); }
.qq-case-hero .qq-breadcrumb__item.is-current { color: #fff; }
.qq-case-hero__title { color: #fff; font-size: clamp(26px, 3.8vw, 40px); margin-bottom: 28px; }
.qq-case-hero__facts {
	display: flex; flex-wrap: wrap; gap: 14px 40px;
}
.qq-case-hero__facts li { display: flex; flex-direction: column; }
.qq-case-hero__facts span { font-size: 13px; color: rgba(255,255,255,.55); margin-bottom: 2px; }
.qq-case-hero__facts strong { font-size: 17px; color: var(--qq-gold-light); font-family: var(--qq-font-serif); }
.qq-case-cover { border-radius: var(--qq-radius-lg); overflow: hidden; margin-bottom: 40px; box-shadow: var(--qq-shadow); }
.qq-related { margin-top: 70px; padding-top: 50px; border-top: 1px solid var(--qq-line); }
.qq-related__title { text-align: center; font-size: 26px; margin-bottom: 36px; }

/* ---------- 团队 ---------- */
.qq-team-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
.qq-team-card {
	background: var(--qq-white); border: 1px solid var(--qq-line);
	border-radius: var(--qq-radius-lg); overflow: hidden;
	transition: var(--qq-transition);
}
.qq-team-card:hover { transform: translateY(-8px); box-shadow: var(--qq-shadow-hover); }
.qq-team-card__photo { display: block; aspect-ratio: 6/7; overflow: hidden; }
.qq-team-card__photo img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }
.qq-team-card:hover .qq-team-card__photo img { transform: scale(1.05); }
.qq-team-card__body { padding: 24px; text-align: center; }
.qq-team-card__name { font-size: 22px; margin-bottom: 6px; }
.qq-team-card__position { color: var(--qq-gold-dark); font-weight: 600; font-size: 14.5px; margin-bottom: 8px; }
.qq-team-card__expert { font-size: 13.5px; color: var(--qq-text-light); margin-bottom: 14px; }

.qq-team-detail { padding-bottom: 40px; }
.qq-team-detail__grid {
	display: grid; grid-template-columns: 380px 1fr;
	gap: 56px; align-items: center;
	margin-bottom: 60px;
}
.qq-team-detail__photo { border-radius: var(--qq-radius-lg); overflow: hidden; box-shadow: var(--qq-shadow); }
.qq-team-detail__name { font-size: clamp(30px, 4vw, 42px); margin-bottom: 8px; }
.qq-team-detail__position { color: var(--qq-gold-dark); font-size: 18px; font-weight: 600; margin-bottom: 28px; }
.qq-team-detail__facts { margin-bottom: 32px; }
.qq-team-detail__facts li {
	display: flex; gap: 18px; align-items: baseline;
	padding: 14px 0; border-bottom: 1px dashed var(--qq-line);
}
.qq-team-detail__fact-label { color: var(--qq-text-light); font-size: 14.5px; min-width: 84px; }
.qq-team-detail__facts strong { font-family: var(--qq-font-serif); font-size: 17px; color: var(--qq-ink); }
.qq-team-detail__actions { display: flex; gap: 14px; flex-wrap: wrap; }
.qq-team-detail__bio { margin: 0 auto; }
.qq-team-detail__bio h2 { font-size: 24px; margin-bottom: 20px; text-align: center; }
.qq-team-detail__bio h2::after { content: ""; display: block; width: 44px; height: 3px; background: var(--qq-gold); margin: 14px auto 0; }

/* ---------- 联系页 ---------- */
.qq-contact-grid {
	display: grid; grid-template-columns: 1fr 1.2fr;
	gap: 48px; align-items: start;
}
.qq-contact-info {
	background: linear-gradient(160deg, var(--qq-ink), var(--qq-ink-2));
	color: rgba(255,255,255,.8);
	border-radius: var(--qq-radius-lg);
	padding: 44px 40px;
}
.qq-contact-info__title { color: #fff; font-size: 24px; margin-bottom: 6px; }
.qq-contact-info__slogan { color: var(--qq-gold-light); font-size: 14.5px; margin-bottom: 30px; letter-spacing: .08em; }
.qq-contact-info__list li { display: flex; gap: 16px; margin-bottom: 26px; }
.qq-contact-info__icon {
	flex-shrink: 0; width: 44px; height: 44px; border-radius: 12px;
	background: rgba(196,160,98,.15); border: 1px solid rgba(196,160,98,.35);
	display: flex; align-items: center; justify-content: center;
	color: var(--qq-gold-light);
}
.qq-contact-info__label { font-size: 13px; color: rgba(255,255,255,.55); margin-bottom: 2px; }
.qq-contact-info__value { font-size: 16.5px; color: #fff; margin: 0; font-weight: 600; }
.qq-contact-info__value a { color: #fff; }
.qq-contact-info__value a:hover { color: var(--qq-gold-light); }
.qq-contact-qrcode { text-align: center; margin-top: 34px; padding-top: 28px; border-top: 1px solid rgba(255,255,255,.1); }
.qq-contact-qrcode p { color: rgba(255,255,255,.65); font-size: 14px; margin: 10px 0 0; }
.qq-qrcode--lg svg { width: 140px; height: 140px; }

.qq-contact-form-wrap {
	background: var(--qq-white);
	border: 1px solid var(--qq-line);
	border-radius: var(--qq-radius-lg);
	padding: 44px 40px;
	box-shadow: var(--qq-shadow);
}
.qq-contact-form__title { font-size: 24px; margin-bottom: 6px; }
.qq-contact-form__sub { color: var(--qq-text-light); font-size: 14.5px; margin-bottom: 28px; }
.qq-form-row { margin-bottom: 20px; }
.qq-form-row label { display: block; font-weight: 600; font-size: 14.5px; margin-bottom: 8px; color: var(--qq-ink); }
.qq-req { color: #c0392b; }
.qq-form-row input, .qq-form-row textarea {
	width: 100%; padding: 13px 16px;
	border: 1.5px solid var(--qq-line); border-radius: 10px;
	font-size: 15px; font-family: inherit;
	background: var(--qq-cream);
	transition: var(--qq-transition);
}
.qq-form-row input:focus, .qq-form-row textarea:focus {
	outline: none; border-color: var(--qq-gold); background: #fff;
}
.qq-form-row textarea { resize: vertical; }
.qq-form-tip { text-align: center; font-size: 13px; color: var(--qq-text-light); margin: 14px 0 0; }
.qq-form-notice { border-radius: 10px; padding: 16px 20px; margin-bottom: 24px; font-size: 15px; }
.qq-form-notice--success { background: #eefaf0; border: 1px solid #9ad6a5; color: #237a3a; }
.qq-form-notice--error { background: #fdeeee; border: 1px solid #e8a5a5; color: #b33636; }

.qq-map-section { padding: 0 0 84px; }
.qq-map-placeholder {
	border-radius: var(--qq-radius-lg); overflow: hidden;
	min-height: 380px;
	background:
		linear-gradient(rgba(22,32,43,.88), rgba(22,32,43,.88)),
		repeating-linear-gradient(45deg, #2c3e50 0, #2c3e50 2px, #263444 2px, #263444 40px);
	display: flex; align-items: center; justify-content: center;
	text-align: center; color: #fff;
}
.qq-map-placeholder__inner { padding: 40px 20px; }
.qq-map-placeholder__inner h3 { color: var(--qq-gold-light); font-size: 22px; margin: 14px 0 8px; }
.qq-map-placeholder__inner p { color: rgba(255,255,255,.8); margin: 0 0 6px; }
.qq-map-placeholder__tip { font-size: 13px !important; color: rgba(255,255,255,.5) !important; margin-top: 18px !important; }

/* ---------- 评论 ---------- */
.qq-comments { margin-top: 50px; padding-top: 40px; border-top: 1px solid var(--qq-line); }
.qq-comments__title { font-size: 22px; margin-bottom: 24px; }

/* ---------- 响应式 ---------- */
@media (max-width: 1024px) {
	.qq-card-grid--3, .qq-team-grid { grid-template-columns: repeat(2, 1fr); }
	.qq-card-grid--4, .qq-advantage-grid, .qq-qual-grid, .qq-stats-band__list { grid-template-columns: repeat(2, 1fr); }
	.qq-process { grid-template-columns: repeat(3, 1fr); }
	.qq-footer__grid { grid-template-columns: 1fr 1fr; gap: 36px; }
	.qq-layout { grid-template-columns: 1fr; }
	.qq-layout__sidebar { position: static; }
	.qq-team-detail__grid { grid-template-columns: 300px 1fr; gap: 36px; }
}

@media (max-width: 768px) {
	.qq-section { padding: 60px 0; }
	.qq-nav, .qq-header__cta { display: none; }
	.qq-menu-toggle { display: flex; }
	.qq-topbar__item:first-child { display: none; }
	.qq-topbar__inner { justify-content: center; }
	.qq-hero { min-height: 92vh; min-height: 92dvh; }
	.qq-hero__content { padding: 60px 20px; }
	.qq-hero__stats { gap: 28px 36px; margin-top: 44px; }
	.qq-card-grid--3, .qq-card-grid--4, .qq-team-grid, .qq-advantage-grid, .qq-qual-grid { grid-template-columns: 1fr; }
	.qq-stats-band__list { grid-template-columns: repeat(2, 1fr); gap: 34px 20px; }
	.qq-process { grid-template-columns: repeat(2, 1fr); }
	.qq-footer__grid { grid-template-columns: 1fr; gap: 32px; padding: 48px 0 32px; }
	.qq-news-row { grid-template-columns: 1fr; }
	.qq-news-row__media { min-height: 200px; }
	.qq-about-intro, .qq-service-detail, .qq-contact-grid, .qq-team-detail__grid { grid-template-columns: 1fr; gap: 32px; }
	.qq-service-detail--reverse .qq-service-detail__media { order: 0; }
	.qq-article--single { padding: 28px 20px; }
	.qq-contact-info, .qq-contact-form-wrap { padding: 32px 24px; }
	.qq-cta-band__inner { flex-direction: column; text-align: center; padding: 44px 20px; }
	.qq-post-nav { grid-template-columns: 1fr; }
	.qq-section__head--row { flex-direction: column; align-items: flex-start; }
	.qq-faq-item__q { font-size: 15.5px; padding: 18px 18px; }
	.qq-faq-item__a { padding: 0 18px 18px; }
	.qq-back-top { right: 16px; bottom: 20px; width: 44px; height: 44px; }
}

@media (max-width: 480px) {
	.qq-process { grid-template-columns: 1fr; }
	.qq-hero__actions .qq-btn { width: 100%; }
	.qq-case-hero__facts { gap: 12px 24px; }
}
