/**
 * Guopai Theme — front-end styles
 * 藏青金配色体系 / 企业站长页布局
 */

/* ========== 1. 基础与变量 ========== */

:root {
	--gp-navy: #0b1f3a;
	--gp-navy-deep: #061428;
	--gp-navy-soft: #16304f;
	--gp-gold: #c8a45c;
	--gp-gold-light: #e8d5ae;
	--gp-cream: #f7f4ee;
	--gp-ink: #16202e;
	--gp-muted: #5d6b7d;
	--gp-line: #e3e0d8;
	--gp-container: 1180px;
	--gp-radius: 4px;
}

html {
	scroll-behavior: smooth;
	scroll-padding-top: 96px;
}

body {
	font-family: "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", "Source Han Sans SC", system-ui, -apple-system, sans-serif;
	color: var(--gp-ink);
	background: #fff;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

/* ========== 2. 通用容器 ========== */

.gp-section {
	padding: clamp(4rem, 8vw, 7rem) 0;
}

.gp-container {
	width: 100%;
	max-width: var(--gp-container);
	margin-inline: auto;
	padding-inline: 1.5rem;
}

.gp-container--narrow {
	max-width: 880px;
}

/* 章节标题 */
.gp-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 0.6em;
	font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.24em;
	text-transform: uppercase;
	color: var(--gp-gold);
	margin: 0 0 0.9rem;
}

.gp-eyebrow::before {
	content: "";
	width: 28px;
	height: 1px;
	background: currentColor;
	opacity: 0.7;
}

.gp-title {
	font-size: clamp(1.7rem, 3.4vw, 2.5rem);
	font-weight: 700;
	line-height: 1.32;
	color: var(--gp-navy);
	margin: 0 0 1rem;
	letter-spacing: 0.01em;
	text-wrap: balance;
}

.gp-lead {
	font-size: 1.0625rem;
	line-height: 2;
	color: var(--gp-muted);
	margin: 0;
	max-width: 46em;
}

.gp-head {
	margin-bottom: clamp(2.5rem, 5vw, 3.75rem);
}

.gp-head--center {
	text-align: center;
	align-items: center;
}

.gp-head--center .gp-lead {
	margin-inline: auto;
	max-width: 42em;
}

.gp-head--center .gp-eyebrow {
	justify-content: center;
}

/* ---- 高端化：居中标题组的对称金色饰线 + 标题下金色分隔饰 ---- */
.gp-head--center .gp-eyebrow::before,
.gp-head--center .gp-eyebrow::after {
	content: "";
	width: 34px;
	height: 1px;
	opacity: 0.7;
	background: linear-gradient(90deg, transparent, currentColor);
}

.gp-head--center .gp-eyebrow::after {
	background: linear-gradient(90deg, currentColor, transparent);
}

.gp-head--center .gp-title {
	position: relative;
	padding-bottom: 1.2rem;
	margin-bottom: 1.55rem;
	letter-spacing: 0.02em;
}

.gp-head--center .gp-title::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	width: 58px;
	height: 2px;
	border-radius: 2px;
	background: linear-gradient(90deg, transparent, var(--gp-gold), transparent);
}

.gp-head--light .gp-title,
.gp-head--light .gp-eyebrow {
	color: #fff;
}

.gp-head--light .gp-eyebrow {
	color: var(--gp-gold-light);
}

.gp-head--light .gp-lead {
	color: rgba(255, 255, 255, 0.72);
}

/* ========== 3. 页头导航 ========== */

.gp-header {
	position: sticky;
	top: 0;
	z-index: 100;
	background: rgba(11, 31, 58, 0.94);
	backdrop-filter: saturate(150%) blur(12px);
	border-bottom: 1px solid rgba(200, 164, 92, 0.18);
}

.gp-header__inner {
	display: flex;
	align-items: center;
	gap: 2rem;
	min-height: 76px;
	max-width: var(--gp-container);
	margin-inline: auto;
	padding-inline: 1.5rem;
}

.gp-brand {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	text-decoration: none;
	flex-shrink: 0;
}

/* Logo 标记用 CSS 背景注入：模板部件（.html）不执行 PHP，
   因此这里直接引用主题资源，避免在部件里写 <?php 会被原样输出。 */
