.main-nav .nav-active {
	background: var(--black);
	color: var(--paper-2);
	border-color: var(--black);
}

.engineering-intro {
	display: block;
	background: radial-gradient(circle at 82% 22%, rgba(0,199,217,.07), transparent 28%), var(--paper);
}

.engineering-intro-copy {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(350px, .75fr);
	column-gap: clamp(36px, 5vw, 76px);
	width: 100%;
}

.engineering-intro-copy > .eyebrow,
.engineering-intro-copy > .section-heading,
.engineering-intro-copy > .engineering-body {
	grid-column: 1;
}

.engineering-title-heading { grid-template-columns: 70px 1fr; margin-bottom: 32px; }
.engineering-title-heading h1 { font-size: clamp(64px,7vw,112px); line-height: .82; }
.engineering-title-heading .lead { margin-top: 30px; max-width: 780px; }
.engineering-body { max-width: 900px; margin: 0 0 18px; color: var(--muted); font-size: 14px; line-height: 1.8; }

.engineering-link-block {
	grid-column: 2;
	grid-row: 2 / span 4;
	align-self: start;
	margin-top: 0;
	display: grid;
	gap: 18px;
}

.engineering-link-item {
	display: grid;
	grid-template-columns: 1fr;
	align-items: start;
	gap: 18px;
	padding: 22px 24px;
	border: 1px solid var(--ink);
	background: rgba(255,255,255,.22);
}

.engineering-link-item h3 {
	margin: 0 0 8px;
	font-size: 20px;
}

.engineering-link-item p {
	max-width: 760px;
	margin: 0;
	color: var(--muted);
	font-size: 12px;
	line-height: 1.7;
}

.engineering-link-item .support-button {
	justify-self: start;
	white-space: nowrap;
}
.engineering-manifest { border: 1px solid var(--ink); }
.manifest-line { min-height: 125px; padding: 20px; display: grid; grid-template-columns: 1fr auto; align-content: space-between; gap: 10px 20px; border-bottom: 1px solid var(--ink); }
.manifest-line:last-child { border-bottom: 0; }
.manifest-line small, .manifest-line span { color: var(--muted); font-size: 10px; line-height: 1.5; }
.manifest-line strong { font-family: "VT323", monospace; font-size: 34px; font-weight: 400; line-height: 1; text-align: right; }
.manifest-line span { grid-column: 1 / -1; }

.engineering-timeline { background: var(--paper-2); }
.timeline-list { position: relative; max-width: 1100px; margin-left: 99px; border-left: 1px solid var(--ink); }
.timeline-list article { position: relative; display: grid; grid-template-columns: 78px 1fr; gap: 24px; padding: 0 0 38px 26px; }
.timeline-list article:last-child { padding-bottom: 0; }
.timeline-list article::before { content: ""; position: absolute; left: -5px; top: 7px; width: 9px; height: 9px; background: var(--paper-2); border: 1px solid var(--ink); }
.timeline-step { color: var(--cyan); font-family: "VT323", monospace; font-size: 26px; line-height: 1; }
.timeline-list small { display: block; margin-bottom: 7px; color: var(--muted); font-size: 10px; letter-spacing: .08em; }
.timeline-list h3 { margin-bottom: 8px; font-size: 24px; }
.timeline-list p { max-width: 820px; margin: 0; color: var(--muted); font-size: 13px; line-height: 1.7; }

.engineering-findings { background: radial-gradient(circle at 18% 82%, rgba(0,199,217,.05), transparent 24%), var(--paper); }
.engineering-finding-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border: 1px solid var(--ink); }
.engineering-finding-grid article { padding: 28px; border-right: 1px solid var(--ink); border-bottom: 1px solid var(--ink); }
.engineering-finding-grid article:nth-child(2n) { border-right: 0; }
.engineering-finding-grid article:nth-last-child(-n+2) { border-bottom: 0; }
.engineering-finding-grid article > span { display: block; margin-bottom: 32px; color: var(--muted); font-size: 11px; }
.engineering-finding-grid h3 { margin-bottom: 18px; font-size: 25px; }
.engineering-finding-grid p { margin: 0 0 15px; color: var(--muted); font-size: 13px; line-height: 1.75; }
.engineering-finding-grid p:last-child { margin-bottom: 0; }

