.ansatz-workflows { background: #fff; color: #121212; padding: clamp(80px,10vh,120px) var(--pandect-nav-gutter); font-family: 'General Sans', 'Helvetica Neue', Helvetica, sans-serif; }
.ansatz-workflows-shell { max-width: 1680px; margin: 0 auto; display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); column-gap: clamp(40px,4vw,72px); row-gap: 0; align-items: start; }
.ansatz-workflows-copy { display: contents; }
.ansatz-workflows-copy h2 { grid-column: 1; grid-row: 1; }
.ansatz-workflows-intro { grid-column: 1; grid-row: 2; }
.ansatz-workflow-accordion { grid-column: 1; grid-row: 3; }
.ansatz-workflows h2 { margin: 0; font-size: 50px; font-weight: 400; line-height: 1.08; letter-spacing: -.04em; }
.ansatz-workflows-intro { margin: 28px 0 48px; max-width: 100%; font-size: 16px; line-height: 1.5; color: #797979; }
.ansatz-workflow-row { box-sizing: border-box; padding: 18px 0; border-top: 1px solid #ddd; }
.ansatz-workflow-row:last-child { border-bottom: 0; }
.ansatz-workflow-row h3 { margin: 0 0 14px; font-size: 20px; line-height: 1.18; font-weight: 400; letter-spacing: -.018em; }
.ansatz-workflow-trigger { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding: 0; border: 0; width: 100%; background: none; color: inherit; font: inherit; letter-spacing: inherit; text-align: left; cursor: pointer; }
.ansatz-workflow-number { display: block; margin-bottom: 10px; color: #797979; font-size: 16px; }
.ansatz-accordion-arrow { flex: none; transition: transform 220ms ease; }
[aria-expanded="true"] .ansatz-accordion-arrow { transform: rotate(180deg); }
.ansatz-workflow-panel { display: none; }
[data-open="true"] .ansatz-workflow-panel { display: block; }
.ansatz-workflow-row:not([data-open="true"]) h3 { margin-bottom: 0; }
.ansatz-workflow-panel p { margin: 0; font-size: 16px; line-height: 1.5; color: #797979; }
.ansatz-workflows-media { grid-column: 2; grid-row: 1 / span 3; margin: 0; width: 90%; justify-self: end; overflow: hidden; border-radius: 7px; }
.ansatz-workflows-media img { display: block; width: 100%; height: auto; object-fit: contain; }
.ansatz-workflow-trigger:focus-visible { outline: 1px solid #121212; outline-offset: 6px; }
@media(max-width:1100px) { .ansatz-workflows-shell { display: block; } .ansatz-workflows-copy { display: block; } .ansatz-workflows-media { margin-top: 40px; max-width: 900px; } }
@media(max-width:720px) { .ansatz-workflows h2 { font-size: clamp(30px,8.8vw,42px); } }

/* Dark workflow section and light final comparison section. */
.ansatz-workflows { background: #000; color: #fff; }
.ansatz-workflows-intro, .ansatz-workflow-number, .ansatz-workflow-panel p { color: #a3a3a3; }
.ansatz-workflow-row { border-top-color: #444; }
.ansatz-workflow-trigger:focus-visible { outline-color: #fff; }
html body .ansatz-gap-section { background: #fff; color: #121212; }
html body .ansatz-gap-table th, html body .ansatz-gap-table td { border-color: #ddd; }
html body .ansatz-gap-table thead th, html body .ansatz-gap-table td, html body .ansatz-gap-number { color: #747474; }
html body .ansatz-gap-table td:last-child, html body .ansatz-gap-icon { color: #121212; }
html body .ansatz-pandect-dot { background: #121212; }
html body .ansatz-gap-table tbody td:last-child::before { background: #ddd; }
html body .ansatz-gap-cta-row .implementation-hero__cta { background: #121212; border-color: #121212; color: #fff; }@media (min-width: 721px) { /* Desktop CTA hover. */

html body .ansatz-gap-cta-row .implementation-hero__cta:is(:hover,:focus-visible) { background: transparent; color: #121212; }
}

/* More prominent step numbers; table categories retain their dot icons. */
.ansatz-workflows .ansatz-workflow-number { color: #fff; font-size: 28px; line-height: 1.1; font-weight: 400; letter-spacing: -.03em; margin-bottom: 12px; }

/* Paragraph spacing and emphasis for step deliverables. */
.ansatz-workflow-panel p + p { margin-top: 14px; }
.ansatz-workflow-panel strong { color: #fff; font-weight: 500; }
