/* PROFESSIONAL JOURNEY — the ledger: ruled rows like a land-records register */
.pj-head { background: var(--white); border-bottom: 1px solid var(--line); }
.pj-head .wrap { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 3rem 4rem; align-items: end; }
.pj-head h1 { font-size: clamp(2.8rem, 1.5rem + 4.6vw, 5.8rem); }
.pj-head h1 em { color: var(--wheat-ink); }

.ledger { border: 1px solid var(--line-strong); background: var(--white); }
.ledger__row { display: grid; grid-template-columns: 6.5rem minmax(0, 1.1fr) minmax(0, .8fr) minmax(0, 1.6fr) minmax(0, 1fr); border-top: 1px solid var(--line); }
.ledger__row > * { padding: 1.2rem 1.1rem; border-left: 1px solid var(--line); margin: 0; font-size: .96rem; line-height: 1.5; }
.ledger__row > *:first-child { border-left: 0; }
.ledger__row--head { border-top: 0; background: var(--indigo); color: var(--sand); }
.ledger__row--head > * { font-size: .68rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--wheat); padding-block: .9rem; border-color: var(--line-on-dark); }
.ledger__yr { font-family: var(--serif); font-size: 1.7rem !important; line-height: 1.05 !important; color: var(--indigo); }
.ledger__role { font-weight: 650; color: var(--indigo); }
.ledger__src a { font-size: .86rem; word-break: break-word; }
.ledger__row:nth-child(even):not(.ledger__row--head) { background: rgba(232, 221, 200, .28); }
.ledger__row.is-current { box-shadow: inset 4px 0 0 var(--soil); }

.pj-note { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2rem 4rem; }

@media (max-width: 960px) {
  .pj-head .wrap, .pj-note { grid-template-columns: minmax(0, 1fr); }
  .ledger { border: 0; background: transparent; }
  .ledger__row--head { display: none; }
  .ledger__row { grid-template-columns: minmax(0, 1fr); border: 1px solid var(--line-strong); background: var(--white) !important; margin-bottom: 1.2rem; }
  .ledger__row > * { border-left: 0; border-top: 1px solid var(--line); padding: .8rem 1rem; }
  .ledger__row > *:first-child { border-top: 0; background: var(--indigo); color: var(--white); }
  .ledger__row > *[data-label]::before { content: attr(data-label); display: block; font-size: .66rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--slate); margin-bottom: .2rem; }
  .ledger__yr { color: var(--white) !important; }
}