.gp-brand__mark {
	display: block;
	flex-shrink: 0;
	width: 40px;
	height: 40px;

	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

.gp-brand__text {
	display: flex;
	flex-direction: column;
	line-height: 1.1;
}

.gp-brand__cn {
	font-size: 1.0625rem;
	font-weight: 700;
	color: #fff;
	letter-spacing: 0.14em;
}

.gp-brand__en {
	font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
	font-size: 0.625rem;
	font-weight: 500;
	color: var(--gp-gold);
	letter-spacing: 0.24em;
}

/* 桌面导航 */
.gp-nav__list {
	display: flex;
	align-items: center;
	gap: 0.3rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.gp-nav__list li {
	margin: 0;
}

.gp-nav__list a {
	display: block;
	padding: 0.6rem 0.9rem;
	font-size: 0.9375rem;
	font-weight: 500;
	color: rgba(255, 255, 255, 0.86);
	text-decoration: none;
	border-radius: 2px;
	transition: color 0.2s ease, background-color 0.2s ease;
	white-space: nowrap;
}

.gp-nav__list a:hover,
.gp-nav__list a:focus-visible {
	color: var(--gp-gold-light);
	background: rgba(200, 164, 92, 0.12);
}

/* 关于我们 → 下拉子菜单（公司简介 / 企业文化 / 发展历程 / 企业荣誉） */
.gp-nav__item--has-sub {
	position: relative;
}

/* 悬停桥：填满父项与浮层之间的空隙，鼠标下移时 hover 不中断 */
.gp-nav__item--has-sub::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 100%;
	height: 0.75rem;
}

.gp-nav__list .gp-nav__parent {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
}

.gp-nav__caret {
	display: block;
	width: 5px;
	height: 5px;
	margin-top: -3px;
	border-right: 1.5px solid currentColor;
	border-bottom: 1.5px solid currentColor;
	transform: rotate(45deg);
	transition: transform 0.22s ease;
}

.gp-nav__item--has-sub:hover .gp-nav__caret,
.gp-nav__item--has-sub:focus-within .gp-nav__caret {
	transform: rotate(225deg);
}

.gp-nav__sub {
	position: absolute;
	top: calc(100% + 0.55rem);
	left: 0;
	z-index: 120;
	min-width: 11.5rem;
	margin: 0;
	padding: 0.42rem;
	list-style: none;
	background: var(--gp-navy-deep);
	border: 1px solid rgba(200, 164, 92, 0.24);
	border-radius: 3px;
	box-shadow: 0 20px 44px rgba(6, 20, 40, 0.5);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
}

.gp-nav__item--has-sub:hover > .gp-nav__sub,
.gp-nav__item--has-sub:focus-within > .gp-nav__sub {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.gp-nav__sub li {
	margin: 0;
}

.gp-nav__sub a {
	display: block;
	padding: 0.55rem 0.9rem;
	font-size: 0.875rem;
	font-weight: 500;
	color: rgba(255, 255, 255, 0.82);
	border-radius: 2px;
	white-space: nowrap;
}

.gp-nav__sub a:hover,
.gp-nav__sub a:focus-visible {
	color: var(--gp-gold-light);
	background: rgba(200, 164, 92, 0.14);
}

/* 移动端导航：默认隐藏，由汉堡按钮控制 */
.gp-mobile-nav.wp-block-group {
	display: none !important;
	max-height: 0;
	overflow: hidden;
	background: var(--gp-navy-deep);
	border-bottom: 1px solid rgba(200, 164, 92, 0.2);
	transition: max-height 0.3s ease;
}

.gp-mobile-nav.is-open {
	max-height: 70vh;
	overflow-y: auto;
}

.gp-mobile-nav__list {
	list-style: none;
	margin: 0;
	padding: 0.5rem 0;
}

.gp-mobile-nav__list li {
	margin: 0;
}

.gp-mobile-nav__list a {
	display: block;
	padding: 0.9rem 1.5rem;
	font-size: 1rem;
	color: rgba(255, 255, 255, 0.86);
	text-decoration: none;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.gp-mobile-nav__list a:hover,
.gp-mobile-nav__list a:focus-visible {
	color: var(--gp-gold-light);
	background: rgba(200, 164, 92, 0.12);
}

/* 移动端二级菜单：手风琴，由「关于我们」按钮控制展开 */
.gp-mobile-nav__parent {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	width: 100%;
	padding: 0.9rem 1.5rem;
	font-family: inherit;
	font-size: 1rem;
	font-weight: 500;
	color: rgba(255, 255, 255, 0.86);
	text-align: left;
	background: transparent;
	border: 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
	cursor: pointer;
}

.gp-mobile-nav__parent:hover,
.gp-mobile-nav__parent:focus-visible {
	color: var(--gp-gold-light);
	background: rgba(200, 164, 92, 0.12);
}

.gp-mobile-nav__parent[aria-expanded="true"] .gp-nav__caret {
	transform: rotate(225deg);
}

.gp-mobile-nav__sub {
	list-style: none;
	margin: 0;
	padding: 0;
	max-height: 0;
	overflow: hidden;
	background: rgba(0, 0, 0, 0.2);
	transition: max-height 0.3s ease;
}

.gp-mobile-nav__sub.is-open {
	max-height: 22rem;
}

.gp-mobile-nav__sub a {
	padding-left: 2.5rem;
	font-size: 0.9375rem;
	color: rgba(255, 255, 255, 0.72);
	border-bottom: 0;
}

/* 子菜单末尾补一条分隔线，与上一级条目视觉收口 */
.gp-mobile-nav__sub li:last-child a {
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

/* 导航与右侧「获取服务咨询」按钮之间拉开间距，
   避免最后一项「联系我们」与金色按钮贴在一起。
   用 `.gp-header__inner` 前缀提升优先级，压过 WordPress 注入的
   `.wp-container-*` 布局类（同为单类选择器，同优先级下顺序不可控）。 */
.gp-header__inner .gp-header__actions {
	display: flex;
	align-items: center;
	gap: 1.9rem;
}

.gp-header__cta {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	padding: 0.66rem 1.25rem;
	font-size: 0.875rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: var(--gp-navy);
	background: var(--gp-gold);
	border-radius: 2px;
	text-decoration: none;
	transition: background-color 0.2s ease, transform 0.2s ease;
}

.gp-header__cta:hover,
.gp-header__cta:focus-visible {
	background: var(--gp-gold-light);
	transform: translateY(-1px);
}

.gp-header__toggle {
	display: none;
	width: 42px;
	height: 42px;
	margin-left: auto;
	padding: 0;
	background: transparent;
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 2px;
	cursor: pointer;
	align-items: center;
	justify-content: center;
}

.gp-header__toggle span,
.gp-header__toggle span::before,
.gp-header__toggle span::after {
	display: block;
	width: 18px;
	height: 2px;
	background: #fff;
	transition: transform 0.25s ease, opacity 0.2s ease;
}

.gp-header__toggle span {
	position: relative;
}

.gp-header__toggle span::before,
.gp-header__toggle span::after {
	content: "";
	position: absolute;
	left: 0;
}

.gp-header__toggle span::before {
	top: -6px;
}

.gp-header__toggle span::after {
	top: 6px;
}

.gp-header__toggle[aria-expanded="true"] span {
	background: transparent;
}

.gp-header__toggle[aria-expanded="true"] span::before {
	transform: translateY(6px) rotate(45deg);
}

.gp-header__toggle[aria-expanded="true"] span::after {
	transform: translateY(-6px) rotate(-45deg);
}

/* ========== 4. Hero 主视觉 ========== */

.gp-hero {
	position: relative;
	min-height: min(88vh, 780px);
	display: flex;
	align-items: center;
	overflow: hidden;
	background: var(--gp-navy-deep);
}

.gp-hero__media {
	position: absolute;
	inset: 0;
	margin: 0;
}

/* ---- 轮播 ---- */

.gp-carousel {
	position: absolute;
	inset: 0;
	overflow: hidden;
}

.gp-carousel__slide {
	position: absolute;
	inset: 0;
	opacity: 0;
	visibility: hidden;
	transition: opacity 1.1s cubic-bezier(0.4, 0, 0.2, 1),
		visibility 0s linear 1.1s;
}

.gp-carousel__slide.is-active {
	opacity: 1;
	visibility: visible;
	z-index: 1;
	transition: opacity 1.1s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s;
}

.gp-carousel__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 45%;
	/* 缓慢推近，避免静态图的呆板感 */
	transform: scale(1);
	transition: transform 7s ease-out;
}

.gp-carousel__slide.is-active .gp-carousel__img {
	transform: scale(1.06);
}

/* 指示点 */
.gp-carousel__nav {
	position: absolute;
	left: 50%;
	bottom: 2.25rem;
	z-index: 4;
	display: flex;
	align-items: center;
	gap: 0.6rem;
	transform: translateX(-50%);
}

.gp-carousel__dot {
	width: 30px;
	height: 4px;
	padding: 0;
	background: rgba(255, 255, 255, 0.32);
	border: 0;
	border-radius: 999px;
	cursor: pointer;
	transition: background-color 0.3s ease, width 0.3s ease;
}

.gp-carousel__dot:hover,
.gp-carousel__dot:focus-visible {
	background: rgba(255, 255, 255, 0.62);
	outline: none;
}

.gp-carousel__dot.is-active {
	width: 48px;
	background: var(--gp-gold);
}

.gp-hero__scrim {
	position: absolute;
	inset: 0;
	z-index: 2;
	/* 底图已套色到品牌藏青体系，与吸顶菜单同色系。
	   遮罩只做两件事：
	   1) 顶部 12% 用菜单色轻压，让接缝平滑过渡
	   2) 左侧压暗，保证白色文字可读；右侧留出画面 */
	background:
		linear-gradient(
			180deg,
			rgba(11, 31, 58, 0.6) 0%,
			rgba(11, 31, 58, 0.18) 12%,
			rgba(11, 31, 58, 0) 30%,
			rgba(6, 20, 40, 0.08) 70%,
			rgba(6, 20, 40, 0.58) 100%
		),
		linear-gradient(
			90deg,
			rgba(6, 20, 40, 0.82) 0%,
			rgba(6, 20, 40, 0.6) 40%,
			rgba(6, 20, 40, 0.12) 100%
		);
}

.gp-hero__inner {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: var(--gp-container);
	margin-inline: auto;
	padding: clamp(6rem, 12vh, 9rem) 1.5rem;
	color: #fff;
}

.gp-hero__badge {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	padding: 0.4rem 0.95rem;
	margin-bottom: 1.75rem;
	font-size: 0.8125rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	color: var(--gp-gold-light);
	border: 1px solid rgba(200, 164, 92, 0.42);
	border-radius: 999px;
	background: rgba(200, 164, 92, 0.08);
}

.gp-hero__badge::before {
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--gp-gold);
	box-shadow: 0 0 0 3px rgba(200, 164, 92, 0.2);
}

.gp-hero__title {
	font-size: clamp(2.1rem, 5vw, 3.5rem);
	font-weight: 700;
	line-height: 1.24;
	letter-spacing: 0.015em;
	color: #fff;
	margin: 0 0 1.5rem;
	max-width: 20em;
}

.gp-hero__title em {
	font-style: normal;
	color: var(--gp-gold-light) !important;
	position: relative;
	white-space: nowrap;
	background-image: linear-gradient(transparent 62%, rgba(200, 164, 92, 0.28) 62%);
}

.gp-hero__text {
	font-size: clamp(1rem, 1.3vw, 1.125rem);
	line-height: 2;
	color: rgba(255, 255, 255, 0.78);
	max-width: 36em;
	margin: 0 0 2.5rem;
}

.gp-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

.gp-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	padding: 0.95rem 2rem;
	font-size: 0.9375rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	border-radius: 2px;
	text-decoration: none;
	border: 1px solid transparent;
	transition: background-color 0.22s ease, color 0.22s ease, border-color 0.22s ease, transform 0.22s ease;
}

.gp-btn--primary {
	background: var(--gp-gold);
	color: var(--gp-navy);
	border-color: var(--gp-gold);
}

.gp-btn--primary:hover,
.gp-btn--primary:focus-visible {
	background: var(--gp-gold-light);
	border-color: var(--gp-gold-light);
	transform: translateY(-2px);
}

.gp-btn--ghost {
	background: transparent;
	color: #fff;
	border-color: rgba(255, 255, 255, 0.34);
}

.gp-btn--ghost:hover,
.gp-btn--ghost:focus-visible {
	border-color: var(--gp-gold-light);
	color: var(--gp-gold-light);
	transform: translateY(-2px);
}

.gp-btn--navy {
	background: var(--gp-navy);
	color: var(--gp-gold-light);
	border-color: var(--gp-navy);
}

.gp-btn--navy:hover,
.gp-btn--navy:focus-visible {
	background: var(--gp-navy-soft);
	border-color: var(--gp-navy-soft);
	transform: translateY(-2px);
}

.gp-btn__arrow {
	transition: transform 0.22s ease;
}

.gp-btn:hover .gp-btn__arrow {
	transform: translateX(4px);
}

/* Hero 数据条：实心藏青，金色微光顶线，营造高端质感 */
.gp-hero__stats {
	position: relative;
	z-index: 2;
	border-top: 1px solid rgba(200, 164, 92, 0.38);
	background:
		radial-gradient(140% 190% at 50% -30%, rgba(200, 164, 92, 0.14) 0%, rgba(200, 164, 92, 0) 60%),
		linear-gradient(180deg, #0a1c34 0%, var(--gp-navy-deep) 100%);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.06),
		0 22px 44px -30px rgba(6, 20, 40, 0.75);
}

.gp-stats {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 0;
	max-width: var(--gp-container);
	margin-inline: auto;
	padding: 2.25rem 1.5rem;
	list-style: none;
}

.gp-stats li {
	margin: 0;
	padding: 0 1.35rem;
	text-align: center;
	border-right: 1px solid rgba(200, 164, 92, 0.18);
}

.gp-stats li:first-child {
	padding-left: 0;
}

.gp-stats li:last-child {
	border-right: 0;
	padding-right: 0;
}

.gp-stats__num {
	display: block;
	font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
	font-size: clamp(1.85rem, 3.2vw, 2.6rem);
	font-weight: 700;
	line-height: 1.1;
	color: var(--gp-gold-light);
	letter-spacing: -0.01em;
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum" 1;
}

/* 数字用香槟金渐变描边，比纯色更有质感（老浏览器自动回退到纯色） */
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
	.gp-stats__num {
		background-image: linear-gradient(180deg, #f7ecd4 0%, var(--gp-gold) 88%);
		-webkit-background-clip: text;
		background-clip: text;
		-webkit-text-fill-color: transparent;
		color: transparent;
	}
}

.gp-stats__num sup {
	font-size: 0.5em;
	vertical-align: super;
	margin-left: 2px;
}

.gp-stats__label {
	display: block;
	margin-top: 0.6rem;
	font-size: 0.875rem;
	color: rgba(226, 233, 242, 0.72);
	letter-spacing: 0.01em;
	text-wrap: balance;
}

/* ========== 5. 通用区块交替底色 ========== */

.gp-section--cream {
	background: var(--gp-cream);
}

.gp-section--navy {
	background: var(--gp-navy);
	color: rgba(255, 255, 255, 0.82);
}

.gp-section--navy h2,
.gp-section--navy h3,
.gp-section--navy h4,
.gp-section--navy .gp-title {
	color: #fff;
}

.gp-section--navy p {
	color: rgba(255, 255, 255, 0.74);
}

/* ========== 6. 公司简介 ========== */

.gp-about__grid {
	display: grid;
	grid-template-columns: 1.05fr 1fr;
	gap: clamp(2.5rem, 5vw, 4.5rem);
	align-items: start;
}

.gp-about__media {
	margin: 0;
	position: relative;
}

.gp-about__media img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: var(--gp-radius);
}

.gp-about__media::after {
	content: "";
	position: absolute;
	right: -14px;
	bottom: -14px;
	width: 62%;
	height: 62%;
	border: 2px solid var(--gp-gold);
	border-radius: var(--gp-radius);
	z-index: -1;
}

.gp-about__badge {
	position: absolute;
	left: -20px;
	bottom: 28px;
	padding: 1.1rem 1.5rem;
	background: var(--gp-navy);
	color: #fff;
	border-radius: var(--gp-radius);
	box-shadow: 0 18px 40px rgba(11, 31, 58, 0.22);
}

.gp-about__badge strong {
	display: block;
	font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
	font-size: 1.65rem;
	font-weight: 700;
	line-height: 1.1;
	color: var(--gp-gold-light);
}

.gp-about__badge span {
	display: block;
	margin-top: 0.25rem;
	font-size: 0.8125rem;
	color: rgba(255, 255, 255, 0.7);
	letter-spacing: 0.06em;
}

.gp-prose p {
	margin: 0 0 1.25rem;
	font-size: 1rem;
	line-height: 2.05;
	color: var(--gp-muted);
}

.gp-prose p:last-child {
	margin-bottom: 0;
}

.gp-prose strong {
	color: var(--gp-navy);
	font-weight: 600;
}

.gp-facts {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1px;
	margin-top: 2.25rem;
	background: var(--gp-line);
	border: 1px solid var(--gp-line);
	border-radius: var(--gp-radius);
	overflow: hidden;
}

.gp-fact {
	padding: 1.1rem 1.25rem;
	background: #fff;
	margin: 0;
}

.gp-fact dt {
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	color: var(--gp-gold);
	margin-bottom: 0.35rem;
}

.gp-fact dd {
	margin: 0;
	font-size: 0.9375rem;
	font-weight: 500;
	line-height: 1.6;
	color: var(--gp-navy);
}

/* ========== 7. 业务板块 ========== */

.gp-biz__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.5rem;
	align-items: stretch;
}

