/* Shared one-page clinic layout. Each design retains its own type and colors. */
.im-clinics { --clinic-line: var(--border, var(--line, #e5e7eb)); }
.im-clinics .im-clinic-group { scroll-margin-top: 32px; }
.im-clinics .im-clinic-group + .im-clinic-group { margin-top: 64px; }
.im-clinics .im-clinic-group > h2 { margin: 0 0 24px; }
.im-clinics .im-clinic-topics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: clamp(32px, 5vw, 72px);
}
.im-clinics .im-clinic-topic {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  align-items: center;
  gap: 24px;
  min-width: 0;
  padding-block: 26px;
  border-top: 1px solid var(--clinic-line);
}
.im-clinics .im-clinic-art { width: 88px; height: 88px; margin: 0; }
.im-clinics .im-clinic-art img { display: block; width: 100%; height: 100%; object-fit: contain; }
.im-clinics .im-clinic-copy { min-width: 0; }
.im-clinics .im-clinic-copy h3 { margin: 0 0 8px; }
.im-clinics .im-clinic-copy p { margin: 0; word-break: keep-all; overflow-wrap: anywhere; }
.im-clinics .im-clinic-topic--text-only { grid-template-columns: minmax(0, 1fr); }
.imada-shadcn .im-clinics .im-clinic-group > h2 {
  font-size: var(--text-3xl); line-height: var(--leading-snug);
  font-weight: var(--font-weight-semibold); letter-spacing: var(--tracking-tight);
}
.imada-shadcn .im-clinics .im-clinic-copy h3 {
  font-size: var(--text-xl); line-height: var(--text-xl--line-height);
  font-weight: var(--font-weight-semibold); letter-spacing: var(--tracking-tight);
}
.imada-untitled .im-clinics .im-clinic-group > h2 {
  font-size: var(--text-display-sm); line-height: var(--text-display-sm--line-height);
  font-weight: var(--font-weight-semibold);
}
.imada-untitled .im-clinics .im-clinic-copy h3 {
  font-size: var(--text-xl); line-height: var(--text-xl--line-height);
  font-weight: var(--font-weight-semibold);
}
@media (max-width: 800px) {
  .im-clinics .im-clinic-topics { grid-template-columns: minmax(0, 1fr); }
  .im-clinics .im-clinic-group + .im-clinic-group { margin-top: 44px; }
}
@media (max-width: 600px) {
  .im-clinics .im-clinic-group > h2 { margin-bottom: 20px; }
  .im-clinics .im-clinic-topic { grid-template-columns: 64px minmax(0, 1fr); gap: 18px; padding-block: 22px; }
  .im-clinics .im-clinic-art { width: 64px; height: 64px; }
  .im-clinics .im-clinic-topic--text-only { grid-template-columns: minmax(0, 1fr); }
}
