.profile-page { background:var(--paper); }
.profile-wrap { --team-colour:var(--orange); padding-block:2rem 4rem; }
.profile-back { display:inline-flex; min-height:44px; align-items:center; color:var(--muted); font-size:.875rem; }
.profile-hero { display:flex; align-items:center; justify-content:space-between; gap:1.5rem; padding:2rem 0; border-bottom:3px solid var(--team-colour); }
.profile-hero h1 { margin:.5rem 0 1rem; font-size:clamp(2rem,5vw,4rem); line-height:1.1; letter-spacing:-.045em; }
.profile-country { display:flex; gap:.6rem; align-items:center; margin:0; color:var(--muted); font-size:.875rem; }
.profile-affiliation { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem 1.5rem; margin:0; font-size:1.125rem; }
.profile-affiliation a { text-decoration:underline; text-decoration-color:var(--team-colour); text-underline-offset:.3em; }
.profile-affiliation span { color:var(--muted); font-size:.875rem; }
.profile-number { font-size:clamp(4rem,10vw,8rem); font-weight:760; color:var(--muted); line-height:1; letter-spacing:-.08em; font-variant-numeric:tabular-nums; padding-right:.5rem; }
.profile-nav { display:flex; gap:2rem; padding:.75rem 0; border-bottom:1px solid var(--line); }
.profile-nav a { min-height:44px; display:inline-flex; align-items:center; font-size:.875rem; font-weight:600; }
.profile-overview { display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,6vw,6rem); padding:3rem 0; }
.profile-overview h2, .profile-stat-section h2, .profile-drivers h2 { margin:0 0 1.25rem; font-size:1.5rem; }
.profile-overview p { margin:0; font-size:1.125rem; line-height:1.7; max-width:55ch; color:var(--muted); }
.profile-details { display:grid; grid-template-columns:1fr 1fr; gap:1rem 2rem; margin:0; }
.profile-details div { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:baseline; gap:.4rem 1rem; border-bottom:1px solid var(--line); padding:.75rem 0; }
.profile-details dt { color:var(--muted); font-size:.875rem; }
.profile-details dd { margin:0; font-size:.875rem; font-weight:600; }
.profile-overview .profile-details { grid-template-columns:1fr; }
.profile-stat-section { padding:2.5rem 0; border-top:1px solid var(--line); }
.profile-stat-section header { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:.5rem 1rem; }
.profile-stat-section header p, .profile-coverage { color:var(--muted); font-size:.875rem; }
.profile-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:0 0 1rem; border:1px solid var(--line); background:var(--ivory); }
.profile-metrics div { padding:1.5rem; border-right:1px solid var(--line); }
.profile-metrics div:nth-child(3n) { border-right:0; }
.profile-metrics div:nth-child(n+4) { border-top:1px solid var(--line); }
.profile-metrics dt { color:var(--muted); font-size:.875rem; }
.profile-metrics dd { margin:.5rem 0 0; font-size:clamp(2rem,3vw,2.75rem); font-weight:700; line-height:1.2; font-variant-numeric:tabular-nums; letter-spacing:-.035em; }
.profile-drivers { padding:2.5rem 0 0; }
.profile-driver-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.profile-driver-grid a { display:flex; align-items:center; gap:1.25rem; padding:1.5rem; border:1px solid var(--line); border-left:3px solid var(--team-colour); background:var(--ivory); }
.profile-driver-grid a:hover { background:var(--paper); }
.profile-driver-grid a div { flex:1; display:grid; gap:.4rem; }
.profile-driver-grid a strong { font-size:1.2rem; }
.profile-driver-grid a div span { font-size:.875rem; color:var(--muted); }
.profile-seat-number { font-size:2rem; font-weight:700; font-variant-numeric:tabular-nums; min-width:2.5rem; }
.profile-sources { border-top:1px solid var(--line); padding-top:1rem; font-size:.875rem; color:var(--muted); }
.profile-sources summary { cursor:pointer; padding:.75rem 0; color:var(--ink); }
.profile-refresh-status { color:var(--muted); font-size:.875rem; }
@media(max-width:700px) {
 .profile-wrap { padding-top:1rem; }
 .profile-hero { padding:1rem 0 1.5rem; }
 .profile-number { font-size:4rem; }
 .profile-overview, .profile-driver-grid { grid-template-columns:1fr; gap:1.5rem; }
 .profile-overview { padding-block:2rem; }
 .profile-nav { gap:1.25rem; }
 .profile-metrics { grid-template-columns:1fr 1fr; }
 .profile-metrics div { padding:1rem; }
 .profile-metrics div:nth-child(3n) { border-right:1px solid var(--line); }
 .profile-metrics div:nth-child(2n) { border-right:0; }
 .profile-metrics div:nth-child(n+3) { border-top:1px solid var(--line); }
 .profile-metrics dt { font-size:.8rem; }
 .profile-details { grid-template-columns:1fr; gap:0; }
}
