.about { padding: 120px 0; }
.about__inner { display: flex; align-items: center; justify-content: space-between; }

.about__visual { position: relative; width: 46%; padding: 0 0 56px 28px; }
.about__visual::before { content: ""; position: absolute; top: 28px; left: 0; width: 72%; height: 72%; border-radius: 24px; background: var(--accent-pale); }
.about__photo { position: relative; aspect-ratio: 4 / 3.2; border-radius: 24px; overflow: hidden; }
.about__photo--small { position: absolute; right: -6%; bottom: 0; width: 46%; aspect-ratio: 1; border: 6px solid var(--surface); border-radius: 50%; }
.about__photo--small img { object-position: 30% 50%; }

.about__body { width: 46%; }
.about__lead { margin-top: 28px; font-size: clamp(24px, 2.6vw, 32px); font-weight: 700; letter-spacing: .06em; line-height: 1.7; }
.about__texts { margin-top: 28px; }
.about__texts p { font-size: 16px; line-height: 2.1; }
.about__texts p + p { margin-top: 1.2em; }

@media (max-width: 900px) {
  .about { padding: 72px 0; }
  .about__inner { display: block; }
  .about__visual { width: auto; max-width: 520px; margin: 0 auto; padding: 0 0 44px 20px; }
  .about__visual::before { top: 20px; }
  .about__photo--small { right: 0; width: 40%; border-width: 5px; }
  .about__body { width: auto; margin-top: 44px; }
  .about__lead { margin-top: 20px; font-size: 23px; }
  .about__texts { margin-top: 20px; }
}
