/* Four reviewed modules; preserve the homepage palette and native editable content. */
.kd-ops-detail { color: var(--kd-site-ink); font-size: 16px; line-height: 1.85; }
.kd-ops-detail > *, .kd-ops-detail .kd-category-shell > *,
.kd-ops-detail :is(.kd-ops-steps, .kd-ops-scenarios, .kd-ops-overview-grid, .kd-ops-cert-grid) > * { margin-block-start: 0; }
.kd-ops-detail > * { margin-block: 0; }
.kd-ops-detail .kd-category-hero-grid { grid-template-columns: minmax(0, 1.35fr) minmax(280px, .85fr); }
.kd-ops-detail .kd-category-hero .kd-category-title { color: #fff; }
.kd-ops-detail .kd-category-hero .kd-category-headline { font-size: clamp(24px, 2.5vw, 36px); margin-block: 14px 24px; color: #a5d8ff; line-height: 1.5; }
.kd-ops-detail .kd-category-hero .kd-category-lead { color: #e0edfb; }
.kd-ops-detail .kd-category-hero-links p { margin: 0; }
.kd-ops-detail .kd-category-hero-links a { color: #fff; }
.kd-ops-detail .kd-category-hero-links a:hover { color: #123c72; }
.kd-ops-detail .kd-ops-section { padding-block: clamp(40px, 5.5vw, 72px); }
.kd-ops-detail .kd-ops-section > .kd-category-shell > h2 { font-size: clamp(25px, 2.5vw, 32px); margin: 0 0 28px; color: var(--kd-site-ink); }
.kd-ops-detail .kd-ops-overview { background: #fff; }
.kd-ops-detail #detail-overview > .kd-category-shell { width: 100%; max-width: var(--kd-site-width); background: transparent; border: 0; border-radius: 0; padding: 0 max(var(--kd-site-gutter), env(safe-area-inset-left)) 0 max(var(--kd-site-gutter), env(safe-area-inset-right)); }
.kd-ops-detail .kd-ops-overview-grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(280px, .85fr); gap: clamp(28px, 4vw, 56px); align-items: start; }
.kd-ops-detail .kd-ops-overview-copy { min-width: 0; }
.kd-ops-detail .kd-ops-overview-copy > :is(.kd-content-section, .kd-detail-section) { margin: 0; padding: 0; border: 0; background: transparent; }
.kd-ops-detail .kd-ops-overview-copy .kd-category-shell { padding: 0; background: transparent; border: 0; }
.kd-ops-detail .kd-ops-overview-copy h2 { font-size: clamp(22px, 2vw, 27px); }
.kd-ops-detail .kd-ops-certificates { min-width: 0; width: 100%; padding: clamp(18px, 2vw, 28px); border: 1px solid #e0e8f1; border-radius: 12px; background: #f4f8fc; color: var(--kd-site-ink); }
.kd-ops-detail .kd-ops-cert-title { margin: 0 0 20px; color: #102d53; font-size: 19px; font-weight: 700; text-align: center; }
.kd-ops-detail .kd-ops-cert-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; align-items: start; }
.kd-ops-detail .kd-ops-certificate { min-width: 0; margin: 0; text-align: center; }
.kd-ops-detail .kd-ops-certificate .wp-block-image { margin: 0 0 12px; }
.kd-ops-detail .kd-ops-certificate .wp-block-image img { width: 100%; height: clamp(110px, 14vw, 180px); object-fit: contain; margin: 0 auto; }
.kd-ops-detail .kd-ops-certificate h3 { margin: 0 0 5px; font-size: 16px; }
.kd-ops-detail .kd-ops-certificate p { margin: 0; font-size: 13px; line-height: 1.6; color: #586b81; }
.kd-ops-detail .kd-ops-cert-caption { margin: 20px 0 0; color: #586b81; font-size: 13px; text-align: center; }
.kd-ops-detail .kd-ops-capabilities { background: var(--kd-site-tint); }
.kd-ops-detail .kd-ops-intro { margin-bottom: 28px; color: #586b81; }
.kd-ops-detail .kd-ops-steps { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 18px; }
.kd-ops-detail .kd-ops-step { min-width: 0; padding: 24px 20px; border: 1px solid #e0e8f1; border-radius: 12px; background: #fff; }
.kd-ops-detail .kd-ops-step .kd-ops-step-number { color: #3d82d0; font-size: 27px; font-weight: 700; line-height: 1; margin: 0 0 24px; }
.kd-ops-detail .kd-ops-step h3 { color: #102d53; font-size: 19px; line-height: 1.5; margin: 0 0 14px; }
.kd-ops-detail .kd-ops-step p:last-child { margin: 0; font-size: 15px; color: #586b81; }
.kd-ops-detail .kd-ops-scenario-section { background: var(--kd-site-banner); color: #fff; }
.kd-ops-detail .kd-ops-scenario-section > .kd-category-shell > h2 { color: #fff; }
.kd-ops-detail .kd-ops-scenarios { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.kd-ops-detail .kd-ops-scenario { min-width: 0; padding: 28px; border: 1px solid #c4deff3d; border-radius: 12px; background: #ffffff0e; }
.kd-ops-detail .kd-ops-scenario h3 { color: #fff; font-size: 21px; margin: 0 0 14px; }
.kd-ops-detail .kd-ops-scenario p { color: #e0edfb; margin: 0; }
.kd-ops-detail .kd-ops-source-content { margin-top: 28px; padding: 20px 0; border-top: 1px solid #d9e5f2; }
.kd-ops-detail .kd-ops-source-content .kd-category-shell { padding-inline: 0; }
.kd-ops-detail .kd-ops-source-content :is(.kd-detail-section, .kd-content-section) { padding-block: 20px; margin-block: 0; background: transparent; }
.kd-ops-detail .kd-ops-scenario-section .kd-ops-source-content { border-color: #c4deff3d; }
.kd-ops-detail .kd-ops-scenario-section .kd-ops-source-content :is(h2, h3, p, a, li) { color: #fff; }
.kd-ops-detail .kd-ops-scenario-section .kd-ops-source-content .kd-detail-card :is(h2, h3, p, a, li) { color: var(--kd-site-ink); }
.kd-ops-detail .kd-ops-preserved { padding-block: clamp(28px, 4vw, 48px); background: #fff; }
.kd-ops-detail .kd-ops-preserved:nth-child(even) { background: var(--kd-site-tint); }
.kd-ops-detail .kd-ops-preserved:has(> .kd-category-shell > .kd-product-band) { background: var(--kd-site-banner); color: #fff; }
.kd-ops-detail .kd-ops-preserved > .kd-category-shell > :is(.kd-content-section, .kd-detail-section) { padding-block: 0; margin: 0; background: transparent; }
.kd-ops-detail .kd-ops-preserved > .kd-category-shell > .kd-detail-section > .kd-category-shell { padding-inline: 0; }
.kd-ops-detail a:focus-visible { outline: 3px solid #3d82d0; outline-offset: 4px; }
@media (max-width: 1050px) {
  .kd-ops-detail .kd-ops-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .kd-ops-detail .kd-category-hero-grid, .kd-ops-detail .kd-ops-overview-grid { grid-template-columns: minmax(0, 1fr); }
  .kd-ops-detail .kd-ops-certificates { max-width: 560px; margin-inline: auto; }
}
@media (max-width: 700px) {
  .kd-ops-detail .kd-ops-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .kd-ops-detail .kd-ops-scenarios { grid-template-columns: minmax(0, 1fr); }
  .kd-ops-detail .kd-ops-certificate .wp-block-image img { height: clamp(100px, 24vw, 160px); }
}
@media (max-width: 480px) {
  .kd-ops-detail .kd-ops-steps { grid-template-columns: minmax(0, 1fr); }
  .kd-ops-detail .kd-ops-step { padding: 24px; }
  .kd-ops-detail .kd-ops-cert-grid { gap: 8px; }
  .kd-ops-detail .kd-ops-certificates { padding: 18px 12px; }
  .kd-ops-detail .kd-ops-scenario { padding: 24px; }
}
