.profile-tags { display: flex; flex-wrap: wrap; gap: 10px; }
.overview-card p { font-size: 15px; }
.section-heading { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 24px; margin: 16px 0 8px; }
.section-heading h2, .section-heading h3 { margin: 0; }
.period { color: var(--muted); font-size: 13px; white-space: nowrap; }
.skills-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 32px; margin-top: 24px; }
.skill-item p { margin: 0; }
.language-note { margin: 24px 0 0; padding-top: 18px; border-top: 1px solid var(--border); }
.research-item + .research-item, .practice-item + .practice-item { margin-top: 26px; padding-top: 8px; border-top: 1px solid var(--border); }
.practice-item .detail-list { margin: 4px 0 0; }
.project-details { margin-top: 32px; }
.project-details > article { scroll-margin-top: 24px; }
.project-details .section-heading { margin-bottom: 24px; }
.detail-list { color: var(--muted); font-size: 14px; padding-left: 22px; }
.detail-list li + li { margin-top: 8px; }
@media (max-width: 720px) {
  .skills-grid { grid-template-columns: 1fr; gap: 22px; }
  .period { white-space: normal; }
}

.project-details + .grid { margin-top: 22px; }
