/* The News route meets the 88px header with no shell padding. */
.news-page {
	padding: 0;
}

.news-archive {
	position: relative;
	padding-block: 110px;
	overflow: hidden;
	color: var(--siliteh-color-midnight-navy);
	background: var(--siliteh-color-ghost-white);
}

/* Figma 511:27997 lays the same muted still behind the grid at 20%. */
.news-archive__background {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	opacity: 0.2;
	object-fit: cover;
}

.news-archive__inner {
	position: relative;
	z-index: 1;
	display: grid;
	gap: 56px;
	width: min(1320px, calc(100% - 80px));
	margin-inline: auto;
}

.news-archive__header {
	display: grid;
	gap: 16px;
	justify-items: start;
}

.news-archive__title-stack {
	display: grid;
	gap: 12px;
}

.news-archive h1 {
	margin: 0;
	font-size: var(--siliteh-font-h1);
	font-weight: 500;
	letter-spacing: -0.03em;
	line-height: 1.3;
}

.news-archive__title-stack p {
	margin: 0;
	font-size: var(--siliteh-font-body-medium);
	line-height: 1.25;
}

.news-archive__filters {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.news-archive__chip {
	padding: 2px 6px;
	border: 1px solid var(--siliteh-color-white);
	border-radius: 4px;
	background: var(--siliteh-color-light-blue);
	color: var(--siliteh-color-midnight-navy);
	font-size: 10px;
	font-weight: 700;
	line-height: 1.4;
	text-decoration: none;
	text-transform: uppercase;
}

a.news-archive__chip {
	transition:
		background-color var(--siliteh-interaction-duration) var(--siliteh-interaction-easing),
		border-color var(--siliteh-interaction-duration) var(--siliteh-interaction-easing);
}

.news-archive__chip--active {
	border-color: var(--siliteh-color-midnight-navy);
}

@media (hover: hover) and (pointer: fine) {
	a.news-archive__chip:hover {
		border-color: var(--siliteh-color-midnight-navy);
		text-decoration: none;
	}
}

.news-archive__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: 24px;
	row-gap: 56px;
}

.news-archive__card {
	overflow: hidden;
	min-width: 0;
	border: 1px solid var(--siliteh-color-bright-gray);
	border-radius: 16px;
	background: var(--siliteh-color-white);
	box-shadow: var(--siliteh-shadow-card);
}

.news-archive__card > a {
	display: block;
	height: 100%;
	color: inherit;
	text-decoration: none;
}

.news-archive__media {
	width: 100%;
	height: 240px;
	background: var(--siliteh-color-bright-gray);
}

.news-archive__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.news-archive__card-copy {
	display: grid;
	gap: 12px;
	justify-items: start;
	padding: 24px;
}

.news-archive__card-copy h2 {
	margin: 0;
	font-size: var(--siliteh-font-h3);
	font-weight: 700;
	line-height: 1.4;
}

.news-archive__actions {
	display: flex;
	justify-content: flex-end;
}

.news-archive__load-more {
	gap: 12px;
	border-radius: 12px;
}

@media (hover: hover) and (pointer: fine) {
	.news-archive__load-more:hover {
		background: var(--siliteh-color-black);
		text-decoration: none;
	}
}

.news-archive__empty {
	margin: 0;
	padding: 40px;
	border: 1px solid var(--siliteh-color-bright-gray);
	border-radius: 16px;
	background: var(--siliteh-color-white);
	font-size: var(--siliteh-font-button);
}

@media (max-width: 1300px) {
	.news-archive h1 {
		font-size: 58px;
	}
}

@media (max-width: 900px) {
	.news-archive {
		padding-block: 72px;
	}

	.news-archive__inner {
		gap: 40px;
	}

	.news-archive h1 {
		font-size: 44px;
		letter-spacing: -0.03em;
		line-height: 1.18;
	}

	.news-archive__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 12px;
		row-gap: 32px;
	}

	.news-archive__card-copy {
		padding: 20px;
	}
}

@media (max-width: 600px) {
	.news-archive {
		padding-block: 39px;
	}

	.news-archive__inner {
		width: calc(100% - 40px);
	}

	.news-archive h1 {
		font-size: 44px;
		letter-spacing: -0.03em;
		line-height: 1.18;
	}

	.news-archive__grid {
		grid-template-columns: 1fr;
		row-gap: 24px;
	}

	.news-archive__load-more {
		width: 100%;
	}
}
