/* ── Design tokens ─────────────────────────────── */
:root {
	--teal: #0d7b6e;
	--teal-light: #e6f4f2;
	--teal-mid: #b2dbd6;
	--gold: #b5832a;
	--gold-light: #f9f2e6;
	--ink: #1a1a2e;
	--ink-mid: #3d3d5c;
	--muted: #7a7a96;
	--surface: #fdfcfb;
	--border: #e4e0da;
	--font-serif: "Lora", Georgia, serif;
	--font-sans: "DM Sans", system-ui, sans-serif;
}

/* ── Base ──────────────────────────────────────── */
body {
	font-family: var(--font-sans);
	color: var(--ink);
	background: var(--surface);
	font-size: 15px;
	line-height: 1.65;
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--font-serif);
	color: var(--ink);
}

a {
	color: var(--teal);
	transition: color 0.15s;
}
a:hover {
	color: var(--gold);
}

/* ── Hero tagline chip ─────────────────────────── */
.chip {
	display: inline-block;
	background: var(--teal-light);
	color: var(--teal);
	border: 1px solid var(--teal-mid);
	border-radius: 20px;
	padding: 2px 12px;
	font-size: 0.78rem;
	font-weight: 500;
	letter-spacing: 0.03em;
	margin: 2px 3px;
}

/* ── Section headers ───────────────────────────── */
.section-rule {
	border: none;
	border-top: 2px solid var(--teal);
	width: 40px;
	margin: 0 0 8px 0;
}

/* ── Timeline ──────────────────────────────────── */
.timeline {
	margin: 0;
	padding: 0;
	list-style: none;
}

.timeline li {
	position: relative;
	padding: 0 10px 12px 30px;
}

.timeline li:after {
	content: "";
	position: absolute;
	background: var(--teal);
	width: 9px;
	height: 9px;
	left: 8px;
	top: 7px;
	border-radius: 50%;
}

.timeline li:before {
	content: "";
	position: absolute;
	height: 70%;
	width: 20px;
	left: 8px;
	top: 2px;
	background-image: radial-gradient(circle at 2.5px, #c8d8d6 1px, rgba(255,255,255,0) 2.5px);
	background-position: top;
	background-size: 15px 15px;
	background-repeat: repeat-y;
}

/* ── Expertise pills ───────────────────────────── */
.expertise-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 8px;
}

.expertise-pill {
	background: var(--gold-light);
	color: var(--gold);
	border: 1px solid #e0c87a;
	border-radius: 4px;
	padding: 3px 10px;
	font-size: 0.8rem;
	font-weight: 500;
}

/* ── Outcome highlight box ─────────────────────── */
.outcome-box {
	background: var(--teal-light);
	border-left: 3px solid var(--teal);
	border-radius: 0 6px 6px 0;
	padding: 10px 14px;
	margin-top: 10px;
	font-size: 0.88rem;
	color: var(--ink-mid);
}

/* ── Award cards ───────────────────────────────── */
.award-card {
	background: var(--gold-light);
	border: 1px solid #e0c87a;
	border-radius: 8px;
	padding: 10px 14px;
	margin-bottom: 8px;
}

/* ── Platform tags ─────────────────────────────── */
.platform-row {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin-bottom: 6px;
}

.platform-tag {
	background: var(--ink);
	color: #fff;
	border-radius: 4px;
	padding: 2px 8px;
	font-size: 0.75rem;
	font-family: var(--font-sans);
	white-space: nowrap;
	margin-top: 2px;
}

/* ── Footer ────────────────────────────────────── */
.attribution {
	color: #bbb;
}

/* ── Responsive ────────────────────────────────── */
@media only screen and (max-width: 600px) {
	.nav-item {
		width: 90px;
		text-align: center;
	}
	.nav {
		justify-content: center;
	}
	.navbar-brand {
		width: 100%;
		text-align: center;
		margin-bottom: 5px;
		margin-left: 30px;
	}
}
