/* TeamKit — /partenaires « Avec qui on travaille » (3 oct. 2026). Préfixe pt-. Couleurs = variables de style.css. */
.pt-chapeau { max-width: 62ch; margin: var(--space-md) auto 0; color: var(--text-secondary); font-size: 1.15rem; line-height: 1.55; text-wrap: balance; }
.pt-page .container { max-width: 1100px; }

.pt-etat { display: flex; gap: var(--space-md); align-items: center; padding: var(--space-md) var(--space-lg); border: 1px solid var(--border-color); border-radius: var(--radius-lg); background: var(--bg-secondary); color: var(--text-secondary); line-height: 1.5; }
.pt-etat strong { color: var(--text-primary); }
.pt-etat-pastille { flex: 0 0 auto; display: grid; place-items: center; width: 3.2rem; height: 3.2rem; border-radius: 50%; border: 2px solid var(--accent-primary); color: var(--accent-primary); font-family: var(--font-display); font-size: 1.5rem; font-weight: 700; }

.pt-titre { margin: var(--space-2xl) 0 var(--space-lg); font-family: var(--font-display); font-size: 1.35rem; letter-spacing: .02em; }
.pt-grille { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: var(--space-lg); }

.pt-carte { display: flex; flex-direction: column; gap: var(--space-sm); padding: var(--space-lg); border: 1px solid var(--border-color); border-radius: var(--radius-lg); background: var(--bg-card); transition: border-color var(--transition-fast); }
.pt-carte:hover { border-color: var(--border-glow); }
.pt-haut { display: flex; align-items: center; justify-content: space-between; gap: var(--space-sm); }
.pt-mono { display: grid; place-items: center; min-width: 2.6rem; height: 2.6rem; padding: 0 .4rem; border-radius: var(--radius-md); background: var(--bg-tertiary); color: var(--accent-primary); font-family: var(--font-mono); font-size: .85rem; font-weight: 700; }
.pt-role { font-size: .78rem; text-transform: uppercase; letter-spacing: .08em; color: var(--text-muted); }
.pt-carte h3 { margin: var(--space-xs) 0 0; font-size: 1.25rem; color: var(--text-primary); }
.pt-carte p { margin: 0; color: var(--text-secondary); line-height: 1.55; }
.pt-cout { margin: auto 0 0; padding-top: var(--space-sm); border-top: 1px solid var(--border-color); font-size: .95rem; }
.pt-cout dt { font-size: .75rem; text-transform: uppercase; letter-spacing: .08em; color: var(--text-muted); }
.pt-cout dd { margin: .2rem 0 0; color: var(--text-primary); line-height: 1.45; }
.pt-cout a, .pt-aussi a, .pt-devenir a:not(.btn) { color: var(--accent-primary); }
.pt-lien { align-self: flex-start; color: var(--accent-primary); font-size: .92rem; text-decoration: none; }
.pt-lien:hover, .pt-lien:focus-visible { text-decoration: underline; }

.pt-aussi { margin: var(--space-xl) 0 0; max-width: 75ch; color: var(--text-secondary); line-height: 1.6; }
.pt-aussi strong { color: var(--text-primary); }

.pt-avertissement { margin-top: var(--space-2xl); padding: var(--space-lg); border-left: 3px solid var(--accent-warning); border-radius: 0 var(--radius-md) var(--radius-md) 0; background: rgba(255, 170, 0, .06); }
.pt-avertissement h2 { margin: 0 0 var(--space-sm); font-size: 1.1rem; }
.pt-avertissement p { margin: 0; max-width: 75ch; color: var(--text-secondary); line-height: 1.6; }

.pt-devenir { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: var(--space-xl); align-items: center; margin-top: var(--space-2xl); padding: var(--space-xl); border: 1px solid var(--border-glow); border-radius: var(--radius-xl); background: var(--gradient-card); }
.pt-devenir h2 { margin: 0 0 var(--space-sm); font-family: var(--font-display); font-size: 1.5rem; }
.pt-devenir p { color: var(--text-secondary); line-height: 1.55; margin: 0 0 var(--space-md); }
.pt-devenir ul { margin: 0 0 var(--space-md); padding-left: 1.2rem; color: var(--text-secondary); line-height: 1.6; }
.pt-devenir li strong { color: var(--text-primary); }
.pt-devenir-actions { display: flex; flex-direction: column; gap: var(--space-sm); }
.pt-devenir-actions .btn { justify-content: center; text-align: center; }
.pt-petit { font-size: .9rem; color: var(--text-muted); }
.pt-devenir-actions .pt-petit { text-align: center; }

@media (max-width: 760px) {
  .pt-devenir { grid-template-columns: 1fr; padding: var(--space-lg); }
  .pt-grille { grid-template-columns: 1fr; }
  .pt-etat { align-items: flex-start; }
}
@media (prefers-reduced-motion: reduce) { .pt-carte { transition: none; } }
