/* ==========================================================================
   About Intro Section  —  Figma node 1:167  |  Canvas: 1440 × 1194 px
   Colors: bg #21254a · white #fff · blue accent #59acf8
   ========================================================================== */

/* ---- Section wrapper ---- */
.bs-about-intro {
  background-color: #21254a;
  padding:
    clamp(60px, 7.99vw, 115px)  /* top    115 / 1440 × 100 */
    clamp(16px, 2.85vw, 41px)   /* sides   41 / 1440 × 100 */
    clamp(64px, 9.72vw, 140px); /* bottom */
}

/* ---- Centred inner container ---- */
.bs-about-intro__inner {
  max-width: 1024px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(28px, 3.47vw, 50px);
}

/* ---- Main headline ---- */
.bs-about-intro__headline {
  font-family: 'Inter', sans-serif;
  font-weight: 900;
  font-style: normal;
  text-transform: uppercase;
  text-align: center;
  color: #ffffff;
  line-height: 0.871; /* 87.12% from Figma */
  max-width: clamp(300px, 71.1vw, 1024px);
  margin: 0;
}

/* "Built by a" — white, 79 px */
.bs-about-intro__headline-pre {
  display: block;
  font-size: clamp(28px, 5.49vw, 79px); /* 79 / 1440 × 100 */
}

/* "PHYSICIAN" — blue accent, 98 px */
.bs-about-intro__headline-highlight {
  color: #59acf8;
  font-size: clamp(34px, 6.81vw, 98px); /* 98 / 1440 × 100 */
}

/* "who has been there" — white, 88 px */
.bs-about-intro__headline-post {
  display: block;
  font-size: clamp(30px, 6.11vw, 88px); /* 88 / 1440 × 100 */
}

/* ---- Circular photo + name card ---- */
.bs-about-intro__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(8px, 0.83vw, 12px);
}

.bs-about-intro__photo-wrap {
  width: clamp(160px, 20.56vw, 296px);  /* 296 / 1440 × 100 */
  height: clamp(160px, 20.56vw, 296px);
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
}

.bs-about-intro__photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

.bs-about-intro__name {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-style: normal;
  font-size: clamp(20px, 2.71vw, 39px); /* 39 / 1440 × 100 */
  color: #ffffff;
  text-align: center;
  line-height: normal;
  margin: 0;
}

/* ---- Quote block ---- */
.bs-about-intro__quote {
  max-width: clamp(300px, 88.75vw, 1278px);
  text-align: center;
}

.bs-about-intro__quote p {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: clamp(15px, 2.01vw, 29px); /* 29 / 1440 × 100 */
  color: #ffffff;
  line-height: 1.5;
  margin: 0 0 clamp(12px, 1.25vw, 18px);
}

.bs-about-intro__quote p:last-child {
  margin-bottom: 0;
}

/* ---- Attribution line — bold ---- */
.bs-about-intro__attribution {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: clamp(15px, 2.01vw, 29px);
  color: #ffffff;
  text-align: center;
  margin: clamp(16px, 1.67vw, 24px) 0 0;
}

/* ==============================================
   TABLET  (≤ 1023 px)
   ============================================== */
@media (max-width: 1023px) {
  .bs-about-intro__headline {
    line-height: 1;
    max-width: 100%;
  }

  .bs-about-intro__quote {
    max-width: 100%;
  }
}

/* ==============================================
   MOBILE  (≤ 599 px)
   ============================================== */
@media (max-width: 599px) {
  .bs-about-intro {
    padding: 52px 20px 64px;
  }

  .bs-about-intro__inner {
    gap: 28px;
  }

  .bs-about-intro__headline {
    line-height: 1.05;
  }

  .bs-about-intro__headline-pre {
    font-size: clamp(26px, 8vw, 44px);
  }

  .bs-about-intro__headline-highlight {
    font-size: clamp(32px, 9.5vw, 52px);
  }

  .bs-about-intro__headline-post {
    font-size: clamp(28px, 8.5vw, 48px);
  }

  .bs-about-intro__photo-wrap {
    width: clamp(140px, 44vw, 220px);
    height: clamp(140px, 44vw, 220px);
  }

  .bs-about-intro__quote p,
  .bs-about-intro__attribution {
    font-size: clamp(14px, 4vw, 18px);
    line-height: 1.6;
  }
}
