.safe-dpp-page .safe-nav-bar {
  position: absolute;
  inset: 0 0 auto;
  padding: 24px 0 18px;
  background: transparent;
  border-bottom: 0;
}
.safe-dpp-page .safe-nav-bar .container {
  max-width: none;
  padding-inline: clamp(18px, 3.6vw, 56px);
}
.safe-dpp-page .safe-nav-brand .safe-site-logo { filter: brightness(0) invert(1); opacity: .94; }
.safe-dpp-page .safe-nav a { color: rgba(255,255,255,.82); }
.safe-dpp-page .safe-nav a:hover,
.safe-dpp-page .safe-nav a:focus-visible,
.safe-dpp-page .safe-nav a.active { color: #fff; }
.safe-dpp-page .safe-nav-member-link { display: none; }
.safe-dpp-page .safe-service-wrap {
  max-width: 1220px;
  margin-inline: auto;
  padding-inline: 32px;
}
.safe-dpp-page .safe-service-hero {
  position: relative;
  padding: clamp(155px, 14vw, 200px) 0 64px;
  color: #fff;
  background: linear-gradient(90deg,rgba(4,10,16,.9),rgba(4,10,16,.65) 54%,rgba(4,10,16,.34)),url('/assets/images/home-gallery/certification-support.webp') center / cover #071018;
}
.safe-dpp-page .dpp-back {
  display: inline-block;
  margin-bottom: 30px;
  color: rgba(255,255,255,.85);
  font-size: 14px;
}
.safe-dpp-page .safe-service-kicker {
  display: block;
  font-size: 12px;
  letter-spacing: .12em;
  color: rgba(255,255,255,.76);
}
.safe-dpp-page h1 {
  margin: 16px 0;
  color: #fff;
  font-size: clamp(32px,3.5vw,46px);
  line-height: 1.28;
  font-weight: 700;
}
.safe-dpp-page .safe-service-lead { margin: 0; color: rgba(255,255,255,.9); font-size: 18px; line-height: 1.8; }
.safe-dpp-page .dpp-date { margin: 18px 0 0; color: rgba(255,255,255,.7); font-size: 13px; }
.dpp-body { padding: 52px 0 80px; background: #fbfbfc; }
.dpp-layout { display: grid; grid-template-columns: 215px minmax(0,1fr); gap: 54px; align-items: start; }
.dpp-sidebar { position: sticky; top: 28px; }
.dpp-sidebar nav { display: grid; gap: 0; }
.dpp-toc-label { color: #536c7b; font-size: 13px; font-weight: 700; margin-bottom: 12px; }
.dpp-sidebar nav a { padding: 13px 0; border-bottom: 1px solid #e1e6e9; color: #294255; font-size: 14px; line-height: 1.65; }
.dpp-sidebar a:hover { color: #536c7b; text-decoration: underline; text-underline-offset: 4px; }
.dpp-return { display: inline-block; margin-top: 24px; color: #536c7b; font-size: 13px; }
.dpp-article { min-width: 0; color: #3f4c57; }
.dpp-part { margin: 0 0 52px; }
.dpp-part:last-child { margin-bottom: 0; }
.dpp-article h2 { margin: 0 0 28px; padding-top: 0; color: #1f3347; font-size: 27px; line-height: 1.45; font-weight: 700; scroll-margin-top: 28px; }
.dpp-part + .dpp-part { padding-top: 34px; border-top: 1px solid #dae2e7; }
.dpp-article h3 { margin: 32px 0 16px; color: #294255; font-size: 21px; line-height: 1.5; font-weight: 600; scroll-margin-top: 28px; }
.dpp-article p,
.dpp-article li { color: #3f4c57; font-size: 17px; line-height: 1.95; overflow-wrap: break-word; }
.dpp-article p { margin: 0 0 18px; }
.dpp-article strong { color: #294255; font-weight: 600; }
.dpp-article a { color: #42667c; text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.dpp-article a:hover { color: #172f41; }
.dpp-article ul,
.dpp-article ol { margin: 18px 0 24px; padding-left: 1.5em; }
.dpp-article ul { list-style: disc; }
.dpp-article ol { list-style: decimal; }
.dpp-article li { margin-bottom: 10px; padding-left: .2em; list-style: inherit; }
.dpp-table-scroll { width: 100%; overflow-x: auto; margin: 26px 0; overscroll-behavior-x: contain; }
.dpp-table-scroll:focus-visible { outline: 2px solid #536c7b; outline-offset: 4px; }
.dpp-article table { width: 100%; min-width: 600px; border-collapse: collapse; font-size: 15px; line-height: 1.8; }
.dpp-article caption { caption-side: top; text-align: left; font-size: 13px; color: #536c7b; padding: 0 0 10px; }
.dpp-article th,
.dpp-article td { padding: 14px 16px; border: 1px solid #dce4e9; text-align: left; vertical-align: top; }
.dpp-article thead th { background: #edf2f5; color: #294255; font-weight: 600; }
.dpp-article tbody th { width: 23%; color: #294255; background: #f6f8fa; font-weight: 500; }
.dpp-article tbody td { width: 38.5%; }
.dpp-article #references ~ p { font-size: 15px; }
.safe-dpp-page a:focus-visible { outline: 2px solid #7895a7; outline-offset: 4px; }
@media (max-width: 991px) {
  .dpp-layout { grid-template-columns: 180px minmax(0,1fr); gap: 30px; }
}
@media (max-width: 767px) {
  .safe-dpp-page .safe-service-wrap { padding-inline: 22px; }
  .safe-dpp-page .safe-service-hero { padding-top: 155px; padding-bottom: 42px; }
  .safe-dpp-page .dpp-back { margin-bottom: 22px; }
  .safe-dpp-page h1 { font-size: 32px; }
  .dpp-body { padding-top: 28px; padding-bottom: 48px; }
  .dpp-layout { grid-template-columns: minmax(0,1fr); gap: 32px; }
  .dpp-sidebar { position: static; }
  .dpp-sidebar nav { grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 18px; }
  .dpp-toc-label { grid-column: 1 / -1; }
  .dpp-sidebar nav a { font-size: 13px; padding-block: 10px; }
  .dpp-sidebar .dpp-return { display: none; }
  .dpp-article h2 { font-size: 24px; margin-bottom: 22px; }
  .dpp-article h3 { font-size: 20px; margin-top: 26px; }
  .dpp-article p,
  .dpp-article li { font-size: 16px; line-height: 1.9; }
  .dpp-article th,
  .dpp-article td { padding: 12px; }
  .dpp-table-scroll::before { content: "左右滑动查看完整表格"; display: block; margin-bottom: 8px; color: #536c7b; font-size: 12px; }
  .dpp-part { margin-bottom: 36px; }
}
@media print {
  .safe-dpp-page .safe-nav-bar,
  .safe-dpp-page .main_footer,
  .dpp-sidebar,
  .safe-dpp-page .dpp-back { display: none; }
  .safe-dpp-page .safe-service-hero { padding: 0 0 24px; background: #fff; }
  .safe-dpp-page .safe-service-hero * { color: #1f3347; }
  .dpp-layout { display: block; }
  .dpp-body { padding-top: 0; }
  .dpp-article table { min-width: 0; }
  .dpp-article tr { break-inside: avoid; }
  .dpp-article h2,
  .dpp-article h3 { break-after: avoid; }
}
