/**
 * Responsive — 断点适配（375 / 390 / 768 / 1024 / 1440 / 1920）
 *
 * 原则：移动优先。这里只处理需要按断点调整的部分，
 * 避免水平滚动、文本溢出、按钮重叠、导航断裂、图片拉伸。
 */

/* ---- 小屏（< 480）：防溢出 -------------------------------------------- */
@media (max-width: 479px) {
	html {
		/* 避免 iOS 在横屏时自动放大文字 */
		-webkit-text-size-adjust: 100%;
	}

	.tc-hero__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.tc-hero__actions .tc-btn {
		width: 100%;
	}

	.tc-header__cta {
		display: none;
	}

	/* 卡片网格在小屏保持单列，避免挤压 */
	.tc-cards--3,
	.tc-points,
	.tc-digital__grid,
	.tc-posts {
		grid-template-columns: 1fr !important;
	}

	/* 长词与 URL 防溢出 */
	.tc-post__title,
	.tc-card__title,
	.tc-quals__link {
		overflow-wrap: anywhere;
	}
}

/* ---- 中屏（480-767）：两列数据 / 两列要点 ------------------------------ */
@media (min-width: 480px) and (max-width: 767px) {
	.tc-points {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.tc-digital__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* ---- 平板（768-1023） -------------------------------------------------- */
@media (min-width: 768px) {
	.tc-header__inner {
		gap: var(--tc-space-6);
	}

	/* 服务流程：平板折行为两行四列由 components.css 处理，这里只调间距 */
	.tc-steps {
		gap: var(--tc-space-6);
	}
}

@media (max-width: 1023px) {
	/* 服务流程在平板以下退化为纵向时间轴（更易读） */
	.tc-steps {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.tc-step {
		position: relative;
		padding: 0 0 var(--tc-space-5) var(--tc-space-6);
		border-left: 2px solid var(--tc-gray-200);
	}

	.tc-step:last-child {
		border-left-color: transparent;
		padding-bottom: 0;
	}

	.tc-step__num {
		position: absolute;
		left: calc(var(--tc-space-6) * -1 - 0.65rem);
		top: -0.2rem;
		background: var(--tc-white);
		padding-inline: 2px;
		font-size: var(--tc-fs-base);
	}
}

/* ---- 桌面（1024-1439） ------------------------------------------------- */
@media (min-width: 1024px) {
	/* W2.5：Stats 采用紧凑节奏，不再放大列间距 */
}

/* ---- 大桌面（>= 1440） ------------------------------------------------- */
@media (min-width: 1440px) {
	:root {
		--tc-container-pad: 3rem;
	}

	/* 大屏不做全宽铺满，保持内容密度 */
	.tc-section {
		padding-block: var(--tc-space-9);
	}
}

/* ---- 超大屏（>= 1920） ------------------------------------------------- */
@media (min-width: 1920px) {
	:root {
		--tc-container-max: 1360px;
	}
}

/* ---- 触控目标（可访问性：至少 44px） ----------------------------------- */
@media (pointer: coarse) {
	.tc-btn,
	.tc-nav-toggle,
	.tc-mnav__close,
	.tc-lang__link,
	.tc-nav__list a,
	.tc-mnav__list a {
		min-height: 44px;
	}
}

/* ---- 打印 -------------------------------------------------------------- */
@media print {
	.tc-header,
	.tc-footer,
	.tc-nav-toggle,
	.tc-mnav {
		display: none !important;
	}

	body {
		color: #000;
		background: #fff;
	}
}