.gp-card {
	position: relative;
	display: flex;
	flex-direction: column;
	height: 100%;
	background: #fff;
	border: 1px solid var(--gp-line);
	border-radius: var(--gp-radius);
	overflow: hidden;
	transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.gp-card:hover {
	transform: translateY(-5px);
	border-color: rgba(200, 164, 92, 0.55);
	box-shadow: 0 22px 48px rgba(11, 31, 58, 0.1);
}

.gp-card__media {
	position: relative;
	height: 210px;
	overflow: hidden;
	background: var(--gp-navy);
}

.gp-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s ease;
}

.gp-card:hover .gp-card__media img {
	transform: scale(1.045);
}

.gp-card__index {
	position: absolute;
	top: 1.1rem;
	left: 1.1rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	color: var(--gp-navy);
	background: var(--gp-gold);
	border-radius: 2px;
	letter-spacing: 0;
}

.gp-card__body {
	flex: 1;
	display: flex;
	flex-direction: column;
	padding: 1.85rem 1.85rem 2rem;
}

/* 要点列表贴底，保证同排卡片内容对齐 */
.gp-card__list {
	margin-top: auto;
}

.gp-card__title {
	display: flex;
	align-items: baseline;
	gap: 0.6rem;
	font-size: 1.25rem;
	font-weight: 600;
	color: var(--gp-navy);
	margin: 0 0 0.85rem;
	line-height: 1.4;
}

.gp-card__title::before {
	content: "";
	flex-shrink: 0;
	align-self: center;
	width: 14px;
	height: 2px;
	background: var(--gp-gold);
}

.gp-card__desc {
	font-size: 0.9375rem;
	line-height: 1.95;
	color: var(--gp-muted);
	margin: 0 0 1.25rem;
}

.gp-card__list {
	list-style: none;
	margin: 0;
	padding: 1.15rem 0 0;
	border-top: 1px dashed var(--gp-line);
}

.gp-card__list li {
	position: relative;
	padding-left: 1.05rem;
	margin-bottom: 0.5rem;
	font-size: 0.875rem;
	line-height: 1.75;
	color: var(--gp-muted);
}

.gp-card__list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.72em;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: var(--gp-gold);
}

.gp-card__list li:last-child {
	margin-bottom: 0;
}

/* ========== 8. 流程步骤 ========== */

.gp-flow {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1rem;
	list-style: none;
	margin: 0;
	padding: 0;
	counter-reset: gp-step;
}

.gp-flow li {
	position: relative;
	margin: 0;
	padding: 1.75rem 1.15rem 1.5rem;
	background: rgba(255, 255, 255, 0.045);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: var(--gp-radius);
	text-align: center;
	counter-increment: gp-step;
}

.gp-flow li::before {
	content: "0" counter(gp-step);
	display: block;
	font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1;
	color: var(--gp-gold);
	margin-bottom: 0.85rem;
	opacity: 0.9;
}

/* 连接线只在同一行的相邻步骤之间显示 */
.gp-flow li:not(:nth-child(3n))::after {
	content: "";
	position: absolute;
	top: 50%;
	right: -0.55rem;
	width: 0.55rem;
	height: 1px;
	background: rgba(200, 164, 92, 0.45);
}

.gp-flow__title {
	display: block;
	font-size: 1rem;
	font-weight: 600;
	color: #fff;
	margin-bottom: 0.4rem;
}

.gp-flow__desc {
	display: block;
	font-size: 0.8125rem;
	line-height: 1.75;
	color: rgba(255, 255, 255, 0.58);
}

/* ========== 9. 团队/优势 ========== */

.gp-strengths {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
}

.gp-strength {
	padding: 2rem 1.75rem;
	background: #fff;
	border: 1px solid var(--gp-line);
	border-top: 3px solid var(--gp-gold);
	border-radius: var(--gp-radius);
	margin: 0;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.gp-strength:hover {
	transform: translateY(-4px);
	box-shadow: 0 18px 40px rgba(11, 31, 58, 0.08);
}

.gp-strength__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	margin-bottom: 1.15rem;
	background: var(--gp-cream);
	border-radius: 2px;
	color: var(--gp-navy);
}

.gp-strength__icon svg {
	width: 22px;
	height: 22px;
}

.gp-strength h3 {
	font-size: 1.125rem;
	font-weight: 600;
	color: var(--gp-navy);
	margin: 0 0 0.65rem;
	line-height: 1.5;
}

.gp-strength p {
	font-size: 0.9375rem;
	line-height: 1.9;
	color: var(--gp-muted);
	margin: 0;
}

/* 团队数字 */
.gp-team {
	display: grid;
	grid-template-columns: 0.9fr 1.1fr;
	gap: clamp(2rem, 3.5vw, 3rem);
	align-items: start;
}

.gp-team__media {
	margin: 0;
	position: relative;
	border-radius: var(--gp-radius);
	overflow: hidden;
	position: sticky;
	top: 100px;
}

.gp-team__media img {
	width: 100%;
	height: auto;
	display: block;
}

.gp-team__quote {
	margin: 0;
	padding: 1.5rem 1.75rem;
	background: var(--gp-cream);
	border-left: 3px solid var(--gp-gold);
	border-radius: 0 var(--gp-radius) var(--gp-radius) 0;
}

.gp-team__quote p {
	margin: 0 0 0.9rem;
	font-size: 0.9375rem;
	line-height: 1.95;
	color: var(--gp-muted);
}

.gp-team__quote cite {
	font-style: normal;
	font-size: 0.8125rem;
	color: var(--gp-gold);
	letter-spacing: 0.06em;
}

.gp-cite {
	margin: 0 !important;
	font-size: 0.8125rem;
	color: var(--gp-gold) !important;
	letter-spacing: 0.06em;
	font-style: normal;
}

/* 深色区块内的优势卡：反色处理 */
.gp-section--navy .gp-strength {
	background: rgba(255, 255, 255, 0.045);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.gp-section--navy .gp-strength h3 {
	color: #fff;
}

.gp-section--navy .gp-strength p {
	color: rgba(255, 255, 255, 0.66);
}

.gp-section--navy .gp-strength__icon {
	background: rgba(200, 164, 92, 0.14);
	color: var(--gp-gold-light);
}

/* ========== 10. 服务保障 ========== */

.gp-guarantee {
	background: #fff;
	border: 1px solid var(--gp-line);
	border-radius: var(--gp-radius);
	overflow: hidden;
}

.gp-guarantee__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}

.gp-guarantee__item {
	display: flex;
	gap: 1.25rem;
	padding: 2.1rem 2rem;
	border-right: 1px solid var(--gp-line);
	border-bottom: 1px solid var(--gp-line);
}

.gp-guarantee__item:nth-child(2n) {
	border-right: 0;
}

.gp-guarantee__item:nth-last-child(-n + 2) {
	border-bottom: 0;
}

.gp-guarantee__no {
	flex-shrink: 0;
	font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
	font-size: 1.75rem;
	font-weight: 700;
	line-height: 1;
	color: var(--gp-gold);
	opacity: 0.45;
}

.gp-guarantee__item h3 {
	font-size: 1.0625rem;
	font-weight: 600;
	color: var(--gp-navy);
	margin: 0 0 0.55rem;
	line-height: 1.5;
}

.gp-guarantee__item p {
	font-size: 0.9375rem;
	line-height: 1.9;
	color: var(--gp-muted);
	margin: 0;
}

/* 合作机构 logo 墙（文字标） */
.gp-logowall {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.9rem;
	margin-top: clamp(2.5rem, 5vw, 3.5rem);
	list-style: none;
	padding: 0;
}

.gp-logowall li {
	margin: 0;
	padding: 0.7rem 1.35rem;
	font-size: 0.9375rem;
	font-weight: 500;
	letter-spacing: 0.06em;
	color: rgba(255, 255, 255, 0.7);
	background: rgba(255, 255, 255, 0.045);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 2px;
	transition: color 0.2s ease, border-color 0.2s ease;
}

.gp-logowall li:hover {
	color: var(--gp-gold-light);
	border-color: rgba(200, 164, 92, 0.45);
}

/* ========== 12. 企业文化 ========== */

.gp-culture {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
}

.gp-culture__item {
	padding: 2.5rem 2rem;
	background: var(--gp-cream);
	border-radius: var(--gp-radius);
	border-left: 3px solid var(--gp-gold);
	margin: 0;
}

.gp-culture__item dt {
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.2em;
	color: var(--gp-gold);
	margin-bottom: 0.9rem;
}

.gp-culture__item dd {
	margin: 0;
	font-family: "Songti SC", "SimSun", Georgia, serif;
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 1.75;
	color: var(--gp-navy);
}

.gp-mission {
	margin-top: 1.5rem;
	padding: clamp(2.25rem, 4vw, 3.25rem) clamp(1.75rem, 4vw, 3rem);
	background: var(--gp-navy);
	border-radius: var(--gp-radius);
	text-align: center;
}

.gp-mission p {
	margin: 0;
	font-family: "Songti SC", "SimSun", Georgia, serif;
	font-size: clamp(1.25rem, 2.6vw, 1.875rem);
	font-weight: 600;
	line-height: 1.7;
	color: var(--gp-gold-light);
	letter-spacing: 0.04em;
}

/* 发展历程时间线 */
.gp-timeline {
	margin-top: clamp(3.5rem, 7vw, 5rem);
}

.gp-milestones {
	list-style: none;
	margin: 0;
	padding: 0 0 0 1.9rem;
	border-left: 2px solid var(--gp-line);
}

.gp-milestone {
	position: relative;
	margin: 0 0 2.25rem;
}

.gp-milestone:last-child {
	margin-bottom: 0;
}

