/* Two columns of text: heading and optional lead on top, then two readable columns with a quiet divider between them. */
.two-columns-block { position: relative; isolation: isolate; padding: 104px 0; background: var(--fa-color-background); }
.two-columns-block--soft { background: var(--fa-color-primary-very-light); }
.two-columns-block::before { position: absolute; z-index: -1; bottom: 0; left: 0; width: min(420px, 70%); height: 380px; content: ""; background: var(--fa-motif) no-repeat; background-position: 100% 0; background-size: 560px 560px; pointer-events: none; }
/* Heading on the left, the optional lead text beside it on the right (like the other blocks). */
.two-columns-block__intro { max-width: 760px; margin-bottom: 64px; }
.two-columns-block__intro--with-lead { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 560px); gap: 64px; align-items: end; max-width: none; }
.two-columns-block__eyebrow { margin: 0 0 16px; color: var(--fa-color-primary); font-size: 13px; line-height: 1.4; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.two-columns-block__title { margin: 0; color: var(--fa-color-text); font-size: 52px; line-height: 1.05; font-weight: 500; letter-spacing: -.035em; }
html[lang^="nl"] .two-columns-block__title { font-size: 48px; }
.two-columns-block__title em { color: var(--fa-color-primary); font-style: normal; }
.two-columns-block__lead { color: rgba(0, 0, 0, .74); font-size: 17px; line-height: 1.7; }
.two-columns-block__intro:not(.two-columns-block__intro--with-lead) .two-columns-block__lead { margin-top: 22px; }
.two-columns-block__lead > :first-child, .two-columns-block__column > :first-child { margin-top: 0; }
.two-columns-block__lead > :last-child, .two-columns-block__column > :last-child { margin-bottom: 0; }
.two-columns-block__columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 88px; align-items: start; }
.two-columns-block__columns--1 { grid-template-columns: minmax(0, 760px); }
.two-columns-block__column { position: relative; color: rgba(0, 0, 0, .74); font-size: 16px; line-height: 1.75; }
.two-columns-block__column + .two-columns-block__column::before { position: absolute; top: 6px; bottom: 6px; left: -44px; width: 1px; content: ""; background: var(--fa-color-border); }
.two-columns-block__column p { margin: 0 0 1em; }
.two-columns-block__subtitle, .two-columns-block__column h3, .two-columns-block__column h4 { margin: 32px 0 10px; color: var(--fa-color-text); font-size: 20px; line-height: 1.3; font-weight: 700; letter-spacing: -.015em; }
.two-columns-block__column > .two-columns-block__subtitle:first-child { margin-top: 0; }
.two-columns-block__column ul { margin: 0 0 1em; padding: 0; list-style: none; }
.two-columns-block__column li { position: relative; margin: 6px 0; padding-left: 22px; }
.two-columns-block__column li::before { position: absolute; top: .72em; left: 2px; width: 7px; height: 7px; content: ""; background: var(--fa-color-primary); border-radius: 50%; }
.two-columns-block__column a { color: var(--fa-color-primary); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 900px) {
	.two-columns-block { padding: 80px 0; }
	.two-columns-block__intro { margin-bottom: 40px; }
	.two-columns-block__intro--with-lead { grid-template-columns: minmax(0, 1fr); gap: 20px; }
	.two-columns-block__title, html[lang^="nl"] .two-columns-block__title { font-size: 44px; }
	.two-columns-block__columns { grid-template-columns: minmax(0, 1fr); }
	.two-columns-block__column + .two-columns-block__column { margin-top: 32px; padding-top: 32px; }
	.two-columns-block__column + .two-columns-block__column::before { top: 0; right: 0; bottom: auto; left: 0; width: auto; height: 1px; }
}
@media (max-width: 600px) {
	.two-columns-block { padding: 64px 0; }
	.two-columns-block__title, html[lang^="nl"] .two-columns-block__title { font-size: 38px; }
	.two-columns-block__lead { font-size: 17px; }
	.two-columns-block::before { height: 220px; background-size: 330px 330px; opacity: .7; }
}