.engineering-todo { min-height: calc(100svh - var(--footer-h)); padding-bottom: 54px; background: var(--paper-2); }
.todo-intro { max-width: 950px; margin: 0 0 36px 99px; padding: 17px 20px; border: 1px solid var(--ink); box-shadow: inset 4px 0 0 var(--cyan); background: rgba(255,255,255,.22); }
.todo-intro p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.75; }
.todo-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border: 1px solid var(--ink); }
.todo-list article { min-height: 240px; padding: 24px; border-right: 1px solid var(--ink); border-bottom: 1px solid var(--ink); }
.todo-list article:nth-child(3n) { border-right: 0; }
.todo-list article:nth-last-child(-n+3) { border-bottom: 0; }
.todo-status { display: inline-block; margin-bottom: 28px; padding: 4px 7px; border: 1px solid var(--ink); color: var(--muted); font-size: 9px; letter-spacing: .08em; }
.todo-list h3 { margin-bottom: 14px; font-size: 22px; }
.todo-list p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.7; }
.engineering-home { margin-top: 48px; }

@media (max-width: 980px) {
	.engineering-manifest { max-width: 760px; }
	.todo-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.todo-list article:nth-child(3n) { border-right: 1px solid var(--ink); }
	.todo-list article:nth-child(2n) { border-right: 0; }
	.todo-list article:nth-last-child(-n+3) { border-bottom: 1px solid var(--ink); }
	.todo-list article:nth-last-child(-n+2) { border-bottom: 0; }
}

@media (max-width: 900px) {
	.engineering-intro-copy {
		grid-template-columns: 1fr;
	}

	.engineering-link-block {
		grid-column: 1;
		grid-row: auto;
		margin-top: 38px;
	}

	.engineering-link-item {
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
		gap: 36px;
	}
}

@media (max-width: 720px) {

	.engineering-link-item {
		grid-template-columns: 1fr;
		gap: 18px;
		align-items: start;
	}

	.engineering-link-item .support-button {
		justify-self: start;
	}
	.timeline-list { margin-left: 0; }
	.todo-intro { margin-left: 0; }
	.engineering-finding-grid { grid-template-columns: 1fr; }
	.engineering-finding-grid article, .engineering-finding-grid article:nth-child(2n), .engineering-finding-grid article:nth-last-child(-n+2) { border-right: 0; border-bottom: 1px solid var(--ink); }
	.engineering-finding-grid article:last-child { border-bottom: 0; }
}

@media (max-width: 620px) {
	.engineering-title-heading { grid-template-columns: 44px minmax(0,1fr); gap: 12px; }
	.engineering-title-heading h1 { font-size: clamp(52px,16vw,74px); }
	.engineering-title-heading .lead { margin-top: 22px; }
	.timeline-list article { grid-template-columns: 44px 1fr; gap: 14px; padding-left: 20px; }
	.todo-list { grid-template-columns: 1fr; }
	.todo-list article, .todo-list article:nth-child(2n), .todo-list article:nth-child(3n), .todo-list article:nth-last-child(-n+2), .todo-list article:nth-last-child(-n+3) { border-right: 0; border-bottom: 1px solid var(--ink); }
	.todo-list article:last-child { border-bottom: 0; }
}


.support-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	padding: 11px 16px;

	border: 1px solid var(--ink);
	background: var(--black);
	color: var(--paper-2);

	font-size: 11px;
	font-weight: 600;
	letter-spacing: .06em;
	text-decoration: none;
	text-transform: uppercase;

	box-shadow: 4px 4px 0 var(--cyan);
	transition:
		transform .15s ease,
		box-shadow .15s ease,
		background .15s ease;
}

.support-button:hover,
.support-button:focus-visible {
	background: var(--magenta);
	color: #fff;
	transform: translate(-2px, -2px);
	box-shadow: 6px 6px 0 var(--cyan);
	outline: none;
}
