#winge-case-content .source-content {
  color: #334155;
  font-size: 16px;
  line-height: 1.85;
  overflow-wrap: anywhere;
}

#winge-case-content .source-content > :first-child { margin-top: 0; }
#winge-case-content .source-content > :last-child { margin-bottom: 0; }
#winge-case-content .source-content h2,
#winge-case-content .source-content h3,
#winge-case-content .source-content h4 {
  color: #0f172a;
  line-height: 1.4;
  scroll-margin-top: 118px;
}
#winge-case-content .source-content h2 { margin: 34px 0 14px; font-size: 26px; }
#winge-case-content .source-content h3 { margin: 30px 0 12px; font-size: 22px; }
#winge-case-content .source-content h4 { margin: 24px 0 10px; font-size: 18px; }
#winge-case-content .source-content p { margin: 0 0 16px; }
#winge-case-content .source-content ul,
#winge-case-content .source-content ol { margin: 0 0 20px; padding-left: 1.45em; }
#winge-case-content .source-content li { margin: 7px 0; }
#winge-case-content .source-content img,
#winge-case-content .source-content video { display: block; max-width: 100%; height: auto; margin: 20px auto; border-radius: 12px; }
#winge-case-content .source-content table { width: 100%; border-collapse: collapse; margin: 20px 0; }
#winge-case-content .source-content th,
#winge-case-content .source-content td { min-width: 110px; padding: 10px 12px; border: 1px solid #dbe4ef; text-align: left; }
#winge-case-content .source-content pre { max-width: 100%; overflow: auto; margin: 20px 0; padding: 18px; border-radius: 12px; background: #0f172a; color: #e2e8f0; }
#winge-case-content .source-content code { font-family: Consolas, Monaco, monospace; }
#winge-case-content .source-content blockquote { margin: 20px 0; padding: 16px 18px; border-left: 4px solid #2f7fea; background: #f4f8ff; }
#winge-case-content .source-content a { color: #176fe5; text-decoration: underline; text-underline-offset: 3px; }
#winge-case-content .source-content iframe { display: block; width: 100%; max-width: 100%; margin: 20px 0; border: 0; }

#winge-case-content .content-scroll {
  max-width: 100%;
  overflow-x: auto;
  scrollbar-width: thin;
}

#winge-case-content .source-boundary {
  margin-top: 30px;
  padding: 18px 20px;
  border: 1px solid #dbe6f4;
  border-radius: 14px;
  background: #f7faff;
  color: #52637a;
  font-size: 14px;
  line-height: 1.75;
}

#winge-case-content .case-profile-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 18px 0 24px;
}
#winge-case-content .case-profile-tags span {
  padding: 7px 10px;
  border: 1px solid #d9e5f4;
  border-radius: 999px;
  color: #35506f;
  background: #f7faff;
  font-size: 13px;
}

#winge-case-content .hero__copy h1 { max-width: 900px; }
#winge-case-content .case-page-shell[data-page-kind="case"] .hero__lead { max-width: 820px; }

/* Preserved custom service pages use two generations of the site chrome. */
@media (max-width: 900px) {
  .site-header .global-nav { display: none !important; }
  .site-header .site-header__inner { justify-content: space-between; }
  .site-header .header-actions { width: auto; margin-left: auto; }
  .site-header .menu-button { display: flex !important; }
}

.theme-stm32 .chip-list {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  max-width: 100%;
}

.theme-stm32 .navbtn svg {
  max-width: 100%;
  height: auto;
}

@media (max-width: 767px) {
  #winge-case-content .source-content { font-size: 15px; line-height: 1.78; }
  #winge-case-content .source-content h2 { font-size: 23px; }
  #winge-case-content .source-content h3 { font-size: 20px; }
  #winge-case-content .source-content table { min-width: 620px; }
  #winge-case-content .article-card { overflow: hidden; }
}
