:root {
	color-scheme: light;
	--ink: #1d2a2d;
	--muted: #627174;
	--paper: #f5f7f3;
	--surface: #ffffff;
	--accent: #cf5b3f;
	--line: #d9e0db;
}

* {
	box-sizing: border-box;
}

body {
	margin: 0;
	color: var(--ink);
	background: var(--paper);
	font-family: Georgia, "Times New Roman", serif;
	line-height: 1.6;
}

.page {
	width: min(92%, 960px);
	margin: 0 auto;
}

header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
	padding: 1.5rem 0;
	border-bottom: 1px solid var(--line);
}

.logo {
	color: var(--ink);
	font-size: 1.2rem;
	font-weight: bold;
	text-decoration: none;
}

nav {
	display: flex;
	gap: 1.25rem;
}

nav a {
	color: var(--muted);
	text-decoration: none;
}

nav a:hover,
nav a:focus {
	color: var(--accent);
}

main {
	padding: 5rem 0 4rem;
}

.eyebrow {
	margin: 0 0 0.75rem;
	color: var(--accent);
	font-family: Arial, sans-serif;
	font-size: 0.75rem;
	font-weight: bold;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

h1,
h2 {
	margin-top: 0;
	line-height: 1.1;
}

h1 {
	max-width: 700px;
	margin-bottom: 1.25rem;
	font-size: clamp(2.8rem, 8vw, 5.5rem);
	font-weight: normal;
}

.intro {
	max-width: 600px;
	color: var(--muted);
	font-size: 1.2rem;
}

.button {
	display: inline-block;
	margin-top: 1rem;
	padding: 0.7rem 1rem;
	color: #ffffff;
	background: var(--accent);
	font-family: Arial, sans-serif;
	font-weight: bold;
	text-decoration: none;
}

section {
	padding: 3rem 0;
	border-top: 1px solid var(--line);
}

.section-grid {
	display: grid;
	grid-template-columns: 0.7fr 1.3fr;
	gap: 3rem;
}

.section-label {
	color: var(--muted);
	font-family: Arial, sans-serif;
	font-size: 0.85rem;
	font-weight: bold;
	text-transform: uppercase;
}

.project-list {
	display: grid;
	gap: 1rem;
}

.project {
	padding: 1.25rem;
	background: var(--surface);
	border: 1px solid var(--line);
}

.project h3 {
	margin: 0 0 0.35rem;
}

.project p {
	margin: 0;
	color: var(--muted);
}

footer {
	padding: 1.5rem 0;
	color: var(--muted);
	border-top: 1px solid var(--line);
	font-family: Arial, sans-serif;
	font-size: 0.85rem;
}

@media (max-width: 600px) {
	header {
		align-items: flex-start;
		flex-direction: column;
		gap: 0.75rem;
	}

	main {
		padding-top: 3.5rem;
	}

	.section-grid {
		grid-template-columns: 1fr;
		gap: 1rem;
	}
}
