/*
Theme Name: Ketian1 Elementor
Theme URI: https://ketian1.local
Author: Ketian
Description: 广东柯田包装技术官网主题 —— 快照式仿站方法，配合 ketian1-core 插件使用。
Version: 0.1.0
Requires PHP: 8.2
Text Domain: ketian
*/

/*
	本文件只放两样东西，别的一律不许进来：
	1. 设计令牌（CSS 自定义属性）—— 抠自 echomachinery.com 全局样式表
	   assets/index.DXTTrtRU.css 的 :root（2026-08-17 归档）
	2. 基础重置/排版 —— 同一份样式表里对 *, html, body, h1-h6, a, img, p 的基础规则
	   + `.container`（宽度容器）/ `.section`（区块上下留白）这两个全站通用的
	   版式图元（几乎每个 snapshot 模块都会用到，放这里一次定义，
	   好过在 20+ 个模块 CSS 里各抄一份、以后改宽度/留白要改 20 处，T4 起沿用 T3 的先例）

	模块自己的视觉样式一律放 snapshots/<模块名>.css，不要往这里加选择器。
*/

:root {
	--brand: #dc0024;
	--brand-hover: #b8001d;
	--brand-glow: rgba(220, 0, 36, 0.18);
	--brand-subtle: rgba(220, 0, 36, 0.06);
	/* 商标蓝：取自 header-logo 图片的实际像素颜色(RGB 3,110,220)，只用于 2026-09-20
	   客户点名要改的少数强调色/标签场景，不替换全站的 --brand 红 */
	--brand-blue: #036edc;
	--brand-blue-subtle: rgba(3, 110, 220, 0.08);
	--brand-blue-border: rgba(3, 110, 220, 0.3);
	--surface: #ffffff;
	--surface-alt: #f5f5f5;
	--text: #111113;
	--text-secondary: #5c5c63;
	--text-tertiary: #94949d;
	--text-inverse: #f0f0f2;
	--border: #e4e4e7;
	--border-light: #f0f0f3;
	--font-sans: "Commissioner", system-ui, sans-serif;
	--font-display: "Commissioner", system-ui, sans-serif;
	--space-1: 4px;
	--space-2: 8px;
	--space-3: 12px;
	--space-4: 16px;
	--space-5: 24px;
	--space-6: 32px;
	--space-7: 48px;
	--space-8: 64px;
	--space-9: 96px;
	--space-10: 128px;
	--max-width: 1400px;
	--header-h: 72px;
	--header-h-scrolled: 56px;
	--topbar-h: 0px;
	--section-gap: var(--space-10);
	--section-pad: var(--space-9);
	--ph-gap: var(--space-10);
	--radius-sm: 4px;
	--radius: 8px;
	--radius-lg: 12px;
	--radius-xl: 16px;
	--radius-full: 9999px;
	--shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.04);
	--shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
	--shadow-md: 0 8px 24px rgba(0, 0, 0, 0.08);
	--shadow-lg: 0 16px 48px rgba(0, 0, 0, 0.1);
	--shadow-xl: 0 32px 80px rgba(0, 0, 0, 0.16);
	--ease: cubic-bezier(0.22, 1, 0.36, 1);
	--ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
	--dur-fast: 0.15s;
	--dur: 0.25s;
	--dur-slow: 0.4s;
	--transition: 0.2s ease;
	--transition-slow: 0.35s ease;
	--red: var(--brand);
	--red-dark: var(--brand-hover);
	--red-glow: var(--brand-glow);
	--gray-light: var(--surface-alt);
	--gray-border: var(--border);
	--bg: var(--surface-alt);
	--dark: var(--surface-alt);
	--white: #ffffff;
}

*,
*:before,
*:after {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}
html {
	scroll-behavior: smooth;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
body {
	font-family: var(--font-sans);
	font-size: 16px;
	line-height: 1.75;
	color: var(--text);
	background: var(--surface);
	padding-top: var(--header-h);
	overflow-x: hidden;
}
/* 首页不需要 body 的 padding-top：hero 全屏高度且用负边距覆盖页头区域，
   额外的 padding 会在顶部留一段空白。 */
body.home {
	padding-top: 0;
}
h1,
h2 {
	font-family: var(--font-display);
	font-weight: 700;
	line-height: 1.15;
	color: var(--text);
	letter-spacing: -0.02em;
}
h3,
h4,
h5,
h6 {
	font-weight: 700;
	line-height: 1.15;
	color: var(--text);
	letter-spacing: -0.01em;
}
h1 {
	font-size: clamp(28px, 4vw, 40px);
}
h2 {
	font-size: clamp(22px, 3vw, 32px);
}
h3 {
	font-size: clamp(18px, 2.5vw, 24px);
}
h4 {
	font-size: 16px;
}
a {
	color: var(--text);
	text-decoration: none;
	background: linear-gradient(var(--brand), var(--brand)) 0 100% / 100% 1px no-repeat;
	transition: color var(--dur), background-size var(--dur-slow) var(--ease);
}
a:hover {
	color: var(--brand);
	background-size: 100% 4px;
}
img,
video {
	max-width: 100%;
	height: auto;
	display: block;
}
p {
	margin-bottom: 1em;
	color: var(--text-secondary);
}

.container {
	max-width: var(--max-width);
	margin: 0 auto;
	padding: 0 var(--space-6);
}
@media (max-width: 768px) {
	.container {
		padding: 0 var(--space-5);
	}
}

.section {
	padding: var(--section-gap) 0;
	position: relative;
}
.section-title {
	font-size: clamp(24px, 3.5vw, 36px);
	font-weight: 700;
	margin-bottom: var(--space-7);
}
@media (max-width: 768px) {
	.section-title {
		margin-bottom: var(--space-6);
	}
}
@media (max-width: 480px) {
	.section-title {
		margin-bottom: var(--space-5);
	}
}

/*
	`.card-tag` 是全站通用的小标签徽章（T4 起沿用），`.prose` 是全站通用的富文本正文
	容器（Elementor/wp_editor 产出的 <p>/<ul>/<ol> 落进这里）—— 参考站的组合选择器
	（`.mc-card`、`.cs-card`、`.news-card` 等一大串）证明这两个类是跨模块复用的，
	理由与 `.container`/`.section` 一致：抄 20 份不如放这里一次定义。
*/
.card-tag {
	display: inline-flex;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: var(--brand);
	background: var(--brand-subtle);
	padding: 4px 10px;
	border-radius: var(--radius-sm);
	margin-bottom: var(--space-3);
	width: fit-content;
}
.prose {
	font-size: 15px;
	color: var(--text-secondary);
	line-height: 1.8;
}
.prose p {
	margin-bottom: 1em;
}
.prose a {
	background: none;
	transition: color var(--dur), background-size var(--dur-slow);
}
.prose a:hover {
	color: var(--brand);
}
.prose ul,
.prose ol {
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 0;
}
.prose ul li,
.prose ol li {
	padding: 14px 18px 14px 32px;
	position: relative;
	background: var(--surface-alt);
	border-radius: var(--radius);
	font-size: 14px;
	line-height: 1.7;
	color: var(--text-secondary);
	margin-bottom: 0;
}
.prose ul li strong,
.prose ol li strong {
	color: var(--text);
}
.prose ul li:before,
.prose ol li:before {
	content: "";
	position: absolute;
	left: 14px;
	top: 22px;
	width: 6px;
	height: 6px;
	border-right: 2px solid var(--red);
	border-bottom: 2px solid var(--red);
	transform: rotate(-45deg);
}
