.npi-specs { display: grid; gap: 24px; }
.npi-spec-group__title { font-size: 1.05em; margin: 0 0 8px; padding-bottom: 6px; border-bottom: 2px solid currentColor; }
.npi-spec-table { width: 100%; border-collapse: collapse; margin: 0; }
.npi-spec-table th, .npi-spec-table td { padding: 8px 12px; border-bottom: 1px solid rgba(0,0,0,.08); text-align: left; vertical-align: top; font-size: .95em; }
.npi-spec-table th { width: 40%; font-weight: 600; background: rgba(0,0,0,.025); }
.npi-documents { list-style: none; margin: 0; padding: 0; }
.npi-document { margin: 0 0 8px; }
.npi-document a { display: inline-flex; align-items: center; gap: 8px; text-decoration: none; }
.npi-document a::before { content: ""; width: 18px; height: 22px; flex: none; border: 2px solid currentColor; border-radius: 2px; opacity: .7; }
.npi-document__type { font-size: .75em; padding: 1px 6px; border-radius: 3px; background: rgba(0,0,0,.08); }
@media (min-width: 922px) { .npi-specs { grid-template-columns: 1fr 1fr; } }
