/* page 1246 */
.tyon-om-hero .tyon-hero-eyebrow p {
  font-size: clamp(0.8125rem, 0.35vw + 0.75rem, 0.9375rem) !important;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.45;
  color: #475569 !important;
  margin-bottom: 1.25em !important;
}
.tyon-om-hero .tyon-hero-title .av-special-heading-tag {
  font-size: clamp(2rem, 2.5vw + 1rem, 3.125rem) !important;
  line-height: 1.12 !important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: -0.02em !important;
  color: #0f172a !important;
}
.tyon-om-hero .tyon-hero-title .av-subheading {
  font-size: clamp(1.0625rem, 0.55vw + 0.95rem, 1.3rem) !important;
  line-height: 1.55 !important;
  font-weight: 400 !important;
  max-width: 46rem;
  margin: 0.75em auto 0 !important;
  color: #334155 !important;
}
.om-note {
  max-width: 40rem;
  margin: 1rem auto 0;
  text-align: center;
  color: #334155;
  font-size: 0.98rem;
  line-height: 1.55;
}
.om-wrap { max-width: 72rem; margin: 0 auto; }
.om-lead { font-size: 1.05rem; line-height: 1.65; color: #334155; max-width: 46rem; }
.om-lead.om-center { margin-left: auto; margin-right: auto; text-align: center; }
.om-flow {
  max-width: 36rem;
  margin: 1.5rem auto 0;
  background: #ffffff;
  border: 1px solid #dbe3ea;
  border-radius: 16px;
  padding: 1rem 1rem 0.85rem;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
  text-align: left;
}
.om-flow figcaption { margin: 0 0 0.75rem; color: #334155; font-size: 0.92rem; line-height: 1.45; }
.om-kicker, .om-flow-kicker {
  display: inline-block;
  margin: 0 0 0.45rem;
  padding: 0.2rem 0.55rem;
  border-radius: 999px;
  background: #e0f2fe;
  color: #0c4a6e;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.02em;
}
#top .om-sources,
.om-queue {
  list-style: none !important;
  margin: 0;
  padding: 0;
}
#top .om-sources li {
  list-style: none !important;
}
#top .om-sources li::before,
#top .om-sources li:before {
  content: none !important;
  display: none !important;
}
#problem,
#what-can-be-monitored,
#how-it-works,
#function-library,
#sample-workflow,
#technical-details,
#example-sources,
#proposal,
#faq,
#discuss {
  scroll-margin-top: 5.5rem;
}
.tyon-om-hero .av-special-heading-tag,
#problem .av-special-heading-tag,
#what-can-be-monitored .av-special-heading-tag,
#how-it-works .av-special-heading-tag,
#function-library .av-special-heading-tag,
#sample-workflow .av-special-heading-tag,
#technical-details .av-special-heading-tag,
#example-sources .av-special-heading-tag,
#proposal .av-special-heading-tag,
#faq .av-special-heading-tag,
#discuss .av-special-heading-tag {
  text-transform: none !important;
}
.om-sources { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.5rem; }
.om-sources li, .om-queue {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 0.65rem 0.7rem;
}
.om-sources strong, .om-queue strong { display: block; color: #0f172a; font-size: 0.92rem; }
.om-sources span, .om-queue span, .om-muted { color: #475569; font-size: 0.85rem; line-height: 1.4; }
.om-flow-join {
  margin: 0.65rem 0;
  text-align: center;
  color: #0c4a6e;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.om-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-top: 0.5rem; }
.om-library { display: grid; grid-template-columns: 1fr; gap: 1rem; margin-top: 0.5rem; }
.om-card, .om-lib, .om-tech, .om-scope, .om-faq, .om-panel, .om-source-list {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  padding: 1.15rem 1.15rem 1rem;
}
.om-card h3, .om-lib h3, .om-tech h3, .om-scope h3, .om-panel h3, .om-steps h3 {
  margin: 0 0 0.45rem;
  color: #0f172a;
  font-size: 1.15rem;
  line-height: 1.3;
  font-weight: 700;
}
.om-card p, .om-lib p, .om-tech p, .om-scope p, .om-faq p, .om-panel p, .om-steps p, .om-source-list p {
  color: #334155;
  line-height: 1.6;
  font-size: 0.98rem;
}
.om-card p:last-child, .om-lib p:last-child, .om-scope p:last-child { margin-bottom: 0; }
.om-ask { margin-top: 0.75rem !important; padding-top: 0.7rem; border-top: 1px solid #e2e8f0; }
.om-steps { margin: 0; padding: 0; list-style: none; }
.om-steps li {
  margin: 0 0 0.85rem;
  padding: 0 0 0.85rem 2.6rem;
  border-bottom: 1px solid #e2e8f0;
  position: relative;
}
.om-steps li:last-child { border-bottom: 0; margin-bottom: 0; }
.om-step-no {
  position: absolute;
  left: 0;
  top: 0;
  width: 1.8rem;
  height: 1.8rem;
  border-radius: 999px;
  background: #0c4a6e;
  color: #ffffff;
  font-size: 0.85rem;
  font-weight: 700;
  line-height: 1.8rem;
  text-align: center;
}
.om-boundary {
  margin-top: 1rem;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 0.9rem 1rem;
}
.om-flag {
  background: #fff7ed;
  border: 1px solid #fed7aa;
  color: #7c2d12;
  border-radius: 12px;
  padding: 0.8rem 0.9rem;
  font-weight: 600;
  line-height: 1.5;
}
.om-switch { position: relative; margin-top: 1rem; }
.om-pick {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.om-picks { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 0 0 0.85rem; }
.om-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0.4rem 1rem;
  border-radius: 999px;
  border: 1px solid #cbd5e1;
  background: #ffffff;
  color: #0f172a;
  font-weight: 700;
  cursor: pointer;
}
#om-news:checked ~ .om-picks .om-label-news,
#om-tender:checked ~ .om-picks .om-label-tender,
#om-funding:checked ~ .om-picks .om-label-funding {
  background: #0c4a6e;
  color: #ffffff;
  border-color: #0c4a6e;
}
#om-news:focus-visible ~ .om-picks .om-label-news,
#om-tender:focus-visible ~ .om-picks .om-label-tender,
#om-funding:focus-visible ~ .om-picks .om-label-funding,
.om-tech summary:focus-visible,
.om-faq summary:focus-visible,
.om-wrap a:focus-visible {
  outline: 3px solid #0f172a;
  outline-offset: 3px;
}
.om-panels .om-panel { display: block; margin-top: 0.75rem; }
#om-news:checked ~ .om-panels .om-panel,
#om-tender:checked ~ .om-panels .om-panel,
#om-funding:checked ~ .om-panels .om-panel { display: none; }
#om-news:checked ~ .om-panels .om-panel-news,
#om-tender:checked ~ .om-panels .om-panel-tender,
#om-funding:checked ~ .om-panels .om-panel-funding { display: block; }
.om-strength, .om-status {
  display: inline-block;
  margin: 0 0 0.7rem;
  padding: 0.2rem 0.55rem;
  border-radius: 999px;
  background: #ecfeff;
  color: #0c4a6e;
  font-size: 0.8rem;
  font-weight: 700;
}
.om-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 0.45rem 1rem; margin: 0.4rem 0 0.9rem; }
.om-fields div { margin: 0; }
.om-fields dt { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.03em; text-transform: uppercase; color: #64748b; }
.om-fields dd { margin: 0.15rem 0 0; color: #0f172a; }
.om-missing { color: #9a3412; font-weight: 700; }
.om-panel h4 { margin: 0.85rem 0 0.35rem; color: #0f172a; font-size: 1rem; }
.om-panel ul, .om-lib ul, .om-tech ul, .om-source-list ul { margin: 0.35rem 0 0.6rem; padding-left: 1.15rem; color: #334155; }
.om-panel li, .om-lib li, .om-tech li, .om-source-list li { margin: 0.3rem 0; line-height: 1.5; }
.om-panel blockquote {
  margin: 0.4rem 0 0.8rem;
  padding: 0.75rem 0.9rem;
  background: #f8fafc;
  border-left: 3px solid #0c4a6e;
  color: #334155;
}
.om-brief { background: #f8fafc; border-radius: 12px; padding: 0.75rem 0.85rem; }
.om-tech summary, .om-faq summary {
  cursor: pointer;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  color: #0e7490;
  font-weight: 700;
}
.om-faq summary { color: #0f172a; }
.om-faq summary h3 { margin: 0; font-size: 1.05rem; }
.om-tech, .om-faq, .om-scope { margin: 0 0 0.85rem; }
.om-tech-body { margin-top: 0.75rem; }
.om-wrap a { color: #0e7490; font-weight: 700; overflow-wrap: anywhere; }
.om-sr {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
@media (max-width: 800px) {
  .om-cards, .om-fields, .om-sources { grid-template-columns: 1fr; }
  .om-flow { max-width: 100%; }
}