.gp-milestone__dot {
	position: absolute;
	left: -1.9rem;
	top: 0.35rem;
	width: 13px;
	height: 13px;
	margin-left: -5.5px;
	border-radius: 50%;
	background: var(--gp-gold);
	box-shadow: 0 0 0 4px var(--wp--preset--color--cream, #f7f4ee);
}

.gp-milestone h3 {
	font-size: 1.0625rem;
	font-weight: 600;
	color: var(--gp-navy);
	margin: 0 0 0.4rem;
	line-height: 1.5;
}

.gp-milestone p {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.9;
	color: var(--gp-muted);
}

/* ========== 13. 荣誉资质 ========== */

/* 无框简约画廊：证书图直接浮在米色底上，去掉外层白卡；3 列、末行居中 */
.gp-honors {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 2.25rem 1.75rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.gp-honor {
	flex: 0 0 calc((100% - 3.5rem) / 3 - 0.5px);   /* 3 张 / 行，-0.5px 防 sub-pixel 换行 */
	max-width: calc((100% - 3.5rem) / 3);
	margin: 0;
	padding: 0;
	background: none;
	border: 0;
	box-shadow: none;
}

/* 证书图兼容横版(840x600=7:5)与竖版：统一图片区高度，完整显示不裁切，
   竖版自动左右留白，保证同行名称对齐。阴影做“浮起”质感，不加第二层边框 */
.gp-honor__fig {
	margin: 0;
	overflow: visible;
	border-radius: 0;
	background: none;
}

.gp-honor__fig img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 7 / 5;
	object-fit: contain;
	object-position: center;
	background-color: #f4eee0;     /* 与证书图同色，竖版留白不突兀 */
	border-radius: 6px;
	box-shadow:
		0 0 0 1px rgba(11, 31, 58, 0.06),
		0 14px 30px rgba(11, 31, 58, 0.13),
		0 3px 8px rgba(11, 31, 58, 0.07);
	transition: transform 0.28s ease, box-shadow 0.28s ease;
}

.gp-honor:hover .gp-honor__fig img {
	transform: translateY(-5px);
	box-shadow:
		0 0 0 1px rgba(200, 164, 92, 0.5),
		0 26px 50px rgba(11, 31, 58, 0.2),
		0 6px 14px rgba(11, 31, 58, 0.1);
}

/* 名称：证书图下方小字 + 金色短横线，随图一起构成卡片 */
.gp-honor__name {
	margin: 0;
	padding: 0.95rem 0.3rem 0;
	border-top: 0;
	font-size: 1rem;
	line-height: 1.5;
	font-weight: 600;
	color: var(--gp-navy-deep);
	text-align: center;
	letter-spacing: 0.02em;
}

.gp-honor__name::before {
	content: "";
	display: block;
	width: 24px;
	height: 2px;
	margin: 0 auto 0.6rem;
	background: #c8a45c;
	opacity: 0.85;
}

/* ========== 14. 联系 CTA ========== */

.gp-cta {
	position: relative;
	overflow: hidden;
	background: var(--gp-navy-deep);
	isolation: isolate;
}

.gp-cta__bg {
	position: absolute;
	inset: 0;
	z-index: -1;
	background-image: url("../assets/images/city.jpg");
	background-size: cover;
	background-position: center;
	opacity: 0.26;
}

.gp-cta::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(100deg, rgba(6, 20, 40, 0.96) 30%, rgba(6, 20, 40, 0.72) 100%);
}

.gp-cta__inner {
	display: grid;
	grid-template-columns: 1.15fr 1fr;
	gap: clamp(2rem, 5vw, 4rem);
	align-items: center;
}

.gp-cta__title {
	font-size: clamp(1.6rem, 3.2vw, 2.35rem);
	font-weight: 700;
	line-height: 1.35;
	color: #fff;
	margin: 0 0 1rem;
}

.gp-cta__text {
	font-size: 1rem;
	line-height: 2;
	color: rgba(255, 255, 255, 0.72);
	margin: 0 0 2rem;
}

.gp-cta__list {
	display: grid;
	gap: 0.85rem;
	list-style: none;
	margin: 0;
	padding: 1.75rem;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.11);
	border-radius: var(--gp-radius);
	backdrop-filter: blur(4px);
}

.gp-cta__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.85rem;
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.7;
	color: #fff;
}

.gp-cta__list a,
.gp-cta__list a:link,
.gp-cta__list a:visited,
.gp-cta__list a:hover {
	color: #fff;
}

.gp-cta__list svg {
	flex-shrink: 0;
	width: 18px;
	height: 18px;
	margin-top: 0.2rem;
	color: var(--gp-gold);
}

.gp-cta__list strong {
	display: block;
	color: #fff;
	font-weight: 600;
	margin-bottom: 0.15rem;
}

/* ========== 15. 页脚 ========== */

.gp-footer {
	background: var(--gp-navy-deep);
	color: rgba(255, 255, 255, 0.6);
	font-size: 0.875rem;
}

.gp-footer__main {
	display: grid;
	grid-template-columns: 1.4fr 1.5fr 1.1fr;
	gap: 2.5rem;
	padding: clamp(3rem, 6vw, 4.5rem) 0 2.5rem;
}

.gp-footer .gp-brand {
	margin-bottom: 1.15rem;
}

.gp-footer__intro p {
	margin: 0;
	font-size: 0.875rem;
	line-height: 1.95;
	color: rgba(255, 255, 255, 0.52);
	max-width: 26em;
}

.gp-footer h4 {
	font-size: 0.875rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	color: #fff;
	margin: 0 0 1.15rem;
}

.gp-footer ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.gp-footer li {
	margin-bottom: 0.6rem;
}

.gp-footer li:last-child {
	margin-bottom: 0;
}

/* 快速导航：一排 3 个（6 项 → 3 列 × 2 行） */
.gp-footer__links {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: 0.85rem;
	row-gap: 0.7rem;
}

.gp-footer__links li {
	margin-bottom: 0;
}

.gp-footer a {
	color: rgba(255, 255, 255, 0.58);
	text-decoration: none;
	transition: color 0.2s ease;
}

.gp-footer a:hover,
.gp-footer a:focus-visible {
	color: var(--gp-gold-light);
}

.gp-footer__bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.09);
}

.gp-footer__bottom-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 1.5rem 0;
	font-size: 0.8125rem;
	color: rgba(255, 255, 255, 0.42);
}

/* ========== 16. 回到顶部 ========== */

.gp-top {
	position: fixed;
	right: 1.5rem;
	bottom: 1.5rem;
	z-index: 90;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	background: var(--gp-navy);
	color: var(--gp-gold-light);
	border: 1px solid rgba(200, 164, 92, 0.3);
	border-radius: 2px;
	text-decoration: none;
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease, background-color 0.2s ease;
}

.gp-top.is-visible {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.gp-top:hover {
	background: var(--gp-gold);
	color: var(--gp-navy);
}

.gp-top svg {
	width: 18px;
	height: 18px;
}

/* ========== 17. 内页通用 ========== */

/* --- 17a. 关于我们页：页头视觉 --- */

.gp-phero {
	position: relative;
	isolation: isolate;
	background: var(--gp-navy-deep);
	color: #fff;
	overflow: hidden;
}

/* z-index 必须是 -2：遮罩是 ::before（-1），若底图也是 -1，
   底图按 DOM 顺序后画，会把遮罩整个盖住，压暗完全失效。 */
.gp-phero__bg {
	position: absolute;
	inset: 0;
	z-index: -2;
	background-image: url("../assets/images/about-hero.jpg");
	background-size: cover;
	/* 这张是黄昏图，下半部城市灯火很亮。取偏上的位置，避开高光区。 */
	background-position: center 26%;
}

/* 顶部用菜单色压一层，让吸顶菜单与页头无缝衔接。
   左侧压得比首页更重：这张底图本身是黄昏暖调，不压住会和藏青打架。 */
.gp-phero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background:
		linear-gradient(
			180deg,
			rgba(11, 31, 58, 0.9) 0%,
			rgba(11, 31, 58, 0.4) 16%,
			rgba(6, 20, 40, 0.12) 42%,
			rgba(6, 20, 40, 0.66) 100%
		),
		linear-gradient(
			90deg,
			rgba(6, 20, 40, 0.9) 0%,
			rgba(6, 20, 40, 0.78) 40%,
			rgba(6, 20, 40, 0.34) 78%,
			rgba(6, 20, 40, 0.12) 100%
		);
}

/* 文字区底色由 .gp-phero::before 的横向渐变承担，这里不再叠第二层，
   避免两层半透明叠加后左侧死黑。 */
.gp-phero__inner {
	position: relative;
	z-index: 1;
	padding: clamp(2.5rem, 6vw, 4.5rem) 0 clamp(3rem, 7vw, 5rem);
}

.gp-breadcrumb {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin: 0 0 2rem;
	padding: 0;
	list-style: none;
	font-size: 0.8125rem;
	color: rgba(255, 255, 255, 0.55);
	letter-spacing: 0.04em;
}

.gp-breadcrumb a {
	color: rgba(255, 255, 255, 0.55);
	text-decoration: none;
	transition: color 0.2s ease;
}

.gp-breadcrumb a:hover,
.gp-breadcrumb a:focus-visible {
	color: var(--gp-gold-light);
}

.gp-phero .gp-eyebrow {
	color: var(--gp-gold-light);
}

.gp-phero__title {
	margin: 0 0 1.15rem;
	font-size: clamp(1.85rem, 4.2vw, 3.1rem);
	font-weight: 700;
	line-height: 1.3;
	color: #fff;
	letter-spacing: 0.01em;
	text-wrap: balance;
	text-shadow: 0 2px 18px rgba(6, 20, 40, 0.5);
}

.gp-phero__text {
	max-width: 36em;
	margin: 0;
	font-size: clamp(0.9375rem, 1.5vw, 1.0625rem);
	line-height: 1.95;
	color: rgba(255, 255, 255, 0.86);
	text-shadow: 0 1px 12px rgba(6, 20, 40, 0.55);
}

/* --- 17b. 关于我们页：公司简介 --- */

/* align-items:stretch 很关键：默认值 start 会让网格项按内容宽度收缩，
   而背景图占位 div 没有内容，宽度会塌成 0，图片就完全不显示。 */
.gp-about-page__lead {
	display: grid;
	grid-template-columns: 0.86fr 1.14fr;
	gap: clamp(2rem, 4vw, 3.5rem);
	align-items: stretch;
}

/* 纵向列容器：WordPress 的 is-layout-flow 会按内容宽度收缩子项 */
.gp-about-page__col {
	width: 100%;
	align-self: stretch;
}

/* WordPress 的 is-layout-flow 会给纵向 flex 容器设 align-items，
   使子项按内容宽度收缩；背景图占位元素没有内容，宽度会塌成 0。显式给宽度。 */
.gp-about-page__media {
	width: 100%;
}

/* 办公环境配图：与首页同样用 CSS 背景注入，避免在 .html 部件里写 PHP */
.gp-about-page__figure {
	width: 100%;
	aspect-ratio: 4 / 3;
	background-image: url("../assets/images/about-office.jpg");
	background-size: cover;
	background-position: center;
	border-radius: var(--gp-radius);
	box-shadow: 0 18px 44px rgba(11, 31, 58, 0.14);
}

