/* Tallizen 部落格文章列表 — 見 tallizen-blog.php */
.page-id-4104 .content-area{
	max-width: 1300px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 24px;
	padding-right: 24px;
}
.page-id-4104 .content-area > .container{
	max-width: none;
	padding-left: 0;
	padding-right: 0;
}
.page-id-4104 .entry-header,
.page-id-4104 .page-title{
	display: none;
}

.tz-bl{
	padding: 96px 0 40px;
}

/* ---------- Hero ---------- */
.tz-bl-hero{
	text-align: center;
	max-width: 760px;
	margin: 0 auto 46px;
}
.tz-bl-kicker{
	display: inline-block;
	font-size: 12px;
	letter-spacing: .24em;
	font-weight: 700;
	color: #B8860B;
	background: #FFF8E7;
	border: 1px solid #EFE7D8;
	border-radius: 999px;
	padding: 6px 18px;
	margin-bottom: 18px;
}
.tz-bl-title{
	font-size: 42px;
	line-height: 1.2;
	font-weight: 700;
	color: #0F2A28;
	margin: 0 0 6px;
	letter-spacing: .01em;
}
.tz-bl-title::after{
	content: "";
	display: block;
	width: 56px;
	height: 3px;
	background: #B8860B;
	border-radius: 2px;
	margin: 18px auto 0;
}
.tz-bl-sub{
	font-size: 17px;
	line-height: 1.8;
	color: #3A332A;
	margin: 20px 0 0;
}
.tz-bl-count{
	font-size: 14px;
	color: #6B6157;
	margin: 14px 0 0;
}
.tz-bl-count strong{
	color: #B8860B;
	font-size: 17px;
}

/* ---------- 分類篩選 ---------- */
.tz-bl-filters{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px;
	margin-bottom: 40px;
}
.tz-bl-chip{
	appearance: none;
	border: 1px solid #E4DACA;
	background: #fff;
	color: #3A332A;
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	padding: 11px 20px;
	border-radius: 999px;
	cursor: pointer;
	transition: background .18s ease, color .18s ease, border-color .18s ease;
}
.tz-bl-chip:hover{
	border-color: #B8860B;
	color: #B8860B;
}
.tz-bl-chip.is-on{
	background: #0F2A28;
	border-color: #0F2A28;
	color: #fff;
}
.tz-bl-chip-n{
	display: inline-block;
	margin-left: 7px;
	font-size: 12px;
	font-weight: 700;
	color: #B8860B;
	background: #FFF8E7;
	border-radius: 999px;
	padding: 2px 8px;
}
.tz-bl-chip.is-on .tz-bl-chip-n{
	background: rgba(255, 255, 255, .16);
	color: #FFC92E;
}

/* ---------- 卡片網格 ---------- */
.tz-bl-grid{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 32px;
}
.tz-bl-card{
	display: flex;
	flex-direction: column;
	background: #fff;
	border: 1px solid #EFE7D8;
	border-radius: 16px;
	overflow: hidden;
	transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.tz-bl-card:hover{
	transform: translateY(-4px);
	border-color: #DCCBA8;
	box-shadow: 0 14px 34px rgba(15, 42, 40, .10);
}
.tz-bl-media{
	display: block;
	position: relative;
	background: #F3F1EA;
	overflow: hidden;
}
.tz-bl-media img{
	display: block;
	width: 100%;
	aspect-ratio: 3 / 2;
	object-fit: cover;
	transition: transform .5s ease;
}
.tz-bl-card:hover .tz-bl-media img{
	transform: scale(1.04);
}
.tz-bl-body{
	display: flex;
	flex-direction: column;
	flex: 1;
	padding: 22px 24px 26px;
}
.tz-bl-meta{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	font-size: 13px;
	color: #6B6157;
	margin-bottom: 12px;
}
.tz-bl-cat{
	display: inline-block;
	background: #FFF8E7;
	color: #B8860B;
	border-radius: 6px;
	padding: 4px 10px;
	font-weight: 700;
}
.tz-bl-card-title{
	font-size: 21px;
	line-height: 1.45;
	font-weight: 700;
	color: #0F2A28;
	margin: 0 0 12px;
}
.tz-bl-card-title a{
	color: inherit;
	text-decoration: none;
}
.tz-bl-card-title a:hover{
	color: #B8860B;
}
.tz-bl-ex{
	font-size: 15px;
	line-height: 1.8;
	color: #3A332A;
	margin: 0 0 18px;
	flex: 1;
}
.tz-bl-more{
	font-size: 15px;
	font-weight: 700;
	color: #B8860B;
	letter-spacing: .02em;
}
.tz-bl-more i{
	font-style: normal;
	margin-left: 6px;
	transition: margin-left .2s ease;
	display: inline-block;
}
.tz-bl-card:hover .tz-bl-more i{
	margin-left: 12px;
}

/* ---------- 置頂大卡 ---------- */
.tz-bl-card.is-lead{
	grid-column: 1 / -1;
	flex-direction: row;
	align-items: stretch;
}
.tz-bl-card.is-lead .tz-bl-media{
	flex: 0 0 52%;
}
.tz-bl-card.is-lead .tz-bl-media img{
	height: 100%;
	aspect-ratio: auto;
	min-height: 320px;
}
.tz-bl-card.is-lead .tz-bl-body{
	flex: 1;
	padding: 36px 40px;
	justify-content: center;
}
.tz-bl-card.is-lead .tz-bl-card-title{
	font-size: 28px;
	margin-bottom: 14px;
}
.tz-bl-card.is-lead .tz-bl-ex{
	font-size: 16px;
}

/* ---------- 空状态 ---------- */
.tz-bl-empty,
.tz-bl-none{
	text-align: center;
	color: #6B6157;
	font-size: 16px;
	padding: 40px 0;
}

/* ---------- 平板 ---------- */
@media (max-width: 1023px){
	.tz-bl{ padding: 92px 0 30px; }
	.tz-bl-grid{ grid-template-columns: repeat(2, 1fr); gap: 26px; }
	.tz-bl-card.is-lead .tz-bl-media{ flex: 0 0 46%; }
	.tz-bl-card.is-lead .tz-bl-body{ padding: 28px 30px; }
	.tz-bl-card.is-lead .tz-bl-card-title{ font-size: 24px; }
}

/* ---------- 手机 ---------- */
@media (max-width: 767px){
	.page-id-4104 .content-area{ padding-left: 18px; padding-right: 18px; }
	.tz-bl{ padding: 100px 0 20px; }
	.tz-bl-hero{ margin-bottom: 32px; }
	.tz-bl-title{ font-size: 31px; }
	.tz-bl-sub{ font-size: 15.5px; }
	.tz-bl-grid{ grid-template-columns: 1fr; gap: 22px; }
	.tz-bl-card.is-lead{
		flex-direction: column;
	}
	.tz-bl-card.is-lead .tz-bl-media{ flex: none; }
	.tz-bl-card.is-lead .tz-bl-media img{
		aspect-ratio: 3 / 2;
		min-height: 0;
	}
	.tz-bl-card.is-lead .tz-bl-body{ padding: 22px 24px 26px; }
	.tz-bl-card.is-lead .tz-bl-card-title{ font-size: 21px; }
	.tz-bl-card.is-lead .tz-bl-ex{ font-size: 15px; }
}
