/* Öffentliche Klassengrenzen des wiederverwendbaren Über-mich-Moduls. */
.about-section {
  display: grid;
  grid-template-columns: minmax(280px, .75fr) minmax(0, 1.25fr);
  align-items: start;
  gap: 100px;
  min-width: 0;
}

.about-section__visual {
  position: relative;
  isolation: isolate;
  min-width: 0;
}

.about-section__visual::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 48%;
  right: -90px;
  width: min(420px, 92%);
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 30%, rgba(238, 234, 255, .72), rgba(210, 224, 255, .56) 58%, rgba(210, 224, 255, 0) 73%);
  filter: blur(3px);
  transform: translateY(-50%);
  pointer-events: none;
}

.about-section__image {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: auto;
  border-radius: 24px;
}

.about-section__content {
  max-width: 760px;
  min-width: 0;
}

.about-section__content > p {
  color: var(--muted);
  font-size: 15px;
  line-height: 1.75;
}

.about-section__title em {
  color: #6153ef;
  font-style: normal;
}

.about-section__title em {
  color: #6153ef;
  font-style: normal;
}

.about-section__stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 35px;
  padding-top: 30px;
  border-top: 1px solid var(--line);
}

.about-section__stat {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.about-section__stat > b {
  font-size: 27px;
}

.about-section__stat:last-child > b {
  display: grid;
  place-items: center;
  width: 42px;
  height: 32px;
}

.stat-number { font-variant-numeric: tabular-nums; }
.stat-icon svg { display: block; width: 42px; height: 32px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }

.about-section__stat > span {
  color: var(--muted);
  font-size: 10px;
}

@media (max-width: 900px) {
  .about-section {
    grid-template-columns: 1fr;
    gap: 45px;
  }

  .about-section__visual {
    max-width: 500px;
  }

  .about-section__visual::before {
    right: -30%;
    width: min(430px, 92vw);
  }
}

@media (max-width: 620px) {
  .about-section__visual::before {
    right: -38%;
  }
}

@media (max-width: 560px) {
  .about-section__stats {
    gap: 8px;
  }

  .about-section__stat > b {
    font-size: 22px;
  }
}
