.about-hero {
  padding: 56px 0 40px;
}
.about-hero-box {
  background: radial-gradient(120% 120% at 0% 0%, #fff6e8 0%, #f2f9ff 48%, #ffffff 100%);
  border: 1px solid var(--sub);
  border-radius: 22px;
  padding: 40px;
  box-shadow: 0 10px 30px rgba(31,46,58,.07);
}
.about-hero-box h1 {
  font-size: clamp(28px, 5vw, 48px);
  line-height: 1.15;
  margin-bottom: 14px;
}
.about-hero-box p {
  font-size: 18px;
  color: var(--dim);
  max-width: 760px;
}
.about-values {
  padding: 10px 0 52px;
}
.about-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: 20px;
}
.about-card {
  background: #fff;
  border: 1.5px solid var(--sub);
  border-radius: 14px;
  padding: 22px;
}
.about-icon { font-size: 26px; margin-bottom: 10px; }
.about-title { font-size: 18px; font-weight: 700; margin-bottom: 6px; }
.about-text { font-size: 14px; color: var(--dim); line-height: 1.6; }
.about-story {
  padding: 0 0 56px;
}
.about-story-box {
  background: #fff;
  border: 1.5px solid var(--sub);
  border-radius: 16px;
  padding: 32px;
  font-size: 16px;
  line-height: 1.75;
  color: var(--mid);
}
.about-story-box h2 { font-size: 24px; font-weight: 700; margin-bottom: 14px; color: var(--dark); }
.about-nums {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin: 30px 0 0;
}
.about-num-card {
  background: var(--gd);
  border-radius: 12px;
  padding: 18px;
  text-align: center;
}
.about-num-val { font-size: 32px; font-weight: 800; color: var(--dark); }
.about-num-label { font-size: 13px; color: var(--dim); margin-top: 4px; }
@media (max-width: 900px) {
  .about-grid { grid-template-columns: 1fr 1fr; }
  .about-nums { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .about-hero-box { padding: 22px; }
  .about-hero-box p { font-size: 15px; }
  .about-grid { grid-template-columns: 1fr; }
}