.tmcseo-catalogue-archive {
	--tmcseo-dark: #2d3134;
	--tmcseo-muted: #686f73;
	--tmcseo-gold: #b78c56;
	--tmcseo-soft: #f6f4ef;
	--tmcseo-border: #e5e2dc;
}

.tmcseo-catalogue-archive .tmcseo-wrap {
	box-sizing: border-box;
	margin: 0 auto;
	max-width: 1200px;
	padding-left: 40px;
	padding-right: 40px;
}

.tmcseo-archive-hero {
	background: linear-gradient(135deg, #f7f5f0 0%, #eef3f1 100%);
	color: var(--tmcseo-dark);
	padding: 62px 0 50px;
}

.tmcseo-eyebrow {
	color: var(--tmcseo-gold);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 1.7px;
	margin: 0 0 12px;
	text-transform: uppercase;
}

.tmcseo-archive-hero h1 {
	color: var(--tmcseo-dark);
	font-family: "Playfair Display", serif;
	font-size: clamp(38px, 5vw, 62px);
	font-weight: 400;
	letter-spacing: -.02em;
	line-height: 1.08;
	margin: 0;
	max-width: 930px;
}

.tmcseo-lead {
	color: var(--tmcseo-muted);
	font-size: 17px;
	font-weight: 300;
	line-height: 1.72;
	margin-top: 22px;
	max-width: 880px;
}

.tmcseo-lead p {
	margin: 0 0 10px;
}

.tmcseo-count {
	color: var(--tmcseo-dark);
	font-size: 13px;
	font-weight: 600;
	margin: 18px 0 0;
}

.tmcseo-parent-link {
	align-items: baseline;
	display: flex;
	flex-wrap: wrap;
	font-size: 14px;
	gap: 7px;
	margin: 17px 0 0;
}

.tmcseo-parent-link span {
	color: var(--tmcseo-muted);
}

.tmcseo-parent-link a,
.tmcseo-shop-link a {
	color: var(--tmcseo-dark);
	font-weight: 600;
	text-decoration: underline;
	text-decoration-color: rgba(183, 140, 86, .55);
	text-underline-offset: 4px;
}

.tmcseo-term-nav {
	border-top: 1px solid rgba(45, 49, 52, .12);
	margin-top: 28px;
	padding-top: 22px;
}

.tmcseo-term-nav h2,
.tmcseo-link-panel h2 {
	color: var(--tmcseo-dark);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .7px;
	margin: 0 0 13px;
	text-transform: uppercase;
}

.tmcseo-term-links {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
}

.tmcseo-term-links a {
	background: #fff;
	border: 1px solid var(--tmcseo-border);
	border-radius: 999px;
	color: var(--tmcseo-dark);
	font-size: 13px;
	line-height: 1.25;
	padding: 9px 14px;
	text-decoration: none;
	transition: border-color .2s, box-shadow .2s, color .2s;
}

.tmcseo-term-links a:hover,
.tmcseo-term-links a:focus-visible {
	border-color: var(--tmcseo-gold);
	box-shadow: 0 5px 14px rgba(45, 49, 52, .06);
	color: #8b673a;
}

.tmcseo-archive-support {
	background: #fff;
	color: var(--tmcseo-dark);
	padding: 68px 0 78px;
}

.tmcseo-support-copy {
	max-width: 900px;
}

.tmcseo-support-copy h2 {
	font-family: "Playfair Display", serif;
	font-size: clamp(30px, 4vw, 42px);
	font-weight: 400;
	line-height: 1.18;
	margin: 0 0 24px;
}

.tmcseo-support-copy p {
	color: var(--tmcseo-muted);
	font-size: 16px;
	font-weight: 300;
	line-height: 1.75;
	margin: 0 0 13px;
}

.tmcseo-link-panel {
	background: var(--tmcseo-soft);
	border: 1px solid var(--tmcseo-border);
	border-radius: 14px;
	margin-top: 34px;
	padding: 24px 26px 26px;
}

.tmcseo-guide-links {
	display: grid;
	gap: 9px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.tmcseo-guide-links a {
	background: #fff;
	border: 1px solid var(--tmcseo-border);
	border-radius: 9px;
	color: var(--tmcseo-dark);
	display: flex;
	font-size: 14px;
	font-weight: 500;
	gap: 12px;
	justify-content: space-between;
	line-height: 1.4;
	padding: 13px 15px;
	text-decoration: none;
}

.tmcseo-guide-links a span,
.tmcseo-shop-link a span {
	color: var(--tmcseo-gold);
	margin-left: 6px;
}

.tmcseo-shop-link {
	margin: 31px 0 0;
}

@media (max-width: 767px) {
	.tmcseo-catalogue-archive .tmcseo-wrap {
		padding-left: 20px;
		padding-right: 20px;
	}

	.tmcseo-archive-hero {
		padding: 44px 0 38px;
	}

	.tmcseo-lead {
		font-size: 16px;
		line-height: 1.65;
	}

	.tmcseo-archive-support {
		padding: 50px 0 58px;
	}

	.tmcseo-link-panel {
		padding: 20px;
	}

	.tmcseo-guide-links {
		grid-template-columns: 1fr;
	}
}
