/* Lucis in fundo — institutional content inside the home-page grid. */

.lif-institutional-page {
	--page-accent: var(--project-sand);
}

.lif-page--about {
	--page-accent: var(--project-sand);
}

.lif-page--contact {
	--page-accent: var(--project-olive);
}

.lif-page--proposal {
	--page-accent: var(--project-coral);
}

.lif-institutional-content,
.lif-institutional-article {
	min-width: 0;
}

.lif-institutional-content-header {
	padding-top: 0.9rem;
	border-top: 1px solid var(--lif-black);
}

.lif-page-title,
.lif-page-section-title {
	max-width: 15ch;
	margin: 0;
	color: var(--page-accent);
	font-family: var(--lif-font-serif);
	font-size: var(--lif-site-title-size);
	font-style: italic;
	font-weight: 400;
	line-height: 0.95;
	letter-spacing: -0.035em;
	text-wrap: balance;
}

.lif-institutional-body {
	width: min(100%, 46rem);
	margin-top: var(--lif-title-content-gap);
}

.lif-institutional-body .entry-content img {
	display: block;
	max-width: 100%;
	height: auto;
}

.lif-institutional-body .entry-content {
	color: var(--lif-black);
	font-family: var(--lif-font-serif);
	font-size: var(--lif-body-size);
	font-weight: 400;
	line-height: var(--lif-body-line-height);
	letter-spacing: normal;
}

.lif-institutional-body .entry-content > :first-child {
	margin-top: 0;
}

.lif-institutional-body .entry-content > :last-child {
	margin-bottom: 0;
}

.lif-institutional-body .entry-content p {
	margin-block: 0 1.35em;
}

.lif-page-section-title {
	margin: clamp(3.5rem, 6vw, 5.5rem) 0 1.2rem;
}

.lif-institutional-body .entry-content strong {
	font-weight: 600;
}

.lif-institutional-body .entry-content a {
	color: inherit;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
}

.lif-institutional-body .entry-content a:hover,
.lif-institutional-body .entry-content a:focus-visible {
	color: var(--page-accent);
}

.lif-institutional-body .entry-content a:focus-visible {
	outline: 1px solid var(--page-accent);
	outline-offset: 0.25rem;
}

@media (max-width: 680px) {
	.lif-page-title,
	.lif-page-section-title {
		max-width: none;
	}
}
