/* outsourced-dpo.css — scope .dpo-outsourced ; layered on services.css design system */
.dpo-outsourced .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:38px;align-items:center}
.dpo-outsourced .caps{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 22px}
.dpo-outsourced .caps span{font-size:13px;font-weight:600;color:var(--ink-2);background:var(--paper-3);border:1px solid var(--line);border-radius:999px;padding:6px 12px}
.dpo-outsourced .govfig{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius);padding:18px}
.dpo-outsourced .govfig svg{width:100%;height:auto;display:block}
.dpo-outsourced .govlegend{display:flex;gap:14px;flex-wrap:wrap;margin-top:12px;font-size:12.5px;color:var(--slate)}
.dpo-outsourced .govlegend b{color:var(--ink)}
.dpo-outsourced .govlegend i{font-style:normal;display:inline-block;width:11px;height:11px;border-radius:3px;margin-right:6px;vertical-align:middle}

/* assessment */
.dpo-outsourced .assess{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius);padding:26px}
.dpo-outsourced .qgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px 22px;margin:16px 0 6px}
.dpo-outsourced .q{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line)}
.dpo-outsourced .q label{font-size:14.5px;color:var(--ink-2);line-height:1.4;cursor:pointer}
.dpo-outsourced .q input{margin-top:3px;width:18px;height:18px;flex:none;accent-color:var(--accent)}
.dpo-outsourced .assess-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:16px}
.dpo-outsourced .result{margin-top:18px;border:1px solid var(--line);border-radius:12px;padding:0;overflow:hidden}
.dpo-outsourced .result .path{padding:16px 18px;border-top:1px solid var(--line)}
.dpo-outsourced .result .path:first-child{border-top:0}
.dpo-outsourced .result .path h4{margin:0 0 4px;font-size:15px}
.dpo-outsourced .result .path p{margin:0;font-size:14px;color:var(--slate)}
.dpo-outsourced .result .path .tag{font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent)}
.dpo-outsourced .result[data-live="1"] .path{display:none}
.dpo-outsourced .result[data-live="1"] .path.on{display:block;background:var(--accent-soft)}
.dpo-outsourced .note{font-size:13px;color:var(--muted);margin-top:10px}

