.about-main {
  width: min(1040px, calc(100% - 40px));
  margin: 0 auto;
  padding: 64px 0 72px;
}
.about-kicker {
  margin: 0 0 10px;
  color: var(--green);
  font-size: .9rem;
  font-weight: 800;
}
.about-intro {
  max-width: 860px;
  margin-bottom: 56px;
}
.about-intro h1 {
  margin: 0 0 24px;
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1.3;
  letter-spacing: -.055em;
}
.about-intro p:not(.about-kicker), .about-card p, .about-message p {
  color: var(--muted);
  line-height: 1.9;
}
.about-intro .about-lead {
  font-size: 1.12rem;
  color: var(--ink);
}
.about-intro p + p { margin-top: 18px; }
.about-information h2, .about-message h2 {
  margin: 0 0 24px;
  font-size: clamp(1.35rem, 2.5vw, 1.8rem);
  line-height: 1.5;
  letter-spacing: -.035em;
}
.about-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}
.about-card {
  padding: 28px 30px;
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: 20px;
}
.about-card:last-child { grid-column: 1 / -1; }
.about-number {
  color: var(--green);
  font-size: .85rem;
  font-weight: 800;
}
.about-card h3 {
  margin: 10px 0 8px;
  font-size: 1.2rem;
}
.about-card p { margin: 0; }
.about-message {
  margin-top: 48px;
  padding: 36px;
  background: #f0f5ef;
  border: 1px solid #dce6da;
  border-radius: 20px;
}
.about-message h2 { color: var(--green); margin-bottom: 16px; }
.about-message p { margin: 0; }
.about-message p + p { margin-top: 12px; }
@media (max-width: 620px) {
  .about-main { width: calc(100% - 28px); padding: 36px 0 44px; }
  .about-intro { margin-bottom: 36px; }
  .about-intro .about-lead { font-size: 1rem; }
  .about-grid { grid-template-columns: 1fr; gap: 14px; }
  .about-card { padding: 24px; }
  .about-message { margin-top: 30px; padding: 26px 24px; }
}
