/* Clinic section: portrait cards and a two-column certification panel. */
.clinic-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 112px 0 100px;
  scroll-margin-top: 84px;
  background: radial-gradient(ellipse at 0 0, #21466c80, transparent 42%), linear-gradient(155deg, #172c40, #0b2037 68%, #142e4c);
}
.clinic-section::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 680px;
  height: 680px;
  top: -555px;
  left: -420px;
  border: 1px solid #338ae333;
  border-radius: 50%;
  background: #367ec824;
  box-shadow: 0 0 0 50px #327ed410, 0 0 0 100px #327ed40b;
  pointer-events: none;
}
.clinic-section .container { width: min(calc(100% - 72px), 1200px); }
.clinic-heading {
  display: grid;
  grid-template-columns: .9fr 1.3fr;
  gap: 54px;
  align-items: center;
  margin-bottom: 54px;
  padding-inline: 28px;
}
.clinic-heading .micro { margin-bottom: 16px; font-size: 13px; letter-spacing: .16em; color: #40b4df; }
.clinic-heading .title { font-size: clamp(58px, 6.7vw, 88px); letter-spacing: -.045em; line-height: 1.05; }
.clinic-heading .lead { max-width: none; margin: 0; padding: 0 0 0 50px; border-left: 2px solid #5684ad80; font-size: 18px; line-height: 1.5; color: #bdc9d8; }
.clinic-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.clinic-card {
  padding: 12px;
  border: 1px solid #366a975e;
  border-radius: 15px;
  background: linear-gradient(150deg, #102c4560, #081e3450);
  box-shadow: inset 0 1px 0 #88b9df08, 0 12px 30px #02142612;
  overflow: hidden;
}
.clinic-card > img { width: 100%; height: auto; aspect-ratio: 3 / 5.2; object-fit: cover; border-radius: 10px; background: #243d53; }
.clinic-card-copy { padding: 22px 14px 20px; }
.clinic-number { display: flex; align-items: flex-end; gap: 25px; margin-bottom: 22px; color: #446fa2; font-family: "Bebas Neue", Impact, sans-serif; font-size: 76px; font-weight: 400; line-height: .9; }
.clinic-number::after { content: ""; width: 42px; height: 2px; margin-bottom: 5px; background: #299cc4; }
.clinic-card h3 { margin: 0 0 22px; color: #f2f6fb; font-size: clamp(18px, 1.55vw, 22px); letter-spacing: -.025em; line-height: 1.25; }
.clinic-card p { margin: 0; color: #bdc9d8; font-size: 18px; line-height: 1.5; }
.clinic-certification {
  display: grid;
  grid-template-columns: 230px minmax(0, 1fr);
  align-items: center;
  gap: 34px;
  margin-top: 38px;
  padding: 38px 42px;
  border: 1px solid #4077a666;
  border-radius: 15px;
  background: #081d344d;
  box-shadow: inset 0 1px 0 #88b9df08;
}
.clinic-method-mark { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 128px; padding-right: 34px; border-right: 1px solid #4077a680; color: #f4f8ff; }
.clinic-method-mark img { width: min(100%, 190px); height: auto; object-fit: contain; }
.clinic-certification-copy p { max-width: 760px; margin: 0; color: #bdc9d8; font-size: 17px; line-height: 1.5; }
.clinic-certification-copy strong { color: #e4ebf4; font-weight: 700; }
.clinic-certification-copy p + p { margin-top: 14px; }
@media (max-width: 1100px) {
  .clinic-heading { grid-template-columns: .85fr 1.25fr; gap: 34px; padding-inline: 26px; }
  .clinic-heading .lead { padding-left: 42px; font-size: 17px; }
  .clinic-card-copy { padding-inline: 12px; }
  .clinic-card h3 { font-size: 20px; }
  .clinic-card p { font-size: 17px; }
  .clinic-number { font-size: 72px; }
}
@media (min-width: 761px) and (max-width: 900px) {
  .clinic-section .container { width: calc(100% - 40px); }
  .clinic-heading { padding-inline: 8px; gap: 26px; }
  .clinic-heading .lead { padding-left: 26px; font-size: 16px; }
  .clinic-cards { gap: 12px; }
  .clinic-card { padding: 8px; }
  .clinic-card-copy { padding: 20px 8px; }
  .clinic-card h3 { font-size: 18px; min-height: 45px; }
  .clinic-card p { font-size: 15px; }
  .clinic-number { font-size: 62px; }
  .clinic-certification { grid-template-columns: 180px minmax(0, 1fr); gap: 26px; padding: 28px; }
  .clinic-method-mark { padding-right: 26px; }
}
@media (max-width: 760px) {
  .clinic-section { padding: 80px 0 64px; }
  .clinic-section .container { width: calc(100% - 40px); }
  .clinic-heading { grid-template-columns: 1fr; gap: 24px; padding-inline: 0; margin-bottom: 34px; }
  .clinic-heading .title { font-size: clamp(52px, 12vw, 76px); }
  .clinic-heading .lead { padding-left: 20px; font-size: 16px; }
  .clinic-cards { grid-template-columns: 1fr; gap: 22px; }
  .clinic-card { padding: 10px; }
  .clinic-card > img { aspect-ratio: 4 / 4.5; object-position: center 42%; }
  .clinic-card-copy { padding: 24px 14px 22px; }
  .clinic-number { font-size: 66px; margin-bottom: 18px; }
  .clinic-card h3 { margin-bottom: 16px; font-size: 22px; }
  .clinic-card p { font-size: 16px; }
  .clinic-certification { grid-template-columns: 1fr; gap: 24px; margin-top: 26px; padding: 28px 24px; }
  .clinic-method-mark { align-items: flex-start; min-height: 0; padding: 0 0 24px; border-right: 0; border-bottom: 1px solid #4077a680; }
  .clinic-certification-copy p { font-size: 16px; }
}