/* --- 17c. 关于我们页：股东方 --- */

/* 左右分栏：左=金色竖脊 + 品牌名（垂直居中），右=导语 + 正文。
   左栏金色竖线通高，把左侧的留白解释成结构，而不是空。 */
.gp-share__grid {
	display: grid;
	grid-template-columns: 0.88fr 1.12fr;
	gap: clamp(2.5rem, 5vw, 4.5rem);
	align-items: stretch;
}

.gp-share__brand {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding-left: clamp(1.5rem, 3vw, 2.25rem);
	border-left: 2px solid rgba(200, 164, 92, 0.5);
}

/* 长公司名在窄栏内折行，字号略收，行距放松 */
.gp-share__brand .gp-title {
	font-size: clamp(1.35rem, 2.4vw, 1.85rem);
	line-height: 1.52;
	margin-bottom: 0;
	text-wrap: pretty;
}

.gp-share__brand .gp-head {
	margin-bottom: 0;
}

.gp-share__main {
	display: flex;
	flex-direction: column;
}

/* 右栏导语升一档当 standfirst，底部一条金色细线与正文分界 */
.gp-share__main .gp-lead {
	font-size: 1.125rem;
	line-height: 1.9;
	margin: 0 0 clamp(1.5rem, 3vw, 2rem);
	padding-bottom: clamp(1.5rem, 3vw, 2rem);
	border-bottom: 1px solid rgba(200, 164, 92, 0.3);
}

.gp-share__mainbody p {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.95;
}

.gp-share__mainbody p + p {
	margin-top: 1rem;
}

/* 股东方区块下方的通栏建筑图，用作深浅区块之间的过渡 */
.gp-about-page__band {
	margin-top: clamp(3rem, 6vw, 4.5rem);
	aspect-ratio: 21 / 6;
	background-image:
		linear-gradient(180deg, rgba(6, 20, 40, 0.35), rgba(6, 20, 40, 0.1)),
		url("../assets/images/about-tower.jpg");
	background-size: cover;
	background-position: center 40%;
	border-radius: var(--gp-radius);
}

@media (max-width: 900px) {
	.gp-about-page__band {
		aspect-ratio: 16 / 7;
		background-position: center 45%;
	}
}

/* --- 17d. 关于我们页：三大能力 --- */

.gp-about-page__mission {
	max-width: 50em;
	margin-bottom: clamp(2.5rem, 5vw, 3.5rem);
}

.gp-about-page__caps {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
}

.gp-about-page__cap {
	position: relative;
	padding: 2rem 1.75rem 1.9rem;
	background: #fff;
	border: 1px solid var(--gp-line);
	border-radius: var(--gp-radius);
	transition: border-color 0.28s ease, transform 0.28s ease;
}

.gp-about-page__cap:hover {
	border-color: rgba(200, 164, 92, 0.55);
	transform: translateY(-3px);
}

.gp-about-page__capno {
	display: block;
	margin-bottom: 1.1rem;
	font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	color: var(--gp-gold);
}

.gp-about-page__cap h3 {
	margin: 0 0 0.7rem;
	font-size: 1.1875rem;
	font-weight: 600;
	color: var(--gp-navy);
}

.gp-about-page__cap p {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.85;
	color: var(--gp-muted);
}

/* --- 17e. 关于我们页：价值观与使命 --- */

/* 顺序：企业使命在上、三条价值观在下 —— 区块间距挂到使命条上 */
.gp-about-page__valuesgrid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1px;
	margin-bottom: 0;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: var(--gp-radius);
	overflow: hidden;
}

.gp-about-page__valuesitem {
	padding: 2rem 1.75rem;
	background: var(--gp-navy);
}

.gp-about-page__valno {
	display: block;
	margin-bottom: 0.95rem;
	font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	color: var(--gp-gold);
}

.gp-about-page__valuesitem h3 {
	margin: 0 0 0.65rem;
	font-size: 1.1875rem;
	font-weight: 600;
	color: #fff;
}

.gp-about-page__valuesitem p {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.85;
	color: rgba(255, 255, 255, 0.62);
}

.gp-about-page__missionband {
	margin-bottom: clamp(3rem, 6vw, 4.5rem);
	padding: clamp(2.5rem, 5vw, 3.5rem) clamp(1.75rem, 4vw, 3rem);
	text-align: center;
	border: 1px solid rgba(200, 164, 92, 0.28);
	border-radius: var(--gp-radius);
	background: linear-gradient(160deg, rgba(200, 164, 92, 0.08), transparent 62%);
}

.gp-about-page__missionlabel {
	display: inline-block;
	margin-bottom: 1.15rem;
	padding: 0.32rem 0.9rem;
	font-size: 0.75rem;
	letter-spacing: 0.2em;
	color: var(--gp-gold-light);
	border: 1px solid rgba(200, 164, 92, 0.4);
	border-radius: 999px;
}

.gp-about-page__missiontext {
	margin: 0 0 1.1rem;
	font-family: "Songti SC", "SimSun", Georgia, serif;
	font-size: clamp(1.35rem, 3.4vw, 2.35rem);
	font-weight: 600;
	line-height: 1.6;
	color: #fff;
	letter-spacing: 0.03em;
}

.gp-about-page__missiontext em {
	font-style: normal;
	color: var(--gp-gold-light);
}

.gp-about-page__vision {
	margin: 0;
	font-size: 0.9375rem;
	letter-spacing: 0.06em;
	color: rgba(255, 255, 255, 0.58);
}

.gp-title--invert {
	color: #fff;
}

.gp-lead--invert {
	color: rgba(255, 255, 255, 0.72);
}

.gp-prose--invert,
.gp-prose--invert p {
	color: rgba(255, 255, 255, 0.72);
}

.gp-prose--invert strong {
	color: #fff;
}

.gp-head--invert .gp-eyebrow {
	color: var(--gp-gold-light);
}

/* --- 17f. 资讯：首页卡片 --- */

.gp-news__head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 2rem;
	flex-wrap: wrap;
	margin-bottom: clamp(2.25rem, 4vw, 3rem);
}

.gp-news__more {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding-bottom: 0.35rem;
	font-size: 0.9375rem;
	color: var(--gp-navy);
	text-decoration: none;
	border-bottom: 1px solid rgba(11, 31, 58, 0.3);
	transition: color 0.2s ease, border-color 0.2s ease;
}

.gp-news__more:hover,
.gp-news__more:focus-visible {
	color: var(--gp-gold);
	border-color: var(--gp-gold);
}

/* Query 容器本身是单个直接子元素，真正的网格要落在 post-template 上 */
.gp-news__grid .wp-block-post-template {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
	align-items: stretch;
}

.gp-news__grid .gp-newscard {
	/* post-template 是 grid item，需要显式拉伸才能与同行等高 */
	align-self: stretch;
}

.gp-newscard {
	display: flex;
	flex-direction: column;
	height: 100%;
	background: #fff;
	border: 1px solid var(--gp-line);
	border-radius: var(--gp-radius);
	overflow: hidden;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.gp-newscard:hover {
	transform: translateY(-4px);
	border-color: rgba(200, 164, 92, 0.5);
	box-shadow: 0 16px 36px rgba(11, 31, 58, 0.1);
}

.gp-newscard__media {
	position: relative;
	margin: 0;
	overflow: hidden;
}

.gp-newscard__thumb img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	transition: transform 0.5s ease;
}

.gp-newscard:hover .gp-newscard__thumb img {
	transform: scale(1.05);
}

.gp-newscard__cat {
	position: absolute;
	top: 0.9rem;
	left: 0.9rem;
	z-index: 1;
}

.gp-newscard__cat a,
.gp-newsrow__cat a {
	display: inline-block;
	padding: 0.28rem 0.75rem;
	font-size: 0.6875rem;
	letter-spacing: 0.12em;
	color: var(--gp-navy-deep);
	background: var(--gp-gold-light);
	border-radius: 999px;
	text-decoration: none;
}

.gp-newscard__body {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 1.5rem 1.5rem 1.6rem;
}

.gp-newscard__date {
	display: block;
	margin-bottom: 0.6rem;
	font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
	font-size: 0.75rem;
	letter-spacing: 0.08em;
	color: var(--gp-muted);
}

.gp-newscard__title {
	margin: 0 0 0.75rem;
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 1.6;
	color: var(--gp-navy);
	transition: color 0.2s ease;
}

.gp-newscard:hover .gp-newscard__title {
	color: var(--gp-gold);
}

.gp-newscard__excerpt {
	margin: 0 0 1.25rem;
	font-size: 0.9375rem;
	line-height: 1.85;
	color: var(--gp-muted);
}

.gp-newscard__link,
.gp-newsrow__link {
	margin-top: auto;
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	font-size: 0.875rem;
	color: var(--gp-navy);
	text-decoration: none;
	transition: color 0.2s ease, gap 0.2s ease;
}

.gp-newscard__link:hover,
.gp-newscard__link:focus-visible,
.gp-newsrow__link:hover,
.gp-newsrow__link:focus-visible {
	color: var(--gp-gold);
	gap: 0.7rem;
}

/* --- 17g. 资讯：列表页 --- */

.gp-phero--slim .gp-phero__inner {
	padding: clamp(2.25rem, 5vw, 3.5rem) 0 clamp(2.5rem, 5vw, 3.5rem);
}

/* --- 17g2. 资讯：文章详情页 hero（底图按分类自动切换） --- */

/* 文章页 hero 与分类/列表页同款，只有底图跟着分类走。
   ⚠️ WordPress 只在分类归档页输出 category-* 类，单篇文章没有，
   所以分类标识由 functions.php 的 gp-postcat-* 补上；两类选择器都写上，
   归档页与所属分类文章就能用同一张底图。
   ⚠️ 必须带 body 前缀：底图规则要压过基础 .gp-phero__bg 的 about-hero，
   书写顺序不受控时靠 (0,3,1) > (0,2,0) 取胜。 */
.gp-phero--article .gp-phero__bg {
	background-image: url("../assets/images/meeting.jpg");
	background-position: center 42%;
}

body.gp-postcat-policy .gp-phero .gp-phero__bg,
body.category-policy .gp-phero .gp-phero__bg {
	background-image: url("../assets/images/court.jpg");
	background-position: center 32%;
}

body.gp-postcat-market .gp-phero .gp-phero__bg,
body.category-market .gp-phero .gp-phero__bg {
	background-image: url("../assets/images/city.jpg");
	background-position: center 42%;
}

