/* 中式文化型：面向食品、养生、茶、文创、老字号。
   特征来自谷康源——
   米黄底色、宋体标题、印章式标签、细线分隔、插画而非实拍。
   这类客户通常拿不出高质量产品照，所以整套视觉不依赖摄影素材。 */

.opc-style-culture {
	--opc-ink: #332a22;
	--opc-muted: #7c6c5b;
	--opc-paper: #f7f3e8;
	--opc-card: #fffdf7;
	--opc-brand: #7a1f1f;
	--opc-dark: #5c1515;
	--opc-accent: #b08d3f;
	--opc-line: #ddd0b8;
	--opc-gutter: max(20px, calc((100% - 1000px) / 2));
	font-family: "Songti SC", "SimSun", "Noto Serif SC", serif;
	line-height: 1.9;
	color: var(--opc-ink);
	background: var(--opc-paper);
}
.opc-style-culture .opc-wrap { width: min(1000px, calc(100% - 40px)); }
.opc-style-culture .opc-header { background: var(--opc-paper); border-bottom: 1px solid var(--opc-line); }
.opc-style-culture .opc-header__inner { padding: 26px 0; flex-direction: column; align-items: center; gap: 14px; }
.opc-style-culture .opc-brand { align-items: center; text-align: center; }
.opc-style-culture .opc-brand__name { font-size: 1.7rem; letter-spacing: .18em; color: var(--opc-dark); }
.opc-style-culture .opc-brand__tag { letter-spacing: .1em; color: var(--opc-muted); }
.opc-style-culture .opc-brand__seal {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	margin-bottom: 8px;
	border: 2px solid var(--opc-brand);
	border-radius: 3px;
	color: var(--opc-brand);
	font-size: 17px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1;
}
.opc-style-culture .opc-header__contact { align-items: center; }
.opc-style-culture .opc-header__phone { color: var(--opc-brand); font-size: 20px; font-family: "Segoe UI", "Microsoft YaHei", sans-serif; }
.opc-style-culture .opc-navrow { border-top: 1px solid var(--opc-line); }
.opc-style-culture .opc-menu { justify-content: center; }
.opc-style-culture .opc-menu a { padding: 14px 22px; color: var(--opc-ink); font-size: 15.5px; letter-spacing: .1em; }
.opc-style-culture .opc-menu > li + li { box-shadow: inset 1px 0 0 var(--opc-line); }
.opc-style-culture .opc-menu > li.current-menu-item a { color: var(--opc-brand); }
.opc-style-culture .opc-menu__en { display: none; }

/* hero：宣纸底纹 + 大留白，标题用宋体大字，不用彩色块 */
.opc-style-culture .opc-hero {
	position: relative;
	padding: 96px var(--opc-gutter) 84px;
	text-align: center;
	background: var(--opc-paper);
	overflow: hidden;
}
.opc-style-culture .opc-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: radial-gradient(circle at 18% 28%, rgba(122,31,31,.05), transparent 42%), radial-gradient(circle at 82% 72%, rgba(176,141,63,.07), transparent 46%);
	pointer-events: none;
}
.opc-style-culture .opc-hero > * { position: relative; z-index: 1; }
.opc-style-culture .opc-hero__text { max-width: 780px; margin: 0 auto; }
.opc-style-culture .opc-kicker {
	display: inline-block;
	margin-bottom: 18px;
	padding: 6px 16px;
	border: 1px solid var(--opc-accent);
	color: var(--opc-brand);
	font-size: 13px;
	letter-spacing: .28em;
	text-indent: .28em;
	text-transform: none;
}
.opc-style-culture .opc-hero h1 { margin: 0 0 22px; color: var(--opc-dark); font-size: clamp(1.8rem, 3.6vw, 2.7rem); font-weight: 500; letter-spacing: .06em; line-height: 1.5; }
.opc-style-culture .opc-lead { margin-left: auto; margin-right: auto; max-width: 32em; color: var(--opc-muted); font-size: 1.02rem; }
.opc-style-culture .opc-note { color: var(--opc-muted); font-size: .88rem; }
.opc-style-culture .opc-hero__media { max-width: 640px; margin: 40px auto 0; }
.opc-style-culture .opc-hero__media img { border-radius: 0; border: 1px solid var(--opc-line); }
.opc-style-culture .opc-hero .wp-block-buttons { justify-content: center; margin-top: 30px; }
.opc-style-culture .opc-hero .wp-block-button__link { background: var(--opc-brand); border-color: var(--opc-brand); border-radius: 0; padding: 13px 30px; letter-spacing: .12em; }
.opc-style-culture .opc-hero .wp-block-button:not(:first-child) .wp-block-button__link { background: transparent; color: var(--opc-brand); border-color: var(--opc-brand); }

.opc-style-culture .opc-section { padding: 76px var(--opc-gutter); }
.opc-style-culture .opc-section.alt { background: #fdfaf2; }
.opc-style-culture .opc-section h2 {
	position: relative;
	margin: 0 0 34px;
	padding-bottom: 16px;
	color: var(--opc-dark);
	font-size: clamp(1.35rem, 2.2vw, 1.75rem);
	font-weight: 500;
	letter-spacing: .12em;
	text-align: center;
}
.opc-style-culture .opc-section h2::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 40px;
	height: 1px;
	margin-left: -20px;
	background: var(--opc-accent);
}
.opc-style-culture .opc-section h2 + p { max-width: 40em; margin-left: auto; margin-right: auto; text-align: center; color: var(--opc-muted); }
.opc-style-culture .opc-card {
	padding: 26px 22px;
	background: transparent;
	border: 0;
	border-top: 1px solid var(--opc-line);
	border-radius: 0;
	box-shadow: none;
	text-align: center;
}
.opc-style-culture .opc-card h3 { color: var(--opc-brand); font-size: 1.08rem; font-weight: 500; letter-spacing: .08em; }
.opc-style-culture .opc-card p { color: var(--opc-muted); }
.opc-style-culture .wp-block-columns { gap: 26px; margin-bottom: 26px; }
.opc-style-culture .wp-block-button__link { border-radius: 0; background: var(--opc-brand); border-color: var(--opc-brand); letter-spacing: .1em; }
.opc-style-culture .wp-block-image img { border-radius: 0; }
.opc-style-culture .wp-block-details { border-bottom: 1px dashed var(--opc-line); }
.opc-style-culture .wp-block-details summary { font-weight: 500; letter-spacing: .04em; }

.opc-style-culture .opc-figures { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; margin-top: 30px; border-top: 1px solid var(--opc-line); }
.opc-style-culture .opc-figures > div { padding: 22px 14px; text-align: center; border-right: 1px solid var(--opc-line); }
.opc-style-culture .opc-figures > div:last-child { border-right: 0; }
.opc-style-culture .opc-figures strong { display: block; font-size: 1.35rem; font-weight: 500; color: var(--opc-brand); line-height: 1.3; }
.opc-style-culture .opc-figures span { display: block; margin-top: 6px; font-size: 12.5px; color: var(--opc-muted); }

.opc-style-culture .opc-footer { background: #efe8d8; border-top: 1px solid var(--opc-line); }
.opc-style-culture .opc-footer__brand { color: var(--opc-dark); letter-spacing: .14em; }

@media (max-width: 900px) {
	.opc-style-culture .opc-hero { padding: 56px var(--opc-gutter) 48px; }
	.opc-style-culture .opc-section { padding: 52px var(--opc-gutter); }
	.opc-style-culture .opc-brand__name { font-size: 1.35rem; letter-spacing: .1em; }
}
