.ih-breadcrumbs { padding-top: 18px; color: #728991; font-size: 13px; }
.ih-breadcrumbs ol { display: flex; flex-wrap: wrap; gap: 5px 8px; margin: 0; padding: 0; list-style: none; }
.ih-breadcrumbs li:not(:last-child)::after { content: "›"; margin-left: 8px; color: #9aaeb4; }
.ih-breadcrumbs a { color: inherit; }

.ih-page-hero { padding: clamp(44px, 7vw, 78px) 0 52px; background: linear-gradient(180deg, #fff 0%, #f4faf9 100%); }
.ih-page-hero-inner { max-width: 960px; }
.ih-page-hero h1 { max-width: 900px; margin: 0; font-size: clamp(40px, 5vw, 62px); font-weight: 720; letter-spacing: -.035em; line-height: 1.06; }
.ih-page-lead { max-width: 790px; margin: 20px 0 0; color: var(--ih-color-muted); font-size: clamp(18px, 2vw, 21px); line-height: 1.58; }
.ih-meta { display: flex; flex-wrap: wrap; gap: 7px 10px; margin-top: 18px; color: #6e858d; font-size: 13px; }
.ih-hero-note { max-width: 780px; margin-top: 26px; }

.ih-local-nav { border-block: 1px solid var(--ih-color-border); background: #fff; }
.ih-local-nav-inner { display: flex; gap: 8px; overflow-x: auto; padding-block: 13px; scrollbar-width: thin; }
.ih-local-nav a { flex: 0 0 auto; border: 1px solid var(--ih-color-border); border-radius: var(--ih-radius-pill); padding: 7px 11px; color: var(--ih-color-ink-soft); font-size: 13px; font-weight: 760; text-decoration: none; }
.ih-local-nav a:hover { border-color: var(--ih-color-teal-500); background: var(--ih-color-surface-soft); color: var(--ih-color-teal-900); }

.ih-editorial-meta { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-top: 28px; border-top: 1px solid var(--ih-color-border); padding-top: 18px; color: var(--ih-color-muted); font-size: 16px; line-height: 1.55; }
.ih-source-list { margin: 24px 0 0; border-radius: var(--ih-radius-sm); padding: 16px 18px; background: var(--ih-color-surface-blue); color: var(--ih-color-muted); font-size: 16px; line-height: 1.65; }
p.ih-source-list { font-size: 18px; line-height: 1.6; }
.ih-source-list ul { margin: 10px 0 0; padding-left: 20px; }
.ih-source-list li + li { margin-top: 5px; }

.ih-related { border-top: 1px solid var(--ih-color-border); }
.ih-related-links { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-top: 24px; }
.ih-related-links a { border-bottom: 2px solid var(--ih-color-teal-500); padding: 12px 3px; font-size: 16px; font-weight: 800; line-height: 1.4; text-decoration: none; }

/* Контекстные ссылки, включая препараты, видимы без наведения и не только по цвету. */
.ih-section p a,
.ih-section li a,
.ih-section td a,
.ih-detail p a,
.ih-card-copy p a,
.ih-section-lead a,
.ih-note a,
.ih-checklist a,
.ih-faq p a,
.ih-source-list p a {
  color: var(--ih-color-primary-700);
  font-weight: 680;
  text-decoration: underline;
  text-decoration-thickness: 1.5px;
  text-underline-offset: 3px;
}

.ih-section p a:hover,
.ih-section p a:focus-visible,
.ih-section li a:hover,
.ih-section li a:focus-visible,
.ih-section td a:hover,
.ih-section td a:focus-visible,
.ih-detail p a:hover,
.ih-detail p a:focus-visible,
.ih-card-copy p a:hover,
.ih-card-copy p a:focus-visible,
.ih-section-lead a:hover,
.ih-section-lead a:focus-visible,
.ih-note a:hover,
.ih-note a:focus-visible,
.ih-checklist a:hover,
.ih-checklist a:focus-visible,
.ih-faq p a:hover,
.ih-faq p a:focus-visible,
.ih-source-list p a:hover,
.ih-source-list p a:focus-visible {
  color: var(--ih-color-primary-900);
  text-decoration-thickness: 2px;
}

.ih-final-cta { padding-block: 52px; }
.ih-final-cta-card { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 32px; align-items: center; border: 1px solid var(--ih-color-border); border-left: 4px solid var(--ih-color-teal-500); border-radius: var(--ih-radius-lg); padding: 30px 32px; background: #fff; box-shadow: var(--ih-shadow-card); }
.ih-final-cta h2 { margin: 0; font-size: clamp(26px, 3vw, 36px); line-height: 1.18; }
.ih-final-cta p { max-width: 720px; margin: 10px 0 0; color: var(--ih-color-muted); }
.ih-final-cta .ih-action-cluster { margin-top: 0; justify-content: flex-end; }

@media (max-width: 900px) {
  .ih-page-hero { padding-top: 44px; }
  .ih-related-links { grid-template-columns: 1fr 1fr; }
  .ih-final-cta-card { grid-template-columns: 1fr; }
  .ih-final-cta .ih-action-cluster { align-items: flex-start; justify-content: flex-start; }
}

@media (max-width: 620px) {
  .ih-breadcrumbs { padding-top: 14px; }
  .ih-page-hero { padding: 34px 0 40px; }
  .ih-page-hero h1 { font-size: 38px; line-height: 1.1; }
  .ih-page-lead { font-size: 17px; }
  .ih-local-nav-inner { margin-inline: -16px; padding-inline: 16px; }
  .ih-related-links { grid-template-columns: 1fr 1fr; }
  .ih-final-cta { padding-block: 38px; }
  .ih-final-cta-card { padding: 24px 22px; }
}
