.hl-bio {
  --bio-navy: #0b2948;
  --bio-ink: #13283f;
  --bio-muted: #667a90;
  --bio-red: #d61747;
  --bio-blue: #1b80f3;
  --bio-paper: #fcfbf8;
  --bio-line: #dce7f0;
  background: #fff;
  color: var(--bio-ink);
  font-family: inherit;
}

.hl-bio * { box-sizing: border-box; }
.hl-bio img { display: block; max-width: 100%; }
.hl-bio a { text-underline-offset: 3px; }

.hl-bio-shell {
  width: min(1240px, calc(100% - 48px));
  margin-inline: auto;
}

.hl-bio-eyebrow {
  margin: 0 0 12px;
  color: var(--bio-red);
  font-size: 0.95rem;
  font-weight: 850;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.hl-bio-breadcrumbs {
  display: flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 34px;
  color: #7b8da0;
  font-size: .84rem;
}
.hl-bio-breadcrumbs a { color: inherit; text-decoration: none; }
.hl-bio-breadcrumbs a:hover { color: var(--bio-red); }

.hl-bio-hero {
  position: relative;
  overflow: hidden;
  padding: 64px 0 72px;
  background:
    radial-gradient(circle at 88% 18%, rgba(27,128,243,.13), transparent 25%),
    linear-gradient(115deg, #fff 0%, #f8fbff 57%, #eef6ff 100%);
}
.hl-bio-hero::after {
  content: "";
  position: absolute;
  width: 380px;
  height: 380px;
  right: -145px;
  bottom: -205px;
  border: 1px solid rgba(27,128,243,.11);
  border-radius: 50%;
}
.hl-bio-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .72fr);
  gap: 72px;
  align-items: center;
}
.hl-bio-hero__copy { min-width: 0; }
.hl-bio-hero h1 {
  display: flex;
  align-items: baseline;
  flex-wrap: nowrap;
  gap: .18em;
  max-width: 760px;
  margin: 0;
  color: var(--bio-navy);
  font-size: clamp(2.65rem, 3.45vw, 4rem);
  line-height: .98;
  letter-spacing: -.045em;
}
.hl-bio-title-name {
  min-width: 0;
  white-space: nowrap;
}
.hl-bio-hero h1 .hl-bio-title-credentials {
  flex: 0 0 auto;
  color: #405d7b;
  font-size: .38em;
  font-weight: 650;
  letter-spacing: -.02em;
  white-space: nowrap;
}
.hl-bio-hero__role {
  margin: 18px 0 0;
  color: #244361;
  font-size: clamp(1.45rem, 2.2vw, 2.15rem);
  font-weight: 500;
  letter-spacing: -.025em;
}
.hl-bio-hero__role span { color: var(--bio-red); padding-inline: 5px; }
.hl-bio-hero__lead {
  max-width: 730px;
  margin: 22px 0 0;
  color: #526b83;
  font-size: 1.12rem;
  line-height: 1.72;
}
.hl-bio-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 13px;
  margin-top: 31px;
}
.hl-bio-btn {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid transparent;
  border-radius: 10px;
  padding: 12px 20px;
  font-weight: 750;
  line-height: 1.15;
  text-decoration: none;
  transition: transform .18s ease, background-color .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.hl-bio-btn:hover { transform: translateY(-1px); }
.hl-bio-btn--primary {
  background: var(--bio-red);
  box-shadow: 0 12px 28px rgba(214,23,71,.17);
  color: #fff !important;
}
.hl-bio-btn--primary:hover,
.hl-bio-btn--primary:focus-visible {
  border-color: var(--bio-red);
  background: #fff;
  color: var(--bio-red) !important;
}
.hl-bio-btn--secondary {
  border-color: #d7e5f2;
  background: rgba(255,255,255,.78);
  color: var(--bio-navy) !important;
}
.hl-bio-btn--secondary:hover,
.hl-bio-btn--secondary:focus-visible {
  border-color: var(--bio-blue);
  background: #fff;
  color: var(--bio-blue) !important;
}
.hl-bio-hero__proof {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 26px;
}
.hl-bio-hero__proof span {
  border: 1px solid #dce7f0;
  border-radius: 999px;
  background: rgba(255,255,255,.74);
  padding: 8px 12px;
  color: #49627a;
  font-size: .82rem;
  font-weight: 680;
}
.hl-bio-hero__visual {
  position: relative;
  justify-self: end;
  width: min(100%, 440px);
  transform: translateX(-78px);
}
.hl-bio-portrait-frame {
  position: relative;
  isolation: isolate;
  width: min(100%, 344px);
  margin-left: auto;
  border-radius: 34px 34px 10px 34px;
  background: #fff;
  box-shadow: 0 26px 60px rgba(11,41,72,.15);
  padding: 22px 22px 18px;
}
.hl-bio-portrait-backdrop {
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  background:
    linear-gradient(145deg, rgba(214,23,71,.11), transparent 38%),
    linear-gradient(320deg, rgba(27,128,243,.15), transparent 43%);
  transform: translate(24px, 24px);
}
.hl-bio-portrait-frame img {
  width: 100%;
  aspect-ratio: 1;
  border-radius: 24px 24px 8px 24px;
  object-fit: cover;
}
.hl-bio-portrait-caption {
  display: flex;
  justify-content: flex-start;
  align-items: baseline;
  gap: 8px;
  padding: 15px 3px 0;
  color: var(--bio-navy);
}
.hl-bio-portrait-caption span { color: #7990a4; font-size: .93em; font-weight: 650; }
.hl-bio-hero__quote {
  width: min(330px, 82%);
  margin: -10px 0 0 -20px;
  border-left: 3px solid var(--bio-red);
  background: var(--bio-navy);
  box-shadow: 0 16px 34px rgba(11,41,72,.15);
  color: #fff;
  padding: 18px 22px;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 1rem;
  font-style: italic;
  line-height: 1.55;
}

.hl-bio-profile,
.hl-bio-credentials,
.hl-bio-focus,
.hl-bio-science,
.hl-bio-clinics,
.hl-bio-cta { padding: 86px 0; }

.hl-bio-profile { background: var(--bio-paper); }
.hl-bio-profile__grid {
  display: grid;
  grid-template-columns: minmax(270px, .68fr) minmax(0, 1.45fr);
  gap: 90px;
  align-items: start;
}
.hl-bio-section-heading h2 {
  max-width: 720px;
  margin: 0;
  color: var(--bio-navy);
  font-size: clamp(2rem, 3vw, 3.2rem);
  line-height: 1.08;
  letter-spacing: -.035em;
}
.hl-bio-section-heading > p:not(.hl-bio-eyebrow) {
  max-width: 720px;
  margin: 16px 0 0;
  color: var(--bio-muted);
  font-size: 1rem;
  line-height: 1.65;
}
.hl-bio-section-heading--center { text-align: center; }
.hl-bio-section-heading--center h2,
.hl-bio-section-heading--center > p:not(.hl-bio-eyebrow) { margin-inline: auto; }
.hl-bio-profile__story {
  border-top: 1px solid #d9e3eb;
  padding-top: 6px;
  columns: 2;
  column-gap: 46px;
}
.hl-bio-profile__story p {
  break-inside: avoid;
  margin: 0 0 21px;
  color: #4f667b;
  font-size: 1rem;
  line-height: 1.78;
}
.hl-bio-profile__story strong { color: var(--bio-navy); }

.hl-bio-credentials {
  background: #fff;
}
.hl-bio-credentials__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 42px;
}
.hl-bio-credential {
  position: relative;
  min-height: 220px;
  overflow: hidden;
  border: 1px solid var(--bio-line);
  border-radius: 18px;
  background: #fff;
  padding: 28px;
  box-shadow: 0 12px 30px rgba(11,41,72,.055);
}
.hl-bio-credential::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 4px;
  background: var(--bio-red);
}
.hl-bio-credential--blue::before { background: var(--bio-blue); }
.hl-bio-credential--featured {
  background: linear-gradient(145deg, #f4f9ff, #fff 70%);
}
.hl-bio-credential__kicker {
  display: inline-block;
  margin-bottom: 35px;
  color: #7890a5;
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.hl-bio-credential h3 {
  margin: 0 0 10px;
  color: var(--bio-navy);
  font-size: 1.22rem;
  line-height: 1.25;
}
.hl-bio-credential p {
  margin: 0;
  color: #657b90;
  line-height: 1.6;
}
.hl-bio-credential-note {
  margin-top: 18px;
  border-radius: 12px;
  background: #f7fafc;
  padding: 14px 18px;
  color: #65798d;
  font-size: .9rem;
}
.hl-bio-credential-note strong { color: var(--bio-navy); }

.hl-bio-focus {
  overflow: hidden;
  background: var(--bio-navy);
  color: #fff;
}
.hl-bio-focus .hl-bio-eyebrow { color: #ff6c8f; }
.hl-bio-focus .hl-bio-section-heading h2 { color: #fff; }
.hl-bio-focus .hl-bio-section-heading > p:not(.hl-bio-eyebrow) { color: #b7c9d9; }
.hl-bio-focus__layout {
  display: grid;
  grid-template-columns: minmax(260px, .75fr) minmax(0, 1.25fr);
  gap: 85px;
  align-items: center;
}
.hl-bio-focus__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.hl-bio-focus__grid article {
  min-height: 114px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  background: rgba(255,255,255,.055);
  padding: 22px;
}
.hl-bio-focus__grid span {
  display: block;
  margin-bottom: 21px;
  color: #5eacff;
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .15em;
}
.hl-bio-focus__grid h3 {
  margin: 0;
  color: #fff;
  font-size: 1.12rem;
  line-height: 1.28;
}

.hl-bio-science { background: #f6f9fc; }
.hl-bio-science__intro {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .85fr);
  gap: 70px;
  align-items: end;
}
.hl-bio-science__intro > p {
  margin: 0;
  color: #61778c;
  line-height: 1.72;
}
.hl-bio-event {
  display: grid;
  grid-template-columns: 245px minmax(0, 1fr);
  gap: 0;
  overflow: hidden;
  margin-top: 42px;
  border: 1px solid #d8e5ef;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(11,41,72,.08);
}
.hl-bio-event__media {
  max-height: 320px;
  overflow: hidden;
  background: #5f6498;
}
.hl-bio-event__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 32%;
}
.hl-bio-event__copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 34px 42px;
}
.hl-bio-event__badge {
  align-self: flex-start;
  border-radius: 999px;
  background: #fff0f4;
  padding: 7px 11px;
  color: var(--bio-red);
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .04em;
}
.hl-bio-event h3 {
  margin: 15px 0 13px;
  color: var(--bio-navy);
  font-size: clamp(1.7rem, 2.4vw, 2.55rem);
  line-height: 1.08;
}
.hl-bio-event__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 9px 18px;
  color: var(--bio-blue);
  font-weight: 750;
}
.hl-bio-event__copy p {
  max-width: 650px;
  margin: 16px 0 0;
  color: #687d90;
  line-height: 1.65;
}

.hl-bio-clinics { background: #fff; }
.hl-bio-clinics__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  margin-top: 42px;
}
.hl-bio-clinic {
  display: grid;
  grid-template-columns: minmax(210px, .9fr) minmax(0, 1.1fr);
  overflow: hidden;
  border: 1px solid var(--bio-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(11,41,72,.06);
}
.hl-bio-clinic--alimos { border-top: 4px solid var(--bio-red); }
.hl-bio-clinic--sepolia { border-top: 4px solid var(--bio-blue); }
.hl-bio-clinic > img {
  width: 100%;
  height: 100%;
  min-height: 300px;
  object-fit: cover;
}
.hl-bio-clinic__body {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 28px;
}
.hl-bio-clinic__area {
  margin: 0 0 14px;
  color: #8094a7;
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.hl-bio-clinic h3 {
  margin: 0 0 12px;
  color: var(--bio-navy);
  font-size: 1.52rem;
}
.hl-bio-clinic__body > p:not(.hl-bio-clinic__area) {
  margin: 0 0 9px;
  color: #61758a;
  line-height: 1.55;
}
.hl-bio-clinic__phone {
  margin: 2px 0 8px;
  color: var(--bio-red) !important;
  font-size: 1.08rem;
  font-weight: 800;
  text-decoration: none;
}
.hl-bio-clinic__hours { font-size: .9rem; }
.hl-bio-clinic__link {
  margin-top: auto;
  color: var(--bio-blue) !important;
  font-weight: 780;
  text-decoration: none;
}
.hl-bio-clinic__link:hover { color: var(--bio-red) !important; }

.hl-bio-cta {
  background: linear-gradient(90deg, #f3f8fe 0%, #eef6ff 100%);
  padding-block: 55px;
}
.hl-bio-cta__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 40px;
  align-items: center;
}
.hl-bio-cta h2 {
  max-width: 760px;
  margin: 0;
  color: var(--bio-navy);
  font-size: clamp(1.75rem, 2.5vw, 2.6rem);
  line-height: 1.08;
}
.hl-bio-cta p:not(.hl-bio-eyebrow) {
  max-width: 720px;
  margin: 12px 0 0;
  color: #657b90;
  line-height: 1.62;
}
.hl-bio-cta__button { min-width: 190px; }

@media (max-width: 1050px) {
  .hl-bio-hero__grid { grid-template-columns: minmax(0, 1fr) 340px; gap: 45px; }
  .hl-bio-hero__visual { transform: translateX(-30px); }
  .hl-bio-profile__grid { gap: 45px; }
  .hl-bio-credentials__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .hl-bio-focus__layout { gap: 45px; }
  .hl-bio-clinic { grid-template-columns: 1fr; }
  .hl-bio-clinic > img { min-height: 240px; max-height: 280px; }
}

@media (max-width: 800px) {
  .hl-bio-shell { width: min(100% - 32px, 720px); }
  .hl-bio-hero { padding: 36px 0 56px; }
  .hl-bio-breadcrumbs { margin-bottom: 25px; }
  .hl-bio-hero__grid,
  .hl-bio-profile__grid,
  .hl-bio-focus__layout,
  .hl-bio-science__intro,
  .hl-bio-cta__inner { grid-template-columns: 1fr; }
  .hl-bio-hero__visual { justify-self: stretch; width: 100%; max-width: 480px; margin-inline: auto; transform: none; }
  .hl-bio-portrait-frame { width: min(100%, 360px); margin: 20px auto 0; }
  .hl-bio-hero__quote { margin: -15px auto 0; }
  .hl-bio-profile__story { columns: 1; }
  .hl-bio-profile,
  .hl-bio-credentials,
  .hl-bio-focus,
  .hl-bio-science,
  .hl-bio-clinics { padding: 66px 0; }
  .hl-bio-focus__layout { align-items: start; }
  .hl-bio-event { grid-template-columns: 180px minmax(0, 1fr); }
  .hl-bio-clinics__grid { grid-template-columns: 1fr; }
  .hl-bio-cta__button { justify-self: start; }
}

@media (max-width: 560px) {
  .hl-bio-shell { width: min(100% - 24px, 520px); }
  .hl-bio-hero h1 {
    flex-wrap: wrap;
    gap: .1em .18em;
    font-size: clamp(2.35rem, 11.5vw, 3.25rem);
  }
  .hl-bio-title-name { white-space: normal; }
  .hl-bio-hero h1 .hl-bio-title-credentials {
    font-size: .38em;
    align-self: baseline;
  }
  .hl-bio-hero__role { font-size: 1.42rem; }
  .hl-bio-hero__lead { font-size: 1rem; }
  .hl-bio-hero__actions { flex-direction: column; align-items: stretch; }
  .hl-bio-btn { width: 100%; }
  .hl-bio-hero__proof { display: grid; }
  .hl-bio-credentials__grid,
  .hl-bio-focus__grid { grid-template-columns: 1fr; }
  .hl-bio-credential { min-height: auto; padding: 24px; }
  .hl-bio-credential__kicker { margin-bottom: 23px; }
  .hl-bio-event { grid-template-columns: 1fr; }
  .hl-bio-event__media { max-height: 380px; }
  .hl-bio-event__copy { padding: 26px 24px 30px; }
  .hl-bio-clinic > img { min-height: 215px; }
  .hl-bio-clinic__body { padding: 24px; }
  .hl-bio-cta { padding-block: 48px; }
  .hl-bio-cta__button { width: 100%; }
}
