/**
 * Arquivos (archive.php) e 404 — hero interno no estilo da página Insights.
 */

/* ------------------------------------------------------------------ archive hero */

.lr-archive__hero {
	position: relative;
	background: var(--lr-primary);
	color: var(--lr-white);
	overflow: hidden;
}

.lr-archive__hero .lr-archive__mark {
	position: absolute;
	left: -5%;
	top: 22%;
	width: clamp(200px, 26vw, 420px);
	opacity: .12;
	pointer-events: none;
}

.lr-archive__hero-inner {
	position: relative;
	max-width: var(--lr-max);
	margin: 0 auto;
	padding: clamp(140px, 13vw, 180px) var(--lr-gutter) clamp(72px, 8vw, 120px);
}

.lr-archive__eyebrow {
	display: flex;
	align-items: center;
	gap: 14px;
	font-size: calc(13px * var(--lr-ts, 1));
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: .22em;
	text-transform: uppercase;
	color: var(--lr-mint);
}

.lr-archive__eyebrow .lr-archive__eyebrow-icon {
	height: 22px;
	width: auto;
}

.lr-archive__hero .lr-archive__title {
	margin: 24px 0 0;
	max-width: 900px;
	font-size: calc(clamp(42px, 5.2vw, 88px) * var(--lr-ts, 1));
	font-weight: 800;
	line-height: .98;
	letter-spacing: -.04em;
	color: var(--lr-white);
	text-wrap: balance;
}

.lr-archive__desc {
	margin-top: 32px;
	max-width: 620px;
	display: flex;
	flex-direction: column;
	gap: 14px;
	font-size: calc(clamp(17px, 1.3vw, 19px) * var(--lr-ts, 1));
	line-height: 1.6;
	text-wrap: pretty;
}

.lr-archive__desc > * {
	margin: 0;
}

.lr-archive__desc a {
	color: var(--lr-mint);
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* ------------------------------------------------------------------ list */

.lr-archive__inner {
	max-width: var(--lr-max);
	margin: 0 auto;
	padding: clamp(64px, 8vw, 120px) var(--lr-gutter) clamp(80px, 9vw, 130px);
}

.lr-archive__item {
	min-width: 0;
}

.lr-archive__pagination {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 16px;
	margin-top: clamp(48px, 6vw, 80px);
	padding-top: 28px;
	border-top: 1px solid var(--lr-line);
}

.lr-archive__page-next {
	justify-self: end;
}

.lr-archive__page-count {
	font-size: calc(14px * var(--lr-ts, 1));
	font-weight: 600;
}

.lr-archive__pagination .lr-archive__page-btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	height: 48px;
	padding: 0 24px;
	border: 1.5px solid var(--lr-primary);
	border-radius: 999px;
	font-size: calc(15px * var(--lr-ts, 1));
	font-weight: 700;
	color: var(--lr-primary);
	text-decoration: none;
	transition: background-color .3s, gap .35s var(--lr-ease);
}

.lr-archive__pagination .lr-archive__page-btn:hover,
.lr-archive__pagination .lr-archive__page-btn:focus-visible {
	gap: 16px;
	background: var(--lr-mint);
	color: var(--lr-primary);
}

.lr-archive__empty {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 24px;
	font-size: calc(clamp(18px, 1.5vw, 22px) * var(--lr-ts, 1));
}

.lr-archive__empty p {
	margin: 0;
}

@media (max-width: 599px) {
	.lr-archive__pagination {
		grid-template-columns: 1fr 1fr;
	}

	.lr-archive__page-count {
		grid-column: 1 / -1;
		grid-row: 1;
		text-align: center;
	}
}

/* ------------------------------------------------------------------ 404 */

.lr-404__hero {
	position: relative;
	background: var(--lr-mint);
	color: var(--lr-primary);
	overflow: hidden;
}

.lr-404__inner {
	max-width: var(--lr-max);
	min-height: min(78vh, 760px);
	margin: 0 auto;
	padding: clamp(140px, 13vw, 180px) var(--lr-gutter) clamp(72px, 8vw, 120px);
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-end;
	gap: 32px;
}

.lr-404__text {
	min-width: 0;
	max-width: 820px;
}

.lr-404__eyebrow {
	font-size: calc(13px * var(--lr-ts, 1));
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.lr-404__hero .lr-404__title {
	margin: 18px 0 0;
	font-size: calc(clamp(46px, 6.4vw, 108px) * var(--lr-ts, 1));
	font-weight: 800;
	line-height: .95;
	letter-spacing: -.045em;
	text-wrap: balance;
}

.lr-404__hero .lr-404__lead {
	margin: 24px 0 0;
	max-width: 560px;
	font-size: calc(clamp(18px, 1.5vw, 22px) * var(--lr-ts, 1));
	line-height: 1.55;
}

.lr-404__ctas {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px 28px;
	margin-top: 36px;
}

.lr-404__hero .lr-404__sun {
	width: clamp(70px, 8vw, 120px);
	height: auto;
}

@media (prefers-reduced-motion: reduce) {
	.lr-archive__pagination .lr-archive__page-btn {
		transition: none;
	}
}
