/**
 * HORIZON — Company page. Loaded after horizon.css on /company/ only.
 * Uses the shared tokens; adds the work ledger, the founder block, the careers card,
 * the particulars table and the record figure's own marks.
 */

/* ── § 01 · the work, by line ─────────────────────────────────────────────── */

.hz-work { margin-bottom: var(--s-5); }
.hz-track .hz-work__list { list-style: none; padding: 0; gap: 0; }
.hz-work__list li { display: grid; gap: 2px; padding: var(--s-2) 0; border-bottom: 1px solid var(--rule); }
.hz-work__list li:first-child { padding-top: 0; }
.hz-work__name { font: 500 1.125rem/1.3 var(--f-display); color: var(--ink); text-decoration: none; justify-self: start; }
.hz-work__name:hover { color: var(--bronze); }
.hz-work__what { color: var(--ink-2); font-size: 0.9375rem; }
.hz-work__status { font: 400 var(--t-0)/1.4 var(--f-mono); letter-spacing: 0.02em; color: var(--bronze); }

.hz-about { margin-bottom: var(--s-5); }

/* ── the record figure ────────────────────────────────────────────────────── */

.fig-label--record { color: var(--ink); border-style: solid; }
.hz-record { margin-top: var(--s-5); padding-top: var(--s-4); border-top: 1px solid var(--ink); }
.hz-record .fig { max-width: 980px; }
.fig-term { fill: none; stroke: var(--ink); stroke-width: 1; }
.fig-term-lived { fill: var(--bronze); }
.fig-cap--today { fill: var(--bronze); }

/* ── § 02 · the founder ───────────────────────────────────────────────────── */

.hz-person {
	display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.618fr); gap: var(--s-5);
	border-top: 1px solid var(--ink); padding-top: var(--s-4);
}
.hz-person + .hz-person { border-top-color: var(--rule); margin-top: var(--s-5); }
.hz-person__head { display: grid; align-content: start; gap: var(--s-1); }
.hz-person__name { font: 500 var(--t-3)/1.1 var(--f-display); letter-spacing: -0.02em; }
.hz-person__role { font: 400 1.5rem/1.25 var(--f-serif); color: var(--ink-2); }
.hz-person__body { display: grid; gap: var(--s-2); color: var(--ink-2); max-width: 60ch; font-size: var(--t-1); line-height: 1.6; }
@media (max-width: 900px) {
	.hz-person { grid-template-columns: 1fr; gap: var(--s-3); }
}

/* ── § 03 · careers ───────────────────────────────────────────────────────── */

.hz-careers {
	display: grid; align-content: start; gap: var(--s-2); justify-items: start;
	padding: var(--s-4); background: var(--paper-2); border-radius: var(--radius);
}
.hz-careers__count { display: grid; gap: 4px; font: 500 var(--t-5)/1 var(--f-display); letter-spacing: -0.03em; }
.hz-careers__count span { font: 400 var(--t-0)/1.3 var(--f-mono); letter-spacing: 0.04em; text-transform: uppercase; color: var(--ink-3); }
.hz-careers__note { color: var(--ink-2); max-width: 40ch; }

/* ── § 04 · registration ──────────────────────────────────────────────────── */

.hz-reg { border-top: 1px solid var(--ink); }
.hz-reg__row {
	display: grid; grid-template-columns: minmax(10rem, 1fr) minmax(0, 2.618fr); gap: var(--s-3);
	padding: var(--s-2) 0; border-bottom: 1px solid var(--rule); align-items: baseline;
}
.hz-reg dt { font: 400 var(--t-0)/1.4 var(--f-mono); letter-spacing: 0.04em; text-transform: uppercase; color: var(--ink-3); }
.hz-reg dd { margin: 0; font-size: var(--t-1); line-height: 1.5; color: var(--ink); overflow-wrap: anywhere; }
@media (max-width: 640px) {
	.hz-reg__row { grid-template-columns: 1fr; gap: 2px; }
}

/* .fig-text is declared after .fig-text--mute in horizon.css, so the mute needs the scope. */
.fig--record .fig-text--mute { fill: var(--ink-2); }
.fig--record .fig-zoom { fill: none; stroke: var(--ink-3); stroke-width: 1; stroke-dasharray: 2 4; }