body.gp-postcat-practice .gp-phero .gp-phero__bg,
body.category-practice .gp-phero .gp-phero__bg {
	background-image: url("../assets/images/handshake.jpg");
	background-position: center 48%;
}

/* 分类名当作 hero 眉标，沿用 .gp-eyebrow 的视觉语言 */
.gp-phero__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 0.6em;
	margin: 0 0 0.9rem;
	font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.16em;
	color: var(--gp-gold-light);
}

.gp-phero__eyebrow::before {
	content: "";
	width: 28px;
	height: 1px;
	background: currentColor;
	opacity: 0.7;
}

.gp-phero__eyebrow a {
	color: inherit;
	text-decoration: none;
	transition: color 0.2s ease;
}

.gp-phero__eyebrow a:hover,
.gp-phero__eyebrow a:focus-visible {
	color: #fff;
}

/* hero 是深色底，信息条换成浅色才看得清 */
.gp-phero--article .gp-artmeta {
	margin-top: 1.35rem;
	color: rgba(255, 255, 255, 0.74);
}

.gp-phero--article .gp-artmeta__sep {
	color: rgba(255, 255, 255, 0.32);
}

.gp-phero--article a.gp-artmeta__item:hover,
.gp-phero--article a.gp-artmeta__item:focus-visible {
	color: var(--gp-gold-light);
}

/* --- 17g1. 资讯：列表页分类标签栏（居中药丸式） --- */

.gp-newstabs {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 0.75rem;
	margin: 0 0 2.5rem;
}

.gp-newstabs__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.6rem 1.5rem;
	font-size: 0.9375rem;
	letter-spacing: 0.02em;
	line-height: 1.2;
	color: var(--gp-navy);
	background: #fff;
	border: 1px solid var(--gp-line);
	border-radius: 999px;
	text-decoration: none;
	transition: color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}

.gp-newstabs__link:hover,
.gp-newstabs__link:focus-visible {
	color: var(--gp-gold);
	border-color: var(--gp-gold);
}

.gp-newstabs__link.is-active {
	font-weight: 600;
	color: #fff;
	background: var(--gp-navy);
	border-color: var(--gp-navy);
}

.gp-newstabs__link.is-active:hover {
	color: #fff;
}

@media (max-width: 640px) {
	.gp-newstabs {
		gap: 0.5rem 0.6rem;
	}

	.gp-newstabs__link {
		padding: 0.5rem 1.1rem;
		font-size: 0.875rem;
	}
}

.gp-newslist {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.gp-newsrow {
	display: grid;
	grid-template-columns: 0.36fr 0.64fr;
	gap: clamp(1.5rem, 3vw, 2.5rem);
	align-items: center;
	padding: clamp(1.25rem, 2.5vw, 1.75rem);
	background: #fff;
	border: 1px solid var(--gp-line);
	border-radius: var(--gp-radius);
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.gp-newsrow:hover {
	transform: translateY(-3px);
	border-color: rgba(200, 164, 92, 0.5);
	box-shadow: 0 14px 32px rgba(11, 31, 58, 0.09);
}

.gp-newsrow__media {
	margin: 0;
	overflow: hidden;
	border-radius: 3px;
}

.gp-newsrow__thumb img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
}

.gp-newsrow__meta {
	align-items: center;
	gap: 0.9rem;
	margin-bottom: 0.75rem;
}

.gp-newsrow__date {
	font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
	font-size: 0.75rem;
	letter-spacing: 0.08em;
	color: var(--gp-muted);
}

.gp-newsrow__title {
	margin: 0 0 0.75rem;
	font-size: clamp(1.125rem, 2vw, 1.4375rem);
	font-weight: 600;
	line-height: 1.55;
	color: var(--gp-navy);
}

.gp-newsrow:hover .gp-newsrow__title {
	color: var(--gp-gold);
}

.gp-newsrow__excerpt {
	margin: 0 0 1.25rem;
	font-size: 0.9375rem;
	line-height: 1.85;
	color: var(--gp-muted);
}

/* --- 17h. 资讯：详情页（单栏 · 标题入正文） --- */

.gp-article {
	background: var(--gp-cream);
}

/* 主体：单栏，标题与正文同处一个阅读栏内 */
.gp-article__layout {
	max-width: 46rem;
	margin-inline: auto;
}

.gp-article__main {
	min-width: 0;
}

/* 面包屑 */

.gp-breadcrumb {
	margin-bottom: clamp(1.5rem, 3vw, 2.25rem);
	font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
	font-size: 0.8125rem;
	letter-spacing: 0.04em;
	color: var(--gp-muted);
}

.gp-breadcrumb a {
	color: var(--gp-muted);
	text-decoration: none;
	transition: color 0.2s ease;
}

.gp-breadcrumb a:hover,
.gp-breadcrumb a:focus-visible {
	color: var(--gp-gold);
}

.gp-breadcrumb span[aria-hidden] {
	margin: 0 0.5rem;
	color: rgba(93, 107, 125, 0.5);
}

/* 信息条 */
.gp-artmeta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.7rem;
	font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
	font-size: 0.8125rem;
	color: var(--gp-muted);
}

.gp-artmeta__item {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	color: inherit;
	text-decoration: none;
}

a.gp-artmeta__item:hover,
a.gp-artmeta__item:focus-visible {
	color: var(--gp-gold);
}

.gp-artmeta__item--cat {
	display: none;
}

.gp-artmeta__sep {
	color: rgba(93, 107, 125, 0.42);
}

/* 封面图：与阅读栏同宽 */
.gp-article__coverwrap {
	margin: clamp(1.75rem, 3.5vw, 2.5rem) 0 0;
}

.gp-article__cover img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	border-radius: var(--gp-radius);
	box-shadow: 0 6px 20px rgba(11, 31, 58, 0.08);
}

/* 正文排版 */

.gp-article__main > * {
	max-width: 100%;
}

.gp-article__main p {
	margin: 0 0 1.6rem;
	font-size: 1.0625rem;
	line-height: 2.05;
	color: var(--gp-ink);
	text-align: justify;
}

/* 首段：与普通段落一致，不做首字下沉 */
.gp-article__main p.gp-lede {
	margin-bottom: 1.6rem;
}

/* 章节标题：普通标题，无装饰竖线 */
.gp-article__main h2 {
	margin: 3rem 0 1.1rem;
	font-size: clamp(1.25rem, 2.2vw, 1.5rem);
	font-weight: 600;
	line-height: 1.5;
	color: var(--gp-navy);
	letter-spacing: 0.01em;
}

.gp-article__main h3 {
	margin: 2.25rem 0 0.9rem;
	font-size: 1.125rem;
	font-weight: 600;
	color: var(--gp-navy);
}

.gp-article__main a:not(.gp-articlecta__btn) {
	color: var(--gp-navy);
	text-decoration: underline;
	text-decoration-color: rgba(200, 164, 92, 0.75);
	text-underline-offset: 4px;
	text-decoration-thickness: 1px;
	transition: color 0.2s ease;
}

.gp-article__main a:not(.gp-articlecta__btn):hover,
.gp-article__main a:not(.gp-articlecta__btn):focus-visible {
	color: var(--gp-gold);
}

/* 引用块：标准左线引用，无大引号与重阴影 */
.gp-article__main blockquote {
	margin: 2.25rem 0;
	padding: 0.2rem 0 0.2rem 1.5rem;
	border-left: 3px solid var(--gp-gold);
}

.gp-article__main blockquote p {
	margin: 0;
	font-family: "Songti SC", "SimSun", Georgia, serif;
	font-size: 1.0625rem;
	line-height: 1.9;
	color: var(--gp-navy);
	text-align: left;
}

/* 列表 */
.gp-article__main ul,
.gp-article__main ol {
	margin: 0 0 1.75rem;
	padding-left: 1.6rem;
}

.gp-article__main li {
	margin-bottom: 0.75rem;
	font-size: 1.0625rem;
	line-height: 1.95;
	color: var(--gp-ink);
}

.gp-article__main ul li::marker {
	color: var(--gp-gold);
}

.gp-article__main ol li::marker {
	font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
	font-weight: 700;
	color: var(--gp-gold);
}

.gp-article__main li strong {
	color: var(--gp-navy);
}

/* 表格 */
.gp-article__main table {
	width: 100%;
	margin: 2.25rem 0;
	border-collapse: collapse;
	font-size: 0.9375rem;
}

.gp-article__main th,
.gp-article__main td {
	padding: 0.85rem 1rem;
	border: 1px solid var(--gp-line);
	text-align: left;
	line-height: 1.7;
}

.gp-article__main th {
	background: var(--gp-navy);
	color: #fff;
	font-weight: 600;
}

.gp-article__main tbody tr:nth-child(even) {
	background: rgba(255, 255, 255, 0.62);
}

/* 要点卡片：浅色卡片，不再用深蓝底 */

.gp-keypoints {
	margin: 2.5rem 0;
	padding: 1.75rem 1.85rem;
	background: #fff;
	border: 1px solid var(--gp-line);
	border-radius: var(--gp-radius);
}

/* 用 p 而非 h2：避免继承正文 h2 的藏青字色（深底上会看不见），
   同时不会被目录的 h2 提取逻辑误收为章节。
   选择器必须带上 .gp-article__main 才能压过 .gp-article__main p 的规则。 */
.gp-article__main p.gp-keypoints__title {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	margin: 0 0 1.15rem;
	font-size: 0.8125rem;
	font-weight: 600;
	line-height: 1.6;
	letter-spacing: 0.18em;
	text-align: left;
	color: var(--gp-navy);
}

.gp-keypoints__title span {
	display: block;
	width: 2px;
	height: 0.95em;
	background: var(--gp-gold);
}

.gp-article__main .gp-keypoints__list {
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: none;
}

.gp-article__main .gp-keypoints__list li {
	display: flex;
	align-items: baseline;
	gap: 0.85rem;
	margin-bottom: 0;
	padding: 0.7rem 0;
	font-size: 0.9375rem;
	line-height: 1.8;
	color: var(--gp-ink);
	border-top: 1px solid var(--gp-line);
}

.gp-keypoints__no {
	flex-shrink: 0;
	font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
	font-size: 0.8125rem;
	font-weight: 700;
	color: var(--gp-gold);
}

/* 文末 CTA：沿用站点深蓝主视觉（同 .gp-cta），不再用白底卡片 */

.gp-articlecta {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.75rem;
	flex-wrap: wrap;
	margin-top: 3rem;
	padding: clamp(1.5rem, 3vw, 2rem) clamp(1.5rem, 3vw, 2.25rem);
	background: var(--gp-navy-deep);
	border-radius: var(--gp-radius);
}

.gp-articlecta::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background-image: url("../assets/images/city.jpg");
	background-size: cover;
	background-position: center;
	opacity: 0.24;
}

