.th-hero-section {
	padding: 28px 0;
}

.th-hero-grid {
	display: grid;
	grid-template-columns: 1.6fr 1fr;
	gap: 24px;
}

.th-hero-side {
	display: grid;
	gap: 16px;
}

.th-latest-section {
	padding: 8px 0 40px;
	background: var(--th-bg-subtle);
}

.th-latest-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 320px;
	gap: 32px;
	padding-top: 32px;
}

.th-latest-list {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.th-load-more-wrap {
	text-align: center;
	margin-top: 24px;
}

.th-load-more {
	border: 1px solid var(--th-border);
	border-radius: 999px;
	padding: 12px 28px;
	font-weight: 700;
	min-height: 44px;
	background: var(--th-bg);
}

.th-load-more:hover {
	border-color: var(--th-accent);
	color: var(--th-accent);
}

.th-load-more[hidden] {
	display: none;
}

.th-section-block {
	padding: 36px 0;
	border-top: 1px solid var(--th-border);
}

.th-section-heading {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	margin-bottom: 20px;
}

.th-section-heading .th-section-title {
	margin-bottom: 0;
}

.th-section-more {
	font-size: 13px;
	font-weight: 700;
	color: var(--th-text-muted);
	flex-shrink: 0;
}

.th-section-more:hover {
	color: var(--th-accent);
}

.th-section-block--lead .th-section-body {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
}

.th-section-block--lead .th-section-grid {
	grid-template-columns: repeat(2, 1fr);
}

.th-section-block--grid .th-section-grid {
	grid-template-columns: repeat(5, 1fr);
}
