/* Author profile pages (article authors) - shared layout.
   Mirrors the home + about hero scale so all three landing surfaces
   (home / about / authors) read at the same sizes. Linked by every
   /authors/<slug>.html page. */

.hero.hero--authors .author-portrait {
  width: 156px; height: 156px; border-radius: 50%;
  margin: 0 auto 28px; display: block;
  object-fit: cover; object-position: center 18%;
  border: 1px solid var(--line-2);
  box-shadow: 0 24px 60px -28px rgba(0,0,0,0.55), 0 0 0 6px color-mix(in oklab, var(--surface) 70%, transparent);
  background: var(--surface);
}

.hero.hero--authors h1.display {
  font-size: clamp(56px, 9.6vw, 144px);
  line-height: 0.92;
  letter-spacing: -0.025em;
  margin-bottom: 28px;
}
.hero.hero--authors .lede {
  font-size: 18px;
  line-height: 1.55;
}

/* Meta strip under the lede - role, location, link. Mono, small, calm. */
.author-meta {
  display: flex; flex-wrap: wrap; justify-content: center;
  gap: 10px 18px; margin: 0 auto;
  font-family: "JetBrains Mono", monospace;
  font-size: 12px; letter-spacing: 0.08em;
  color: var(--muted); text-transform: uppercase;
}
.author-meta a {
  color: var(--ink-2);
  background-image: linear-gradient(var(--ink-2), var(--ink-2));
  background-position: 0 100%; background-repeat: no-repeat;
  background-size: 100% 1px; padding-bottom: 1px;
  transition: color .2s var(--ease), background-image .2s var(--ease), background-size .2s var(--ease);
}
.author-meta a:hover {
  color: var(--accent-ink);
  background-image: linear-gradient(var(--accent), var(--accent));
  background-size: 100% 2px;
}
.author-meta .sep { color: var(--muted); opacity: 0.5; }

/* Section header scale - aligned with about-us. */
.about-prose .section-head h2,
.about .section-head h2,
.creds .section-head h2 {
  font-size: clamp(40px, 4.2vw, 56px);
  line-height: 1.05;
  letter-spacing: -0.015em;
}

/* Body prose. */
.about-prose .prose-body p { font-size: 19px; line-height: 1.65; }
.about-prose .prose-body p:first-child { font-size: 24px; line-height: 1.5; color: var(--ink); }

/* Credentials grid - awards row on top (full width), then a 2-col
   row below for Microsoft certifications and learning. Stacks to a
   single column on mobile. */
section.creds { border-top: 1px solid var(--line); padding: 100px 0 120px; }
.creds-grid {
  display: grid; grid-template-columns: 1fr; gap: 56px;
  margin-top: 24px;
}
.creds-grid--certs {
  grid-template-columns: 1fr 1fr;
}
.creds-col { padding-top: 28px; border-top: 1px solid var(--line); }
.creds-col .ac-label { margin-bottom: 16px; }
.creds-col .award {
  font-family: "Instrument Serif", serif;
  font-size: 32px; line-height: 1.15; letter-spacing: -0.01em;
  color: var(--ink); margin: 0 0 8px;
}
.creds-col .award em { font-style: italic; color: var(--accent-ink); }
.creds-col .award-year {
  font-family: "JetBrains Mono", monospace;
  font-size: 12px; letter-spacing: 0.08em;
  color: var(--muted); text-transform: uppercase;
}
.creds-col .cert {
  padding: 16px 0;
  border-bottom: 1px dashed var(--line);
  display: grid; grid-template-columns: 1fr auto; gap: 6px 24px; align-items: baseline;
  color: inherit; text-decoration: none;
  transition: padding .2s var(--ease);
}
.creds-col .cert:last-child { border-bottom: none; }
.creds-col a.cert:hover { padding-left: 6px; }
.creds-col a.cert:hover .cert-name { color: var(--accent-ink); }
.creds-col a.cert:hover .cert-arrow { color: var(--accent-ink); transform: translate(2px, -2px); }
.creds-col .cert-name {
  font-size: 17px; color: var(--ink); line-height: 1.35;
  transition: color .2s var(--ease);
}
.creds-col .cert-name .cert-arrow {
  display: inline-block; margin-left: 8px;
  font-family: "JetBrains Mono", monospace;
  font-size: 13px; color: var(--ink-2);
  transition: color .2s var(--ease), transform .2s var(--ease);
}
.creds-col .cert-meta {
  font-family: "JetBrains Mono", monospace;
  font-size: 11.5px; letter-spacing: 0.08em;
  color: var(--muted); text-transform: uppercase;
  white-space: nowrap;
  grid-column: 2;
}
.creds-col .cert-sub {
  grid-column: 1 / -1;
  font-family: "JetBrains Mono", monospace;
  font-size: 11.5px; letter-spacing: 0.08em;
  color: var(--muted); text-transform: uppercase;
}

@media (max-width: 760px) {
  .creds-grid--certs { grid-template-columns: 1fr; gap: 48px; }
}