.gp-articlecta::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(100deg, rgba(6, 20, 40, 0.95) 30%, rgba(6, 20, 40, 0.74) 100%);
}

.gp-articlecta__text {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.gp-articlecta__text strong {
	font-size: 1.125rem;
	font-weight: 600;
	color: #fff;
}

.gp-articlecta__text span {
	font-size: 0.9375rem;
	color: rgba(255, 255, 255, 0.72);
}

.gp-articlecta__btn {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	padding: 0.75rem 1.5rem;
	font-size: 0.9375rem;
	color: var(--gp-navy-deep);
	background: var(--gp-gold-light);
	border-radius: 2px;
	text-decoration: none;
	transition: background-color 0.2s ease, transform 0.2s ease;
}

.gp-articlecta__btn:hover,
.gp-articlecta__btn:focus-visible {
	background: var(--gp-gold);
	transform: translateX(3px);
}

/* 上一篇 / 下一篇 */

.gp-article__foot {
	padding-top: clamp(2.5rem, 5vw, 3.5rem);
}

.gp-artnav {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.25rem;
}

/* 只有一侧存在时占满整行 */
.gp-artnav--single {
	grid-template-columns: 1fr;
}

.gp-artnav__item {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	padding: 1.1rem 1.35rem;
	background: #fff;
	border: 1px solid var(--gp-line);
	border-radius: var(--gp-radius);
	text-decoration: none;
	transition: border-color 0.2s ease;
}

/* 普通排版：不显示缩略图，纯文字导航 */
.gp-artnav__thumb {
	display: none;
}

.gp-artnav__item:hover,
.gp-artnav__item:focus-visible {
	border-color: rgba(200, 164, 92, 0.6);
}

.gp-artnav__item--next {
	text-align: right;
}

.gp-artnav__thumb {
	width: 100%;
	aspect-ratio: 21 / 8;
	object-fit: cover;
	border-radius: 2px;
}

.gp-artnav__kind {
	font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
	font-size: 0.6875rem;
	letter-spacing: 0.18em;
	color: var(--gp-gold);
}

.gp-artnav__title {
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.65;
	color: var(--gp-navy);
	transition: color 0.2s ease;
}

.gp-artnav__item:hover .gp-artnav__title,
.gp-artnav__item:focus-visible .gp-artnav__title {
	color: var(--gp-gold);
}

.gp-artnav__item.is-empty {
	pointer-events: none;
	opacity: 0.42;
}

/* 相关资讯 */

.gp-article__related {
	padding: 0 0 clamp(3rem, 6vw, 5rem);
}

.gp-related {
	padding-top: clamp(2.25rem, 4vw, 3rem);
	border-top: 1px solid var(--gp-line);
}

.gp-related__title {
	margin: 0 0 1.75rem;
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.18em;
	color: var(--gp-navy);
}

.gp-relcard {
	display: grid;
	grid-template-columns: repeat(var(--gp-relcard-cols, 3), minmax(0, 1fr));
	gap: 1.5rem;
}

.gp-relcard__item {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
	background: #fff;
	border: 1px solid var(--gp-line);
	border-radius: var(--gp-radius);
	overflow: hidden;
	text-decoration: none;
	transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.gp-relcard__item:hover,
.gp-relcard__item:focus-visible {
	transform: translateY(-3px);
	border-color: rgba(200, 164, 92, 0.5);
	box-shadow: 0 16px 36px rgba(11, 31, 58, 0.09);
}

.gp-relcard__media {
	display: block;
	margin: 0;
	overflow: hidden;
}

.gp-relcard__media img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	transition: transform 0.5s ease;
}

.gp-relcard__item:hover .gp-relcard__media img {
	transform: scale(1.05);
}

.gp-relcard__media--none {
	display: block;
	aspect-ratio: 16 / 10;
	background: linear-gradient(140deg, var(--gp-navy), var(--gp-navy-deep));
}

.gp-relcard__cat {
	margin: 0.9rem 1.25rem 0;
	align-self: flex-start;
	padding: 0.22rem 0.7rem;
	font-size: 0.6875rem;
	letter-spacing: 0.12em;
	color: var(--gp-gold);
	border: 1px solid rgba(200, 164, 92, 0.45);
	border-radius: 999px;
}

.gp-relcard__title {
	margin: 0 1.25rem;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.65;
	color: var(--gp-navy);
	transition: color 0.2s ease;
}

.gp-relcard__item:hover .gp-relcard__title,
.gp-relcard__item:focus-visible .gp-relcard__title {
	color: var(--gp-gold);
}

.gp-relcard__date {
	margin: auto 1.25rem 1.25rem;
	padding-top: 0.7rem;
	font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
	font-size: 0.75rem;
	letter-spacing: 0.08em;
	color: var(--gp-muted);
}

/* 区块编辑器里的占位样式 */

.gp-block-placeholder {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	padding: 1.25rem 1.5rem;
	font-size: 0.875rem;
	color: var(--gp-navy);
	background: rgba(200, 164, 92, 0.1);
	border: 1px dashed rgba(11, 31, 58, 0.28);
	border-radius: var(--gp-radius);
}

.gp-block-placeholder span {
	font-size: 0.8125rem;
	color: var(--gp-muted);
}

/* --- 17i. 分页 --- */

.gp-newslist__pagination,
.wp-block-query-pagination {
	margin-top: clamp(2rem, 4vw, 3rem);
	padding-top: 1.5rem;
	border-top: 1px solid var(--gp-line);
	font-size: 0.9375rem;
}

.gp-newslist__pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.25rem;
	height: 2.25rem;
	padding: 0 0.6rem;
	color: var(--gp-navy);
	text-decoration: none;
	border-radius: 2px;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.gp-newslist__pagination .page-numbers:hover,
.gp-newslist__pagination .page-numbers:focus-visible {
	background: rgba(11, 31, 58, 0.07);
}

.gp-newslist__pagination .page-numbers.current {
	background: var(--gp-navy);
	color: #fff;
}

.gp-page-hero {
	position: relative;
	padding: clamp(3.5rem, 8vw, 5.5rem) 0;
	background: var(--gp-navy);
	color: #fff;
	overflow: hidden;
}

.gp-page-hero::after {
	content: "";
	position: absolute;
	right: -60px;
	top: -60px;
	width: 340px;
	height: 340px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(200, 164, 92, 0.16) 0%, transparent 70%);
}

.gp-page-hero h1 {
	position: relative;
	z-index: 1;
	font-size: clamp(1.9rem, 4vw, 2.9rem);
	color: #fff;
	margin: 0 0 0.85rem;
}

.gp-page-hero p {
	position: relative;
	z-index: 1;
	margin: 0;
	font-size: 1.0625rem;
	line-height: 1.9;
	color: rgba(255, 255, 255, 0.7);
	max-width: 44em;
}

/* WordPress 默认区块对齐修正 */
.alignwide {
	max-width: var(--wp--style--global--wide-size);
}

.alignfull {
	max-width: none;
}

.wp-block-image figcaption {
	font-size: 0.8125rem;
	color: var(--gp-muted);
	text-align: center;
	margin-top: 0.6rem;
}

/* 屏幕阅读器专用 */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background: #fff;
	clip: auto !important;
	clip-path: none;
	color: var(--gp-navy);
	display: block;
	font-size: 0.875rem;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

.skip-link:focus {
	outline: 2px solid var(--gp-gold);
}

/* WordPress 核心给跳转锚点加了 margin-top:24px，
   这会在吸顶菜单与首屏之间留出一条空隙。这里归零。 */
#wp--skip-link--target {
	margin-top: 0;
	padding-top: 0;
}

/* 保证吸顶菜单紧贴首屏，中间不留缝 */
.gp-main {
	margin-top: 0;
}

.gp-main > *:first-child {
	margin-block-start: 0;
}

/* ========== 18. 响应式 ========== */

/* 关于我们页：窄屏降级 */
@media (max-width: 900px) {
	.gp-about-page__lead,
	.gp-share__grid {
		grid-template-columns: 1fr;
	}

	/* 单栏后取消左栏金色竖脊，避免留下一条短竖线 */
	.gp-share__brand {
		padding-left: 0;
		border-left: 0;
	}

	.gp-about-page__caps,
	.gp-about-page__valuesgrid {
		grid-template-columns: 1fr;
	}

	/* 窄屏文字横跨整幅，横向渐变不起作用，改由纵向压暗 */
	.gp-phero::before {
		background:
			linear-gradient(
				180deg,
				rgba(11, 31, 58, 0.94) 0%,
				rgba(11, 31, 58, 0.86) 30%,
				rgba(6, 20, 40, 0.8) 62%,
				rgba(6, 20, 40, 0.9) 100%
			);
	}

	.gp-phero__bg {
		background-position: center 20%;
	}
}

/* 文章详情：窄屏降级 */
@media (max-width: 640px) {
	.gp-artnav {
		grid-template-columns: 1fr;
	}

	.gp-relcard {
		grid-template-columns: 1fr;
	}

	.gp-articlecta {
		flex-direction: column;
		align-items: flex-start;
	}

	.gp-article__cover img {
		aspect-ratio: 4 / 3;
	}

	/* 两端对齐在窄屏会拉出难看的词距 */
	.gp-article__main p {
		text-align: left;
	}
}