/* ladder */
.dpo-outsourced .ladder{display:grid;gap:14px;margin-top:8px}
.dpo-outsourced .rung{border:1px solid var(--line);border-radius:14px;padding:18px 20px;background:#fff;position:relative}
.dpo-outsourced .rung h3{margin:0 0 4px;font-size:17px}
.dpo-outsourced .rung .who{font-size:12.5px;color:var(--muted);font-weight:600;margin-bottom:10px}
.dpo-outsourced .rung ul{margin:0;padding-left:18px;columns:2;column-gap:26px}
.dpo-outsourced .rung li{margin:4px 0;font-size:14px;color:var(--ink-2)}
.dpo-outsourced .rung--sdf{background:var(--paper-2);border-color:var(--accent)}
.dpo-outsourced .rung--ops{background:var(--paper-3)}
.dpo-outsourced .arrowdown{text-align:center;color:var(--accent);font-weight:700;font-size:18px;line-height:.6}

/* oversight vs implementation */
.dpo-outsourced .split{display:grid;grid-template-columns:1fr auto 1fr;gap:0;align-items:stretch;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.dpo-outsourced .split .col{padding:22px}
.dpo-outsourced .split .col--o{background:var(--accent-soft)}
.dpo-outsourced .split .col--i{background:var(--paper-2)}
.dpo-outsourced .split .mid{width:1px;background:var(--line)}
.dpo-outsourced .split h3{margin:0 0 4px;font-size:16px}
.dpo-outsourced .split .role{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--accent);margin-bottom:12px;display:block}
.dpo-outsourced .split ul{margin:0;padding-left:18px}
.dpo-outsourced .split li{margin:6px 0;font-size:14px;color:var(--ink-2)}
.dpo-outsourced .rule{margin-top:16px;border-left:3px solid var(--accent);background:var(--paper-2);padding:12px 16px;font-size:14.5px;color:var(--ink-2);border-radius:0 10px 10px 0}

/* operating domains dashboard */
.dpo-outsourced .domains{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:8px}
.dpo-outsourced .domain{border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:#fff}
.dpo-outsourced .domain b{display:block;font-size:14.5px;color:var(--ink);margin-bottom:2px}
.dpo-outsourced .domain span{font-size:13.5px;color:var(--slate);line-height:1.45}

/* engagement models */
.dpo-outsourced .models{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:8px}
.dpo-outsourced .model{border:1px solid var(--line);border-radius:14px;padding:20px;background:#fff;display:flex;flex-direction:column}
.dpo-outsourced .model .mno{font-size:12px;font-weight:700;color:var(--accent);letter-spacing:.05em}
.dpo-outsourced .model h3{margin:6px 0 8px;font-size:17px}
.dpo-outsourced .model p{font-size:14px;color:var(--slate);margin:0 0 10px}
.dpo-outsourced .model ul{margin:0 0 4px;padding-left:18px}
.dpo-outsourced .model li{font-size:13.5px;color:var(--ink-2);margin:4px 0}
.dpo-outsourced .model .fit{margin-top:auto;font-size:12.5px;color:var(--muted);padding-top:10px}

/* SDF nuance */
.dpo-outsourced .nuance{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:8px}
.dpo-outsourced .nb{border:1px solid var(--line);border-radius:14px;padding:18px;background:#fff}
.dpo-outsourced .nb--req{border-top:3px solid var(--accent)}
.dpo-outsourced .nb--open{border-top:3px solid var(--gold)}
.dpo-outsourced .nb--struct{border-top:3px solid var(--slate)}
.dpo-outsourced .nb h3{margin:0 0 8px;font-size:15.5px}
.dpo-outsourced .nb ul{margin:0;padding-left:18px}
.dpo-outsourced .nb li{font-size:13.5px;color:var(--ink-2);margin:6px 0}
.dpo-outsourced .disc{margin-top:16px;font-size:13px;color:var(--muted);background:var(--paper-2);border:1px solid var(--line);border-radius:10px;padding:12px 16px}

/* deliverables + mockups */
.dpo-outsourced .delivs{display:grid;grid-template-columns:1.1fr .9fr;gap:22px;align-items:start}
.dpo-outsourced .delivs ul{margin:0;padding-left:18px;columns:2;column-gap:24px}
.dpo-outsourced .delivs li{font-size:14px;color:var(--ink-2);margin:6px 0;break-inside:avoid}
.dpo-outsourced .mock{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden;margin-bottom:14px}
.dpo-outsourced .mock .mh{background:var(--ink);color:#fff;font-size:12.5px;font-weight:600;padding:8px 14px;display:flex;justify-content:space-between}
.dpo-outsourced .mock .mh span{opacity:.7;font-weight:500}
.dpo-outsourced .mock .mb{padding:14px}
.dpo-outsourced .bars{display:grid;gap:8px}
.dpo-outsourced .bar{display:grid;grid-template-columns:96px 1fr 42px;gap:10px;align-items:center;font-size:12px;color:var(--slate)}
.dpo-outsourced .bar .t{height:8px;border-radius:5px;background:var(--paper-3);overflow:hidden}
.dpo-outsourced .bar .t i{display:block;height:100%;background:var(--accent)}
.dpo-outsourced .kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.dpo-outsourced .kpi{background:var(--paper-2);border:1px solid var(--line);border-radius:10px;padding:10px;text-align:center}
.dpo-outsourced .kpi b{display:block;font-size:20px;color:var(--ink);font-family:var(--serif,"Source Serif 4",Georgia,serif)}
.dpo-outsourced .kpi span{font-size:11px;color:var(--muted)}
.dpo-outsourced .reg{width:100%;border-collapse:collapse;font-size:12px}
.dpo-outsourced .reg th,.dpo-outsourced .reg td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--line)}
.dpo-outsourced .reg th{color:var(--muted);font-weight:600}
.dpo-outsourced .demo{font-size:11px;color:var(--muted);margin-top:6px;text-align:right}

/* 90-day timeline */
.dpo-outsourced .days{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:8px}
.dpo-outsourced .day{border:1px solid var(--line);border-radius:14px;padding:18px;background:#fff}
.dpo-outsourced .day .ph{font-size:12px;font-weight:700;color:var(--accent);letter-spacing:.04em}
.dpo-outsourced .day h3{margin:4px 0 8px;font-size:16px}
.dpo-outsourced .day .lab{font-size:11.5px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:10px 0 3px}
.dpo-outsourced .day ul{margin:0;padding-left:16px}
.dpo-outsourced .day li{font-size:13px;color:var(--ink-2);margin:3px 0}

/* governance calendar */
.dpo-outsourced .cal{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:8px}
.dpo-outsourced .cal .c{border:1px solid var(--line);border-radius:14px;padding:16px;background:#fff}
.dpo-outsourced .cal .c h3{margin:0 0 8px;font-size:15px;display:flex;align-items:center;gap:8px}
.dpo-outsourced .cal .c h3 em{font-style:normal;font-size:11px;font-weight:700;color:#fff;background:var(--accent);border-radius:6px;padding:2px 7px}
.dpo-outsourced .cal ul{margin:0;padding-left:16px}
.dpo-outsourced .cal li{font-size:13px;color:var(--ink-2);margin:4px 0}

/* engagement flow */
.dpo-outsourced .flow{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:8px}
.dpo-outsourced .step{border:1px solid var(--line);border-radius:12px;padding:16px;background:#fff;position:relative}
.dpo-outsourced .step .n{font-size:12px;font-weight:700;color:#fff;background:var(--accent);width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:8px}
.dpo-outsourced .step h3{margin:0 0 4px;font-size:15px}
.dpo-outsourced .step p{margin:0;font-size:13.5px;color:var(--slate)}

/* checklist */
.dpo-outsourced .checks{display:grid;grid-template-columns:1fr 1fr;gap:8px 22px;margin-top:8px}
.dpo-outsourced .check{display:flex;gap:12px;align-items:flex-start;padding:11px 0;border-bottom:1px solid var(--line)}
.dpo-outsourced .check .num{flex:none;width:26px;height:26px;border-radius:8px;background:var(--paper-3);color:var(--accent);font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center}
.dpo-outsourced .check p{margin:0;font-size:14px;color:var(--ink-2);line-height:1.4}

/* industries */
.dpo-outsourced .inds{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:8px}
.dpo-outsourced .ind{border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:#fff}
.dpo-outsourced .ind b{display:block;font-size:14.5px;color:var(--ink)}
.dpo-outsourced .ind span{font-size:13px;color:var(--slate)}

/* pricing drivers */
.dpo-outsourced .drivers{columns:2;column-gap:26px;margin:8px 0 0}
.dpo-outsourced .drivers li{font-size:14px;color:var(--ink-2);margin:6px 0;break-inside:avoid}

/* credentials */
.dpo-outsourced .creds{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:8px}
.dpo-outsourced .cred{border:1px solid var(--line);border-radius:12px;padding:16px;background:#fff}
.dpo-outsourced .cred b{display:block;font-size:14.5px;margin-bottom:2px}
.dpo-outsourced .cred span{font-size:13.5px;color:var(--slate)}

/* form */
.dpo-outsourced .lead{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px;margin-top:8px}
.dpo-outsourced .lead .full{grid-column:1/-1}
.dpo-outsourced .lead label{display:block;font-size:13px;font-weight:600;color:var(--ink-2);margin-bottom:5px}
.dpo-outsourced .lead input,.dpo-outsourced .lead select,.dpo-outsourced .lead textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:11px 12px;font:inherit;font-size:14px;color:var(--ink);background:#fff}
.dpo-outsourced .lead input:focus,.dpo-outsourced .lead select:focus,.dpo-outsourced .lead textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}
.dpo-outsourced .lead textarea{min-height:78px;resize:vertical}

@media(max-width:900px){
.dpo-outsourced .hero-grid,.dpo-outsourced .delivs{grid-template-columns:1fr}
.dpo-outsourced .nuance,.dpo-outsourced .days,.dpo-outsourced .cal,.dpo-outsourced .flow{grid-template-columns:1fr}
.dpo-outsourced .models,.dpo-outsourced .domains,.dpo-outsourced .inds,.dpo-outsourced .creds,.dpo-outsourced .qgrid,.dpo-outsourced .checks,.dpo-outsourced .lead{grid-template-columns:1fr}
.dpo-outsourced .kpis{grid-template-columns:repeat(3,1fr)}
.dpo-outsourced .rung ul,.dpo-outsourced .drivers{columns:1}
.dpo-outsourced .split{grid-template-columns:1fr}
.dpo-outsourced .split .mid{display:none}
.dpo-outsourced .split .col--i{border-top:1px solid var(--line)}
}
@media(max-width:380px){
.dpo-outsourced .kpis{grid-template-columns:1fr}
}

/* wa-bullet-fix */
.dpo-outsourced ul,.dpo-outsourced ol{text-align:left}
.dpo-outsourced li{text-align:left}
