.dcp-v2 { color: #142c42; line-height: 1.8; --dp-blue: #1559ad; }
.dcp-v2 * { box-sizing: border-box; }
.entry-content .dcp-v2 :is(h1,h2,h3,h4) { background: none; border: 0; padding: 0; color: #142c42; letter-spacing: .01em; }
.dcp-v2 h2 { font-size: 26px; line-height: 1.5; margin: 0 0 18px; }
.dcp-v2 h3 { font-size: 20px; line-height: 1.5; margin: 0 0 12px; }
.dcp-v2 p { margin: 0 0 16px; }
.dcp-v2 section { margin: 0 0 36px; scroll-margin-top: 30px; }
.dcp-v2 .dp-lead { font-size: 17px; color: #506477; }
.dcp-v2 .dp-intro { padding: 24px; background: #edf4fb; border-radius: 14px; margin-bottom: 28px; }
.dcp-v2 .dp-intro p:last-child { margin-bottom: 0; }
.dcp-v2 .dp-button { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 12px 24px; background: #1559ad; color: #fff; border: 0; border-radius: 10px; text-decoration: none; font: inherit; font-weight: 700; cursor: pointer; }
.dcp-v2 .dp-button:hover { background: #104685; }
.entry-content .dcp-v2 a.dp-button { color: #fff !important; }
.dcp-v2 a:focus-visible,.dcp-v2 button:focus-visible,.dcp-v2 summary:focus-visible { outline: 3px solid #e49b21; outline-offset: 4px; }
.dcp-v2 .dp-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.dcp-v2 .dp-card { border: 1px solid #dce5ee; border-radius: 12px; padding: 24px; background: #fff; scroll-margin-top: 28px; }
.dcp-v2 .dp-card p { font-size: 15px; color: #506477; }
.dcp-v2 .dp-tag { display: inline-block; font-size: 12px; font-weight: 700; color: #1559ad; background: #edf4fb; border-radius: 5px; padding: 3px 10px; margin-bottom: 12px; }
.dcp-v2 dl { margin: 0; }
.dcp-v2 dt { font-size: 13px; font-weight: 700; color: #506477; margin-top: 12px; }
.dcp-v2 dd { margin: 3px 0 0; font-size: 15px; }
.dcp-v2 .dp-warning { margin: 18px 0 0; padding: 12px 14px; background: #f8f6f0; color: #5e5137; font-size: 13px; border-radius: 8px; }
.dcp-v2 .dp-chips { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 28px; }
.dcp-v2 .dp-chips a { padding: 8px 14px; border: 1px solid #cbdcea; background: #f5f9fd; color: #1559ad; border-radius: 30px; text-decoration: none; font-size: 14px; }
.dcp-v2 .dp-caption { font-size: 13px; color: #506477; }
.dcp-v2 .dp-stat { display: block; font-size: 44px; color: #1559ad; font-weight: 750; line-height: 1.2; margin: 14px 0; }
.dcp-v2 .dp-stat small { font-size: 20px; }
.dcp-v2 .dp-table-wrap { overflow-x: auto; margin-bottom: 20px; }
.dcp-v2 table { width: 100%; margin: 0; border-collapse: collapse; font-size: 14px; line-height: 1.6; }
.dcp-v2 th { background: #edf4fb; color: #142c42; text-align: left; white-space: nowrap; }
.dcp-v2 :is(th,td) { padding: 14px; border: 1px solid #dce5ee; vertical-align: top; }
.dcp-v2 .dp-table-wrap table { min-width: 600px; }
.dcp-v2 .dp-note { padding: 18px 22px; border-left: 4px solid #1559ad; background: #f5f8fb; border-radius: 0 10px 10px 0; margin: 22px 0; }
.dcp-v2 .dp-note p:last-child { margin-bottom: 0; }
.dcp-v2 .dp-final { background: #edf4fb; border-radius: 14px; padding: 26px; margin-top: 32px; }
.dcp-v2 .dp-flow { counter-reset: dp-flow; display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; list-style: none; padding: 0; margin: 20px 0; }
.dcp-v2 .dp-flow li { counter-increment: dp-flow; background: #edf4fb; padding: 18px; border-radius: 10px; font-size: 14px; }
.dcp-v2 .dp-flow li:before { content: '0' counter(dp-flow); display: block; color: #1559ad; font-size: 24px; font-weight: 700; margin-bottom: 8px; }
.dcp-v2 .dp-details { border: 1px solid #dce5ee; border-radius: 10px; margin-bottom: 12px; }
.dcp-v2 .dp-details summary { padding: 17px 20px; cursor: pointer; font-weight: 700; color: #142c42; }
.dcp-v2 .dp-details > div { padding: 0 20px 20px; font-size: 15px; }
.dcp-v2 .dp-details p { margin-bottom: 12px; }
.dcp-v2 .dp-details ul { padding-left: 22px; }
.dcp-v2 .dp-policy section { padding-bottom: 24px; border-bottom: 1px solid #e1e8ef; }
.dcp-v2 .dp-policy p,.dcp-v2 .dp-policy li { font-size: 15px; }
.dcp-v2 .dp-email { display: inline-block; font-size: 22px; font-weight: 700; overflow-wrap: anywhere; }
.dcp-v2 .dp-copy { padding: 9px 14px; margin: 10px; background: #fff; border: 1px solid #aabdd0; border-radius: 8px; color: #1559ad; font: inherit; cursor: pointer; }
.dcp-v2 [role=status] { font-size: 13px; color: #506477; }
/* Keep the site header compact so users can reach the page's first action. */
.header-container-in .logo-header { padding: 12px 0; }
.header-container-in .logo-header img { max-height: 64px; width: auto; }
.dcp-mobile-nav { display: none; }
@media(max-width:700px) {
  .dcp-v2 h2 { font-size: 23px; }
  .dcp-v2 h3 { font-size: 19px; }
  .dcp-v2 .dp-grid { grid-template-columns: 1fr; }
  .dcp-v2 .dp-intro,.dcp-v2 .dp-card,.dcp-v2 .dp-final { padding: 20px; }
  .dcp-v2 .dp-button { width: 100%; }
  .dcp-v2 .dp-flow { grid-template-columns: repeat(2,1fr); }
  .dcp-v2 .dp-stat { font-size: 38px; }
  .dcp-v2 .dp-policy section { margin-bottom: 24px; padding-bottom: 16px; }
  .dcp-v2 .dp-email { font-size: 20px; }
}
@media(max-width:834px) {
  /* Navigation and consent-control placement are owned by ui/navigation.css on every page type. */
  .header-container-in .logo-header img { max-height: 45px; }
}

/* Consistent spacing between explanatory blocks and their links. */
.entry-content .dcp-v2 .dp-card > a:last-child { display: inline-block; margin-top: 12px; }
.entry-content .dcp-v2 h2 { margin: 0 0 16px; }
.entry-content .dcp-v2 h3 { margin: 20px 0 10px; }
.entry-content .dcp-v2 .dp-card h3 { margin: 0 0 12px; }
.entry-content .dcp-v2 .dp-details > div > h3:first-child { margin-top: 4px; }
.entry-content .dcp-v2 .dp-details h3 + p { margin-top: 0; }


/* Readability and visual hierarchy, 2026-10-02. Scoped to Denkipath pages. */
.entry-content .dcp-v2 {
  font-size: 16px;
  line-height: 1.85;
  overflow-wrap: anywhere;
}
.entry-content .dcp-v2 p { margin: 0 0 16px; line-height: 1.85; }
.entry-content .dcp-v2 section { margin-bottom: 40px; }
.entry-content .dcp-v2 :is(h1,h2,h3,h4) { line-height: 1.5; letter-spacing: .01em; }
.entry-content .dcp-v2 h2 {
  position: relative;
  padding-left: 15px;
  font-size: 25px;
  margin: 0 0 16px;
}
.entry-content .dcp-v2 h2::before {
  content: '';
  position: absolute;
  left: 0; top: .24em;
  width: 4px; height: 1em;
  border-radius: 3px;
  background: #1559ad;
}
.entry-content .dcp-v2 h3 { font-size: 20px; margin: 22px 0 10px; }
.entry-content .dcp-v2 .dp-card h3 { margin: 0 0 12px; }
.entry-content .dcp-v2 .dp-card {
  border-color: #d3dfeb;
  box-shadow: 0 3px 12px #142c4206;
}
.entry-content .dcp-v2 :is(.dp-card p,.dp-card dd,.dp-policy p,.dp-policy li,.dp-trust p,.dp-final p) {
  font-size: 16px;
  line-height: 1.8;
}
.entry-content .dcp-v2 .dp-card dl { margin: 0; }
.entry-content .dcp-v2 .dp-card dt {
  margin: 16px 0 4px;
  font-size: 13px;
  line-height: 1.6;
  color: #506477;
}
.entry-content .dcp-v2 .dp-card dd { margin: 0; color: #142c42; }
.entry-content .dcp-v2 .dp-card p:last-child { margin-bottom: 0; }
.entry-content .dcp-v2 .dp-card > a:last-child { margin-top: 12px; }
.entry-content .dcp-v2 .dp-warning {
  margin: 18px 0 0;
  padding: 12px 14px;
  border-left: 3px solid #bca26b;
  font-size: 14px;
  color: #61543b;
  line-height: 1.75;
}
.entry-content .dcp-v2 :is(.dp-caption,.dp-meta,.dp-preview-note) {
  font-size: 14px;
  color: #506477;
  line-height: 1.75;
}
.entry-content .dcp-v2 .dp-caption { margin-bottom: 18px; }
.entry-content .dcp-v2 .dp-meta { margin: 12px 0 0; }
.entry-content .dcp-v2 .dp-preview-note { margin: 14px 0 0; }
.entry-content .dcp-v2 a {
  color: #1559ad;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}
.entry-content .dcp-v2 a.dp-card { color: #142c42; }
.entry-content .dcp-v2 .dp-chips a { min-height: 44px; line-height: 1.75; }
.entry-content .dcp-v2 .dp-tag { line-height: 1.6; margin-bottom: 12px; }
.entry-content .dcp-v2 a.dp-button {
  color: #fff;
  background: linear-gradient(135deg,#1559ad,#104988);
  box-shadow: 0 4px 12px #1559ad1a;
  line-height: 1.5;
}
.entry-content .dcp-v2 .dp-details { overflow: hidden; border-color: #d3dfeb; }
.entry-content .dcp-v2 .dp-details summary {
  display: flex;
  align-items: center;
  gap: 12px;
  list-style: none;
  padding: 16px 20px;
  min-height: 56px;
  line-height: 1.6;
}
.entry-content .dcp-v2 .dp-details summary::-webkit-details-marker { display: none; }
.entry-content .dcp-v2 .dp-details summary::after {
  content: '';
  flex: 0 0 8px;
  width: 8px; height: 8px;
  margin-left: auto;
  border-right: 2px solid #1559ad;
  border-bottom: 2px solid #1559ad;
  transform: rotate(45deg);
}
.entry-content .dcp-v2 .dp-details[open] summary { background: #f1f6fc; border-bottom: 1px solid #dce5ee; }
.entry-content .dcp-v2 .dp-details[open] summary::after { transform: rotate(225deg); }
.entry-content .dcp-v2 .dp-details > div { padding: 18px 20px 20px; font-size: 16px; }
.entry-content .dcp-v2 .dp-details > div > h3:first-child { margin-top: 0; }
.entry-content .dcp-v2 .dp-details h3 + p { margin-top: 0; }
.entry-content .dcp-v2 .dp-details p { margin-bottom: 12px; }
.entry-content .dcp-v2 .dp-details > div > :last-child { margin-bottom: 0; }
.entry-content .dcp-v2 :is(ul,ol):not(.dp-flow) { padding-left: 1.35em; margin: 12px 0 18px; }
.entry-content .dcp-v2 li + li { margin-top: 7px; }
.entry-content .dcp-v2 .dp-flow li + li { margin-top: 0; }
.entry-content .dcp-v2 .dp-stat { font-variant-numeric: tabular-nums; letter-spacing: -.02em; }
.entry-content .dcp-v2 .dp-table-wrap { border-radius: 10px; border: 1px solid #d3dfeb; }
.entry-content .dcp-v2 table { font-size: 15px; line-height: 1.75; margin: 0; }
.entry-content .dcp-v2 :is(th,td) { padding: 14px 16px; border-color: #dce5ee; }
.entry-content .dcp-v2 tbody tr:nth-child(even) { background: #f8fafc; }
.entry-content .dcp-v2 .dp-final { border: 1px solid #d9e6f3; }
.entry-content .dcp-v2 .dp-final h2 { padding-left: 0; }
.entry-content .dcp-v2 .dp-final h2::before { content: none; }

/* Form explanations and result details use the same readable type scale. */
.entry-content .denkipath-career-check { --dcp-text-muted: #506477; --dcp-text-soft: #657487; }
.entry-content .denkipath-career-check :is(.dcp-input,.dcp-select) { font-size: 16px; }
.entry-content .denkipath-career-check :is(.dcp-field-help,.dcp-field-intro,.dcp-start-note,.dcp-start-meta,.dcp-choice-description) {
  font-size: 14px; line-height: 1.75;
}
.entry-content .denkipath-career-check :is(.dcp-section-intro,.dcp-leading-reason,.dcp-route p,.dcp-next-content > p,.dcp-qualification-detail p) {
  font-size: 15px; line-height: 1.8;
}
.entry-content .denkipath-career-check :is(.dcp-result-note,.dcp-results-caveat,.dcp-source-meta,.dcp-evidence-item p) {
  font-size: 14px; line-height: 1.75; color: #506477;
}
.entry-content .denkipath-career-check .dcp-result-section h3 { margin-bottom: 14px; line-height: 1.5; letter-spacing: 0; }
.entry-content .denkipath-career-check .dcp-section-intro { margin: 0 0 22px; }
.entry-content .denkipath-career-check .dcp-next-list > li { padding: 18px 0; }
.entry-content .denkipath-career-check .dcp-qualification-detail { background: #f8fafc; padding: 14px 16px; border-radius: 8px; }
.entry-content .denkipath-career-check .dcp-results a { color: #1559ad; }
.entry-content .denkipath-career-check :is(a,button,summary):focus-visible { outline: 3px solid #e49b21; outline-offset: 3px; }
@media (hover:hover) {
  .entry-content .dcp-v2 .dp-chips a:hover { background: #e7f0fa; border-color: #8cafd4; }
  .entry-content .dcp-v2 .dp-details summary:hover { background: #f1f6fc; }
  .entry-content .dcp-v2 a.dp-button:hover { background: #104685; }
}
@media (max-width:700px) {
  .entry-content .dcp-v2 h2 { font-size: 22px; }
  .entry-content .dcp-v2 h3 { font-size: 19px; }
  .entry-content .dcp-v2 section { margin-bottom: 32px; }
  .entry-content .dcp-v2 .dp-card { padding: 20px; }
  .entry-content .dcp-v2 .dp-details summary { padding: 14px 16px; }
  .entry-content .dcp-v2 .dp-details > div { padding: 16px; }
}
@media (prefers-reduced-motion:reduce) {
  .entry-content .dcp-v2 a.dp-card { transition: none; }
  .entry-content .dcp-v2 a.dp-card:hover { transform: none; }
}

/* TOP template spacing. */
.home .entry-content .dcp-v2 { max-width: 1160px; margin-inline: auto; padding-inline: 18px; }
.home .entry-content .dcp-v2 h2 { padding-left: 15px; }
.home .entry-content .dcp-v2 .dp-final h2 { padding-left: 0; }

@media(max-width:700px) { .entry-content .dcp-v2 a.dp-button { padding-inline:14px; } }
.entry-content .dcp-v2 .dp-details summary:focus-visible { outline-offset:-3px; }

/* Reaudit fixes: retain the existing theme and consent controls. */
body.dcp-reading-layout .entry-content .dcp-v2 a { color: #1559ad; text-decoration-thickness: 1px; text-underline-offset: 4px; }
body.dcp-reading-layout .entry-content .dcp-v2 a.dp-card { color: #142c42; }
body.dcp-reading-layout .entry-content .dcp-v2 a.dp-button { color: #fff; }
body.dcp-reading-layout .entry-content .dcp-v2 a:hover { text-decoration-thickness: 2px; }
body.dcp-reading-layout .entry-content .dcp-v2 :is(a,button,summary):focus-visible { outline: 3px solid #d38b12; outline-offset: 3px; }
body.dcp-reading-layout .entry-content .dcp-v2 .dp-details summary:focus-visible { outline-offset: -3px; }
body.dcp-reading-layout .entry-content .dcp-v2 :is(th,td) { font-size: 15px; line-height: 1.75; }
body.dcp-reading-layout .entry-content .dcp-v2 .dp-responsive-table small { font-size: 14px; line-height: 1.75; }
.entry-content .dcp-v2 .dp-details summary h3 { margin: 0; font-size: 19px; line-height: 1.5; }
.entry-content .dcp-v2 .dp-comparison-details[id] { scroll-margin-top: 80px; }
.entry-content .dcp-v2 .dp-table-link { display: inline-flex; gap: 4px; align-items: baseline; white-space: nowrap; }
.entry-content .dcp-v2 .dp-date-part { display: inline-block; white-space: nowrap; }
.entry-content .dcp-v2 .dp-compare-list { list-style: none; padding: 0; margin: 0 0 24px; display: grid; gap: 0; border: 1px solid #d3dfeb; border-radius: 10px; overflow: hidden; }
.entry-content .dcp-v2 .dp-compare-list li { margin: 0; border-bottom: 1px solid #dce5ee; }
.entry-content .dcp-v2 .dp-compare-list li:last-child { border: 0; }
.entry-content .dcp-v2 .dp-compare-list a { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.5fr); gap: 12px; padding: 14px 16px; min-height: 44px; }
.entry-content .dcp-v2 .dp-compare-list span { color: #506477; font-size: 15px; }
.entry-content .dcp-v2 .dp-compare-list a:focus-visible { outline-offset: -3px; }
.entry-content .dcp-v2 .dp-comparison-details .dp-grid { margin-top: 18px; }
.entry-content .dcp-v2 .dp-policy-toc { padding: 18px 20px; background: #f5f9fd; border: 1px solid #d3dfeb; border-radius: 10px; margin-bottom: 32px; }
.entry-content .dcp-v2 .dp-policy-toc ul { columns: 2; margin: 0; }
.entry-content .dcp-v2 .dp-policy-toc li { break-inside: avoid; }
.entry-content .dcp-v2 .dp-policy-toc a { display: inline-block; padding-block: 6px; }
.entry-content .dcp-v2 a.dp-button { gap: 6px; }
.entry-content .dcp-v2 .dp-button-arrow { flex: 0 0 auto; white-space: nowrap; }
.entry-content .dcp-v2 .dp-preview-example { font-size: 14px; line-height: 1.75; margin-bottom: 12px; color: #506477; }
.entry-content .dcp-v2 .dp-table-mobile-note { display: none; }
@media(max-width:370px) {
  body.home .entry-content .dcp-v2 h1 { font-size: 27px; }
}
@media(max-width:700px) {
  .entry-content .dcp-v2 .dp-compare-list a { grid-template-columns: 1fr; gap: 3px; }
  .entry-content .dcp-v2 .dp-policy-toc ul { columns: 1; }
  .entry-content .dcp-v2 .dp-responsive-table { min-width: 0; width: 100%; }
  .entry-content .dcp-v2 .dp-responsive-table :is(thead,thead tr) { display: none; }
  .entry-content .dcp-v2 .dp-responsive-table :is(tbody,tr,th,td) { display: block; width: auto; }
  .entry-content .dcp-v2 .dp-responsive-table tr { padding: 14px 16px; border-bottom: 1px solid #d3dfeb; }
  .entry-content .dcp-v2 .dp-responsive-table tr:last-child { border-bottom: 0; }
  .entry-content .dcp-v2 .dp-responsive-table :is(th,td) { padding: 5px 0; border: 0; text-align: left; }
  .entry-content .dcp-v2 .dp-responsive-table td::before { content: attr(data-label); display: block; font-weight: 700; font-size: 14px; color: #506477; }
  .entry-content .dcp-v2 .dp-table-desktop-note { display: none; }
  .entry-content .dcp-v2 .dp-table-mobile-note { display: inline; }
}