@media (max-width: 1080px) {
	.gp-strengths,
	.gp-culture {
		grid-template-columns: repeat(2, 1fr);
	}

	.gp-footer__main {
		grid-template-columns: 1fr 1fr;
		gap: 2rem;
	}

	.gp-flow {
		grid-template-columns: repeat(2, 1fr);
	}

	.gp-flow li:not(:nth-child(3n))::after {
		display: none;
	}

	.gp-flow li:not(:nth-child(2n))::after {
		display: block;
	}

	/* 资讯：列表页行式布局在窄屏改为上下堆叠 */
	.gp-newsrow {
		grid-template-columns: 1fr;
		gap: 1.25rem;
	}

	.gp-news__grid .wp-block-post-template {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 900px) {
	/* 荣誉证书墙：两列，单张仍能看清证书上的标题 */
	.gp-honor {
		flex-basis: calc((100% - 1.75rem) / 2 - 0.5px);
		max-width: calc((100% - 1.75rem) / 2 - 0.5px);
	}

	.gp-header__inner {
		min-height: 66px;
	}

	.gp-header__toggle {
		display: inline-flex;
	}

	/* WordPress 在 group 上注入 is-layout-* 类，其 display 优先级较高，
	   这里显式隐藏桌面导航并显示移动端菜单。 */
	.gp-header__cta,
	.gp-nav.wp-block-group {
		display: none !important;
	}

	.gp-mobile-nav.wp-block-group {
		display: block !important;
	}

	.gp-about__grid,
	.gp-team,
	.gp-cta__inner {
		grid-template-columns: 1fr;
	}

	.gp-biz__grid {
		grid-template-columns: 1fr;
	}

	.gp-about__media::after {
		display: none;
	}

	.gp-about__badge {
		left: 1rem;
		bottom: 1rem;
	}

	.gp-stats {
		grid-template-columns: repeat(2, 1fr);
		gap: 1.75rem 0;
		text-align: center;
	}

	.gp-stats li {
		border-right: 0;
		padding: 0 1rem;
	}

	.gp-hero {
		min-height: auto;
	}
}

@media (max-width: 640px) {
	.gp-guarantee__grid {
		grid-template-columns: 1fr;
	}

	.gp-guarantee__item {
		border-right: 0;
		border-bottom: 1px solid var(--gp-line);
	}

	.gp-guarantee__item:nth-last-child(-n + 2) {
		border-bottom: 1px solid var(--gp-line);
	}

	.gp-guarantee__item:last-child {
		border-bottom: 0;
	}

	.gp-strengths,
	.gp-culture,
	.gp-footer__main,
	.gp-facts,
	.gp-flow {
		grid-template-columns: 1fr;
	}

	.gp-honor {
		flex-basis: 100%;
		max-width: 100%;
	}

	.gp-news__grid .wp-block-post-template {
		grid-template-columns: 1fr;
	}

	.gp-flow li::after {
		display: none !important;
	}

	.gp-footer__bottom-inner {
		flex-direction: column;
		text-align: center;
	}

	.gp-hero__actions .gp-btn {
		flex: 1 1 100%;
		justify-content: center;
	}

	/* 移动端收紧首屏留白，保证标题、按钮与指示点都在首屏内 */
	.gp-hero__inner {
		padding: 3.25rem 1.25rem 4.5rem;
	}

	.gp-hero__badge {
		margin-bottom: 1.25rem;
	}

	.gp-hero__text {
		margin-bottom: 1.75rem;
	}

	.gp-carousel__nav {
		bottom: 1.5rem;
	}

	.gp-carousel__dot {
		width: 24px;
	}

	.gp-carousel__dot.is-active {
		width: 38px;
	}

	.gp-top {
		right: 1rem;
		bottom: 1rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		transition-duration: 0.01ms !important;
	}
}

@media print {
	.gp-header,
	.gp-footer,
	.gp-top,
	.gp-hero__scrim {
		display: none;
	}
}

/* ========== 18. 独立页：企业文化 / 发展历程 / 企业荣誉 ========== */

/* 18a. 通用带底图的页头 */
.gp-pagehero {
	position: relative;
	isolation: isolate;
	background: var(--gp-navy-deep);
	color: #fff;
	overflow: hidden;
}

/* z-index -2：遮罩是 ::before(-1)，底图必须更靠后，否则会盖住遮罩 */
.gp-pagehero__bg {
	position: absolute;
	inset: 0;
	z-index: -2;
	background-size: cover;
	background-position: center 44%;
}

.gp-pagehero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background:
		linear-gradient(
			180deg,
			rgba(11, 31, 58, 0.94) 0%,
			rgba(11, 31, 58, 0.52) 18%,
			rgba(6, 20, 40, 0.44) 56%,
			rgba(6, 20, 40, 0.84) 100%
		),
		linear-gradient(
			90deg,
			rgba(6, 20, 40, 0.88) 0%,
			rgba(6, 20, 40, 0.62) 46%,
			rgba(6, 20, 40, 0.2) 100%
		);
}

.gp-pagehero__inner {
	position: relative;
	z-index: 1;
	max-width: 46rem;
	padding: clamp(3rem, 7vw, 5.5rem) 0 clamp(3.25rem, 8vw, 6rem);
}

.gp-pagehero__title {
	margin: 0 0 1.15rem;
	font-size: clamp(2rem, 4.6vw, 3.35rem);
	font-weight: 700;
	line-height: 1.28;
	color: #fff;
	letter-spacing: 0.01em;
	text-wrap: balance;
	text-shadow: 0 2px 18px rgba(6, 20, 40, 0.5);
}

.gp-pagehero__text {
	max-width: 34em;
	margin: 0;
	font-size: clamp(0.9375rem, 1.5vw, 1.0625rem);
	line-height: 1.95;
	color: rgba(255, 255, 255, 0.86);
	text-shadow: 0 1px 12px rgba(6, 20, 40, 0.55);
}

.gp-pagehero .gp-eyebrow {
	color: var(--gp-gold-light);
}

.gp-pagehero--culture .gp-pagehero__bg {
	background-image: url("../assets/images/brand/culture-hero.jpg");
}

.gp-pagehero--milestones .gp-pagehero__bg {
	background-image: url("../assets/images/brand/milestones-hero.jpg");
}

.gp-pagehero--honors .gp-pagehero__bg {
	background-image: url("../assets/images/brand/honors-hero.jpg");
}

/* 18b. 图文分栏 */
.gp-split {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: clamp(2rem, 4.5vw, 4rem);
	align-items: center;
}

.gp-split__media {
	width: 100%;
}

.gp-split__media img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: var(--gp-radius);
	box-shadow: 0 22px 54px rgba(11, 31, 58, 0.18);
}

/* 反转时把配图放到右侧 */
.gp-split--reverse .gp-split__media {
	order: 2;
}

/* 18c. 三栏价值卡片 */
.gp-values__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
	align-items: stretch;
}

/* 18d. 发展历程（独立页）：时间线居中收敛，避免通栏过宽 */
.gp-timeline--page {
	max-width: 50rem;
	margin-left: auto;
	margin-right: auto;
}

@media (max-width: 900px) {
	.gp-split,
	.gp-values__grid {
		grid-template-columns: 1fr;
	}

	.gp-split--reverse .gp-split__media {
		order: 0;
	}

	.gp-pagehero__inner {
		max-width: none;
	}
}

/* ========== 19. 页脚「关注我们」+ 二维码弹层 ========== */

.gp-social {
	display: flex;
	flex-direction: column;
	gap: 1.1rem;
}

.gp-social__row {
	display: flex;
	gap: 0.55rem;
}

.gp-social__btn {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	gap: 0.42rem;
	width: 4.1rem;
	padding: 0.72rem 0.3rem 0.6rem;
	background: rgba(255, 255, 255, 0.035);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 0.7rem;
	color: rgba(255, 255, 255, 0.74);
	cursor: pointer;
	font: inherit;
	transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, transform 0.2s ease;
}

.gp-social__btn:hover,
.gp-social__btn:focus-visible {
	color: var(--gp-gold-light);
	border-color: rgba(200, 164, 92, 0.55);
	background: rgba(200, 164, 92, 0.1);
	transform: translateY(-2px);
	outline: none;
}

.gp-social__ico {
	display: inline-flex;
	width: 1.4rem;
	height: 1.4rem;
}

.gp-social__ico svg {
	display: block;
	width: 100%;
	height: 100%;
}

.gp-social__name {
	font-size: 0.72rem;
	letter-spacing: 0.04em;
	color: rgba(255, 255, 255, 0.58);
	transition: color 0.2s ease;
}

.gp-social__btn:hover .gp-social__name,
.gp-social__btn:focus-visible .gp-social__name {
	color: var(--gp-gold-light);
}

.gp-social__wechat {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.55rem 0.65rem;
	background: rgba(255, 255, 255, 0.035);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 0.7rem;
	color: inherit;
	cursor: pointer;
	font: inherit;
	text-align: left;
	transition: border-color 0.2s ease, background 0.2s ease;
}

.gp-social__wechat:hover,
.gp-social__wechat:focus-visible {
	border-color: rgba(200, 164, 92, 0.55);
	background: rgba(200, 164, 92, 0.08);
	outline: none;
}

.gp-social__qrthumb {
	flex-shrink: 0;
	width: 3.1rem;
	height: 3.1rem;
	border-radius: 0.4rem;
	background: #fff url("../assets/images/qr/qr-wechat.png") center / contain no-repeat;
}

.gp-social__wctext {
	display: flex;
	flex-direction: column;
	gap: 0.18rem;
	line-height: 1.35;
}

.gp-social__wctitle {
	font-size: 0.8rem;
	letter-spacing: 0.04em;
	color: #fff;
}

.gp-social__wcid {
	font-size: 0.75rem;
	color: rgba(255, 255, 255, 0.55);
}

/* --- 二维码弹层 --- */

.gp-qr {
	position: fixed;
	inset: 0;
	z-index: 200;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1.5rem;
}

.gp-qr[hidden] {
	display: none;
}

.gp-qr__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(4, 12, 24, 0.72);
	backdrop-filter: blur(3px);
}

.gp-qr__panel {
	position: relative;
	z-index: 1;
	width: min(19.5rem, 100%);
	padding: 2rem 1.7rem 1.65rem;
	background: #fff;
	border-radius: 1rem;
	text-align: center;
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.42);
	animation: gpQrIn 0.22s ease;
}

@keyframes gpQrIn {
	from {
		opacity: 0;
		transform: translateY(8px) scale(0.98);
	}
	to {
		opacity: 1;
		transform: none;
	}
}

.gp-qr__close {
	position: absolute;
	top: 0.55rem;
	right: 0.55rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: #7a8494;
	cursor: pointer;
	transition: color 0.2s ease, background 0.2s ease;
}

.gp-qr__close:hover,
.gp-qr__close:focus-visible {
	color: var(--gp-navy-deep);
	background: rgba(11, 31, 58, 0.07);
	outline: none;
}

.gp-qr__close svg {
	width: 1.15rem;
	height: 1.15rem;
}

.gp-qr__canvas {
	width: 100%;
	aspect-ratio: 1 / 1;
	margin: 0 auto 0.9rem;
	border: 1px solid rgba(11, 31, 58, 0.1);
	border-radius: 0.6rem;
	background: #fff center / contain no-repeat;
}

.gp-qr__canvas.is-douyin {
	background-image: url("../assets/images/qr/qr-douyin.png");
}

.gp-qr__canvas.is-shipinhao {
	background-image: url("../assets/images/qr/qr-shipinhao.png");
}

.gp-qr__canvas.is-xiaohongshu {
	background-image: url("../assets/images/qr/qr-xiaohongshu.png");
}

.gp-qr__canvas.is-wechat {
	background-image: url("../assets/images/qr/qr-wechat.png");
}

.gp-qr__title {
	margin: 0 0 0.3rem;
	font-size: 1.05rem;
	font-weight: 600;
	color: var(--gp-navy-deep);
}

.gp-qr__hint {
	margin: 0;
	font-size: 0.8rem;
	color: #7a8494;
}

@media (prefers-reduced-motion: reduce) {
	.gp-qr__panel {
		animation: none;
	}
}