/* ============================================================================
   gbi-practice-lead.css: the shared practice lead block
   (application/modules/pages/views/partials/practice_lead.php).
   The block reads its colours from the page: the global brand tokens
   (gbi-tokens.css) by default, and the page's own palette on the Director
   Transition Program (.dtp). Selectors use two classes or more, so they win
   over the .gbi-2026 and .dtp element rules.
   ============================================================================ */
.pl-block{--pl-accent:var(--crimson);--pl-ink:var(--brand-deep);--pl-muted:var(--muted);--pl-bg:var(--cream);--pl-rad:var(--rad);--pl-title:var(--serif);display:grid;grid-template-columns:220px 1fr;gap:40px;align-items:center;background:var(--pl-bg);border-radius:var(--pl-rad);padding:32px;margin:28px 0 0;text-align:left}
.dtp .pl-block{--pl-accent:var(--dtp-berry);--pl-ink:var(--dtp-navy);--pl-muted:var(--dtp-muted);--pl-bg:var(--dtp-cream);--pl-rad:var(--dtp-radius);--pl-title:var(--dtp-serif);margin:0 0 64px}
.pl-block .pl-photo{aspect-ratio:1/1;overflow:hidden;border-radius:var(--pl-rad);background:#fff;border-bottom:4px solid var(--pl-accent)}
.pl-block .pl-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;max-width:none}
.pl-block .pl-body .pl-label{display:inline-block;font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--pl-accent);font-weight:700;margin:0 0 10px}
.pl-block .pl-body .pl-name{font-family:var(--pl-title);font-size:28px;line-height:1.2;color:var(--pl-ink);font-weight:700;margin:0 0 6px}
.pl-block .pl-body .pl-name a{color:inherit;text-decoration:none}
.pl-block .pl-body .pl-role{color:var(--pl-accent);font-weight:700;line-height:1.45;margin:0 0 14px}
.pl-block .pl-body .pl-text{color:var(--pl-muted);font-size:17px;line-height:1.6;margin:0 0 18px}
.pl-block .pl-body .pl-links{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin:0}
.pl-block .pl-body .pl-link{font-weight:700;color:var(--pl-accent);text-decoration:none}
.pl-block .pl-body .pl-btn{display:inline-block;padding:12px 24px;border-radius:8px;background:var(--pl-ink);color:#fff;font-weight:700;text-decoration:none;line-height:1.3}
.pl-block .pl-body .pl-btn:hover{opacity:.9;color:#fff}
@media(max-width:820px){
  .pl-block{grid-template-columns:1fr;gap:22px;padding:24px}
  .pl-block .pl-photo{max-width:220px}
}
