.about-hero { padding: 64px 0 20px; max-width: 62ch; }
.about-hero h1 { font-size: var(--step-3); }
.about-hero p { color: var(--text-1); margin-top: 16px; font-size: 1.05rem; }

.about-block {
  padding: 40px 0;
  border-top: 1px solid var(--line);
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 40px;
}
.about-block .label {
  font-family: var(--f-mono);
  font-size: 0.8rem;
  color: var(--amber);
}
.about-block h2 { font-size: 1.4rem; margin-bottom: 12px; }
.about-block p, .about-block li { color: var(--text-1); font-size: 0.95rem; }
.about-block ul { margin: 0; padding-left: 18px; }
.about-block li { margin-bottom: 8px; }

.stack-list {
  display: grid;
  gap: 10px;
}
.stack-item {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 12px 14px;
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
}
.stack-item .name { font-family: var(--f-mono); color: var(--text-0); font-size: 0.88rem; }
.stack-item .role { color: var(--text-2); font-size: 0.8rem; text-align: right; }

@media (max-width: 760px) {
  .about-block { grid-template-columns: 1fr; gap: 14px; }
}
