.eyebrow,
.brief-label,
.item-number,
.evidence-row__code,
.publication-link__label,
.timeline-item__org,
.case-study-row__number {
  margin: 0;
  color: var(--pb-root-accent);
  font-family: var(--font-mono);
  font-size: 0.73rem;
  font-weight: 650;
  letter-spacing: 0.08em;
  line-height: 1.35;
  text-transform: uppercase;
}

.item-number,
.evidence-row__code {
  color: var(--pb-root-accent);
  font-size: 1.14rem;
  font-weight: 500;
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  border: 1px solid var(--pb-rule);
  padding: 0.62rem 0.9rem;
  color: var(--pb-ink);
  font-weight: 500;
  text-decoration: none;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.hero .button {
  letter-spacing: 0.095rem;
}

.button:hover {
  border-color: var(--pb-accent);
  background: var(--pb-root-bg-soft);
  color: var(--pb-root-accent);
}

.button--primary {
  border-color: var(--pb-root-accent);
  background: var(--pb-root-accent);
  color: white;
}

.button--primary:visited {
  border-color: var(--pb-root-accent);
  background: var(--pb-root-accent);
  color: white;
}

.button--primary:hover {
  border-color: #d93f18;
  background: #d93f18;
  color: white;
  transform: translateY(-1px);
}

.button--quiet {
  color: var(--pb-muted);
}

.action-row,
.contact-links,
.link-pair {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.link-pair {
  margin-top: 1rem;
  font-size: 0.9rem;
  font-weight: 700;
}

.focus-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid var(--pb-rule);
}

.focus-item {
  min-height: 310px;
  border-bottom: 1px solid var(--pb-rule);
  padding: 1.15rem 1.3rem 1.3rem 0;
}

.focus-item:nth-child(odd) {
  border-right: 1px solid var(--pb-rule);
}

.focus-item:nth-child(even) {
  padding-left: 1.3rem;
}

.focus-item:last-child {
  border-bottom: 0;
}

.focus-item h3,
.evidence-row h3,
.publication-link h3,
.timeline-item h3,
.case-study-row h3 {
  margin: 0.45rem 0 0.65rem;
  font-family: var(--font-sans);
  font-size: clamp(1.35rem, 2.2vw, 2rem);
  font-weight: 760;
  line-height: 1.08;
}

.focus-item p,
.evidence-row p,
.publication-link p,
.timeline-item p,
.case-study-row dd,
.downloads p,
.contact-section p {
  color: var(--pb-muted);
}

.focus-item .item-number,
.evidence-row .evidence-row__code {
  color: var(--pb-root-accent);
}

.evidence-list,
.history-list,
.timeline,
.case-list {
  display: grid;
  border-top: 1px solid var(--pb-rule);
}

.evidence-row,
.history-item,
.case-study-row {
  display: grid;
  grid-template-columns: 90px minmax(0, 1fr);
  gap: 1.5rem;
  border-bottom: 1px solid var(--pb-rule);
  padding: 1.2rem 0 1.35rem;
}

.history-list {
  margin-bottom: clamp(2rem, 5vw, 4rem);
}

.history-item {
  display: block;
  padding-left: 0;
}

.history-item:last-child {
  border-bottom: 0;
}

.history-item h3 {
  max-width: 34ch;
  margin: 0 0 0.55rem;
  font-size: clamp(1.35rem, 2.2vw, 2rem);
  line-height: 1.08;
}

.history-item__meta {
  margin: 0 0 0.85rem;
  color: var(--pb-root-accent);
  font-family: var(--font-mono);
  font-size: 0.78rem;
  font-weight: 550;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.history-item p:not(.history-item__meta) {
  max-width: 78ch;
  margin: 0.55rem 0 0;
  color: var(--pb-muted);
}

.evidence-row p {
  max-width: var(--measure);
  margin: 0.45rem 0 0;
}

.evidence-row__details {
  display: grid;
  grid-template-columns: minmax(130px, 0.24fr) minmax(0, 1fr);
  gap: 0.55rem 1.2rem;
  max-width: 78ch;
  margin: 0.75rem 0 0;
}

.evidence-row__details dt {
  color: var(--pb-ink);
  font-family: var(--font-mono);
  font-size: 0.89rem;
  font-weight: 550;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.evidence-row__details dd {
  margin: 0;
  color: var(--pb-muted);
}

.international-experience {
  border-bottom: 1px solid var(--pb-rule);
  padding: 1.2rem 0 1.35rem;
}

.international-experience p:last-child {
  max-width: none;
  width: 100%;
  margin: 0.45rem 0 0;
  color: var(--pb-ink);
  font-family: var(--font-mono);
  font-size: 0.89rem;
  font-weight: 550;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.selected-clients {
  padding: 1.2rem 0 1.5rem;
}

.client-logo-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 1px;
  margin-top: 0.85rem;
  background: var(--pb-rule);
}

.client-logo {
  flex: 1 1 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 76px;
  padding: 1rem;
  background: var(--pb-root-bg);
}

.client-logo img {
  display: block;
  width: auto;
  max-width: min(100%, 150px);
  max-height: 40px;
  filter: grayscale(1) brightness(0);
  object-fit: contain;
}

.client-logo--cyan img {
  filter: brightness(0) saturate(100%) invert(63%) sepia(91%) saturate(1571%) hue-rotate(135deg) brightness(97%) contrast(104%);
  opacity: 0.45;
}

.publication-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  border: 1px solid var(--pb-rule);
  background: var(--pb-rule);
}

.publication-link {
  background: var(--pb-root-bg);
  padding: 1.25rem;
}

.publication-link__label {
  color: var(--pb-root-accent);
}

.publication-link .publication-link__label {
  color: var(--pb-root-accent);
}

.publication-link p:not(.publication-link__label) {
  max-width: 34rem;
}

.contact-section,
.downloads {
  display: grid;
  grid-template-columns: minmax(180px, 0.34fr) minmax(0, 1fr);
  gap: 2rem;
  border-top: 1px solid var(--pb-ink);
  padding-top: 1.1rem;
}

.contact-section h2,
.downloads h2 {
  max-width: 18ch;
  margin: 0.4rem 0 0;
  font-family: var(--font-sans);
  font-size: clamp(2rem, 4vw, 4rem);
  font-weight: 780;
  line-height: 1;
}

.contact-section .eyebrow {
  color: var(--pb-root-accent);
  font-weight: 500;
}

.contact-section h2 {
  font-size: clamp(1.75rem, 3.5vw, 3.5rem);
}

.contact-section h2 span {
  display: block;
}

.contact-section p,
.downloads p {
  max-width: 56rem;
  margin-top: 0;
  font-size: clamp(1.1rem, 1.6vw, 1.35rem);
}

.contact-list {
  display: grid;
  gap: 0.7rem;
  margin: 0;
  padding: 2.375rem 0 0;
  list-style: none;
  font-size: clamp(1.35rem, 2vw, 1.46rem);
  line-height: 1.25;
}

.profile-list {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid var(--pb-rule);
}

.profile-list li {
  border-bottom: 1px solid var(--pb-rule);
  padding: 0.85rem 0;
  color: var(--pb-ink-soft);
}

.timeline-item {
  border-bottom: 1px solid var(--pb-rule);
  padding: 1.2rem 0 1.35rem;
}

.timeline-item p {
  max-width: var(--measure);
}

.case-study-row dl {
  display: grid;
  grid-template-columns: minmax(120px, 0.22fr) minmax(0, 1fr);
  gap: 0.55rem 1.2rem;
  margin: 0;
}

.case-study-row dt {
  color: var(--pb-root-accent);
  font-family: var(--font-mono);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.case-study-row dd {
  margin: 0;
}

.evidence-map {
  display: grid;
  border-top: 1px solid var(--pb-rule);
}

.evidence-map > div {
  display: grid;
  grid-template-columns: 0.8fr 1.35fr 1fr 1fr;
  gap: 1rem;
  border-bottom: 1px solid var(--pb-rule);
  padding: 0.85rem 0;
}

.evidence-map__head {
  color: var(--pb-root-accent);
  font-family: var(--font-mono);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.evidence-map span {
  min-width: 0;
}

@media (max-width: 900px) {
  .focus-grid,
  .publication-grid,
  .contact-section,
  .downloads {
    grid-template-columns: 1fr;
  }

  .focus-item,
  .focus-item:nth-child(even),
  .focus-item:nth-child(odd) {
    min-height: auto;
    border-right: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .evidence-map > div {
    grid-template-columns: 1fr;
    gap: 0.35rem;
  }
}

@media (max-width: 640px) {
  .action-row,
  .contact-links {
    display: grid;
  }

  .button {
    width: 100%;
  }

  .evidence-row,
  .history-item,
  .case-study-row,
  .evidence-row__details,
  .case-study-row dl {
    grid-template-columns: 1fr;
  }
}
