/* A product decision workspace in Soft Marketing's own visual language. */
html.cp-service-document{scroll-padding-top:0}
.cp-service-page{--gutter:max(36px,calc((100vw - 1376px)/2));--cp-ink:#1a2b42;--cp-muted:#52657e;--cp-blue:#416daf;--cp-line:#cbd6e5;--cp-header-height:108px;color:var(--cp-ink);background:#f2f4f7}
.cp-service-page main{overflow:clip}
.cp-service-page :is(h1,h2,h3){letter-spacing:0;overflow-wrap:anywhere}
.cp-service-page h2{font-size:2.875rem;font-weight:550;line-height:1.22}
.cp-service-page h3{font-size:1.625rem;font-weight:600;line-height:1.35}
.cp-service-page p{font-size:1rem;line-height:1.8;overflow-wrap:anywhere}
.cp-service-page em{font-style:normal;color:#416daf}
.cp-service-page [hidden]{display:none!important}
.cp-service-page :is(button,select,textarea){font:inherit}
.cp-service-page :is(button,select){cursor:pointer}
.cp-service-page .site-header{background:#f2f4f7f5}
.cp-service-page .site-header.on-dark{background:#101b2df5}
.cp-service-page :is(a,button,select,textarea,[tabindex]):focus-visible{outline:2px solid #416daf;outline-offset:5px}
.cp-service-page .cp-responsibility a:focus-visible{outline-color:#d0e3ff}
.cp-section{padding:94px var(--gutter);scroll-margin-top:calc(var(--cp-header-height) + 24px)}
.cp-section>*{min-width:0}
.cp-kicker{display:block;font-size:.75rem;font-weight:650;line-height:1.8;letter-spacing:.045em}
.cp-opening{padding:141px var(--gutter) 38px}
.cp-breadcrumb{display:flex;flex-wrap:wrap;gap:8px 11px;font-size:.8125rem;line-height:1.7;color:#52657e}
.cp-breadcrumb a:hover{text-decoration:underline;text-underline-offset:4px}
.cp-opening-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:end;margin-top:31px}
.cp-service-page .cp-opening h1{font-size:1.0625rem;line-height:1.7;font-weight:600;max-width:none;margin:0;color:#4e6688}
.cp-service-page .cp-principle{font-size:3.3rem;font-weight:550;line-height:1.18;margin-top:14px;letter-spacing:0;overflow-wrap:anywhere}
.cp-opening-copy>.cp-kicker{color:#45648f;margin-bottom:12px}
.cp-opening-copy>p{color:var(--cp-muted)}
.cp-opening-copy nav{display:flex;flex-wrap:wrap;gap:14px 25px;margin-top:18px;font-size:.875rem;line-height:1.7;font-weight:600;color:#315b96}
.cp-opening-copy nav a{display:inline-flex;align-items:center;gap:16px;text-underline-offset:5px}
.cp-opening-copy nav a:hover{text-decoration:underline}
.cp-workspace{margin:0 var(--gutter);border:1px solid #bbcce2;border-radius:11px;background:#fcfdff;scroll-margin-top:calc(var(--cp-header-height) + 24px)}
.cp-workspace-bar{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#dfe9f6;border-bottom:1px solid #bbcce2;padding:18px 27px;border-radius:10px 10px 0 0}
.cp-workspace-bar h2{font-size:1.0625rem;font-weight:650;line-height:1.7;color:#2e4e7a}
.cp-workspace-bar>span{font-size:.8125rem;line-height:1.7;color:#516b8f}
.cp-workspace-body{display:grid;grid-template-columns:minmax(0,1fr)}
.cp-workspace.is-enhanced .cp-workspace-body{grid-template-columns:285px minmax(0,1fr)}
.cp-brief{margin:0;padding:27px 24px;background:#ecf1f8;border-right:1px solid #cbd8e9;border-radius:0 0 0 10px}
.cp-brief-intro .cp-kicker{color:#42628e}
.cp-brief-intro p{font-size:.875rem;line-height:1.75;color:#516783;margin:11px 0 24px}
.cp-field+.cp-field{margin-top:22px}
.cp-field label{display:block;font-size:.875rem;line-height:1.65;font-weight:600;margin-bottom:10px}
.cp-field label>span{color:#6d839e;font-size:.75rem;font-weight:550;margin-right:9px}
.cp-field select{display:block;max-width:100%;width:100%;padding:12px 8px;min-height:48px;background:#fff;color:#28486f;border:1px solid #aebed3;border-radius:5px;font-size:.875rem;line-height:1.7}
.cp-reset{display:flex;align-items:center;gap:14px;width:fit-content;max-width:100%;border:0;background:transparent;color:#45648d;font-size:.8125rem;padding:10px 0;margin-top:22px;text-align:left;line-height:1.7}
.cp-reset:hover{text-decoration:underline;text-underline-offset:5px}
.cp-evaluation{min-width:0;padding:28px 27px 14px}
.cp-evaluation-intro{max-width:900px}
.cp-evaluation-intro>.cp-kicker{color:#5c769a}
.cp-evaluation-intro h2{font-size:1.625rem;line-height:1.4;margin:12px 0 13px;color:#274b7b}
.cp-evaluation-intro p{font-size:.9375rem;line-height:1.8;color:var(--cp-muted)}
.cp-candidates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:25px;border-top:1px solid #d0dced;border-bottom:1px solid #d0dced}
.cp-candidate{min-width:0;display:flex;flex-direction:column;padding:23px 19px 24px}
.cp-candidate:first-child{padding-left:0}
.cp-candidate:last-child{padding-right:0}
.cp-candidate+.cp-candidate{border-left:1px solid #d0dced}
.cp-candidate-heading{display:grid;grid-template-columns:1fr auto;align-items:start;gap:6px 10px}
.cp-candidate-index{grid-column:2;grid-row:1;color:#7086a2;font-size:.75rem;line-height:2.7}
.cp-candidate-heading h3{grid-column:1;grid-row:1;font-size:1.5rem;line-height:1.5;font-weight:600}
.cp-candidate-language{grid-column:1/-1;font-size:.8125rem;line-height:1.65;color:#627994}
.cp-candidate .cp-candidate-status{align-self:flex-start;max-width:100%;padding:5px 8px;font-size:.75rem;line-height:1.65;font-weight:650;color:#315687;background:#e7eef8;border-radius:3px;margin:17px 0 13px}
.cp-candidate>p:not(.cp-candidate-status){font-size:.9375rem;line-height:1.8;color:#51657f}
.cp-candidate-check{padding:19px 0 21px}
.cp-candidate-check strong{display:block;color:#36547d;font-size:.8125rem;font-weight:650;line-height:1.7;margin-bottom:7px}
.cp-candidate-check p{font-size:.875rem;line-height:1.8;color:#5b6f88}
.cp-candidate-links{display:grid;gap:11px;margin-top:auto}
.cp-candidate-links a{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:.8125rem;font-weight:650;line-height:1.8;color:#315b96;text-underline-offset:4px}
.cp-candidate-links a:hover{text-decoration:underline}
.cp-candidate-links svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.5;flex-shrink:0}
.cp-proof{display:grid;grid-template-columns:150px minmax(0,1fr);gap:22px;padding-top:22px}
.cp-proof .cp-kicker{color:#3f5e88;padding-top:3px}
.cp-proof p,.cp-stage-note{font-size:.9375rem;line-height:1.8;color:#506680}
.cp-evaluation .cp-stage-note{font-size:.875rem;line-height:1.85;background:#f0f4f9;border-left:2px solid #a5bcda;padding:13px 17px;margin-top:19px}
.cp-result-actions{display:flex;justify-content:space-between;gap:25px;align-items:center;border-top:1px solid #dbe4f0;padding-top:16px;margin-top:20px}
.cp-result-actions p{font-size:.8125rem;line-height:1.8;color:#64778f;max-width:460px}
.cp-copy{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;border:0;background:transparent;font-size:.8125rem;font-weight:650;color:#315b96;padding:8px 0;text-align:left;line-height:1.6;flex-shrink:0}
.cp-copy svg,.cp-text-link svg,.cp-path-action svg,.cp-native-paths svg,.cp-sources svg,.cp-contact-link svg{width:21px;height:21px;flex-shrink:0;stroke:currentColor;stroke-width:1.4}
.cp-copy:hover{text-decoration:underline;text-underline-offset:5px}
.cp-evaluation .cp-copy-status{font-size:.8125rem;color:#375985;line-height:1.8;min-height:0}
.cp-copy-status:not(:empty){padding:12px 0 4px}
.cp-copy-fallback{margin-top:19px}
.cp-copy-fallback label{display:block;font-size:.875rem;line-height:1.7;margin-bottom:10px}
.cp-copy-fallback textarea{width:100%;max-width:100%;background:#f4f7fc;border:1px solid #b4c5dc;border-radius:5px;padding:14px;color:var(--cp-ink);font-size:.875rem;line-height:1.8;resize:vertical}
.cp-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.cp-section-heading{display:grid;grid-template-columns:1.15fr 1fr;gap:80px;align-items:end;margin-bottom:34px}
.cp-section-heading h2{margin-top:20px}
.cp-section-heading>p{color:var(--cp-muted);max-width:550px}
.cp-table-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:29px 0 19px}
.cp-filters{display:flex;flex-wrap:wrap;gap:8px}
.cp-filters button{padding:11px 14px;border:1px solid #c0cede;border-radius:5px;background:transparent;color:#506985;font-size:.8125rem;font-weight:600;line-height:1.7;transition:background .15s,border-color .15s}
.cp-filters button span{display:inline-block;margin-left:7px;font-size:.75rem}
.cp-filters button:hover{background:#e1eaf6}
.cp-filters button[aria-pressed=true]{border-color:#315b96;background:#315b96;color:#fff}
#cp-filter-status{font-size:.75rem;line-height:1.8;color:#5e7390;white-space:nowrap}
.cp-scroll-hint{display:none;margin-bottom:16px;color:#536d90}
.cp-table-scroll{max-width:100%;overflow-x:auto;border:1px solid #c0cfe1;border-radius:7px;background:#fff;overscroll-behavior-x:contain;scrollbar-color:#91a9ca #edf2f9}
.cp-table-scroll table{width:100%;min-width:1050px;table-layout:fixed;border-collapse:separate;border-spacing:0;text-align:left}
.cp-table-scroll caption{text-align:left;font-size:.8125rem;line-height:1.7;padding:17px 22px;background:#f9fbfe;color:#516988;caption-side:top}
.cp-table-scroll th,.cp-table-scroll td{border-top:1px solid #cad7e8;padding:22px 23px;vertical-align:top}
.cp-table-scroll tr>:first-child{width:175px;position:sticky;left:0;background:#edf2f9;z-index:1;box-shadow:1px 0 0 #cad7e8}
.cp-table-scroll thead th{background:#e0e9f5;font-size:.875rem;font-weight:650;line-height:1.8;color:#2e4f7d}
.cp-table-scroll thead th:first-child{background:#d5e1f0}
.cp-table-scroll thead strong{font-size:1.0625rem;font-weight:650;display:block}
.cp-table-scroll thead span{font-size:.8125rem;line-height:1.8;font-weight:450;color:#4a6488;display:block;margin-top:4px}
.cp-table-scroll tbody th{font-size:.9375rem;font-weight:650;line-height:1.75;color:#2d4d78}
.cp-table-scroll td{font-size:.9375rem;line-height:1.85;color:#536781}
.cp-table-scroll td+td{border-left:1px solid #d9e2ed}
.cp-table-scroll td strong{display:block;font-size:.9375rem;line-height:1.65;font-weight:600;color:#304e77;margin-bottom:9px}
.cp-table-scroll td span{display:block}
.cp-table-scroll tbody tr:hover td{background:#f8fafe}
.cp-comparison .cp-table-note{font-size:.875rem;line-height:1.8;max-width:790px;color:#60728b;margin-top:20px}
.cp-responsibility{display:grid;grid-template-columns:.85fr 1.15fr;gap:115px;background:#101b2d;color:#eff4fc}
.cp-responsibility-intro>.cp-kicker{color:#9dbce6}
.cp-responsibility h2{font-size:3.75rem;line-height:1.16;margin:27px 0}
.cp-responsibility em{color:#9fbee9}
.cp-responsibility-intro>p{color:#bacbe2;max-width:425px}
.cp-text-link{display:inline-flex;align-items:center;gap:25px;font-size:.875rem;font-weight:600;line-height:1.7;margin-top:28px;color:#c1d9fb;text-underline-offset:6px}
.cp-text-link:hover{text-decoration:underline}
.cp-work-ledger article{border-top:1px solid #3b506d;padding:23px 0 27px}
.cp-work-ledger article:last-child{padding-bottom:0}
.cp-work-ledger article>div{display:flex;align-items:center;justify-content:space-between;gap:25px;color:#9bb7db;font-size:.75rem;line-height:1.8}
.cp-ledger-number{font-weight:600}
.cp-ledger-tag{font-size:.6875rem;letter-spacing:.055em}
.cp-work-ledger h3{font-size:1.375rem;line-height:1.5;margin:12px 0}
.cp-work-ledger p{color:#b8c9e0;font-size:.9375rem}
.cp-method{padding-bottom:80px;background:#e9eff7}
.cp-method-heading{max-width:835px}
.cp-method-heading h2{margin:20px 0}
.cp-method-heading>p{max-width:655px;color:var(--cp-muted)}
.cp-method-rows{list-style:none;padding:0;margin:38px 0 0}
.cp-method-rows li{display:grid;grid-template-columns:58px minmax(0,1.5fr) minmax(0,.9fr);gap:45px;padding:31px 0;border-top:1px solid #bccce0}
.cp-method-number{font-size:1.375rem;line-height:1.6;color:#5c7aa5}
.cp-method-rows h3{font-size:1.625rem;color:#2c4f81;margin-bottom:14px}
.cp-method-rows p{color:var(--cp-muted);font-size:.9375rem;max-width:620px}
.cp-method-deliverable{align-self:center;border-left:1px solid #b4c7e0;padding:5px 0 5px 26px}
.cp-method-deliverable span{display:block;font-size:.6875rem;line-height:1.8;letter-spacing:.04em;font-weight:650;color:#526f96;margin-bottom:9px}
.cp-method-deliverable p{font-size:.9375rem;font-weight:550;color:#395b88}
.cp-paths{padding-top:81px}
.cp-specialist-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}
.cp-path{display:flex;flex-direction:column;min-width:0;border-radius:7px;padding:37px 39px;transition:background .18s}
.cp-path-flutter{background:#e0eaf8;color:#264b7d}
.cp-path-react{background:#213957;color:#f3f7fc}
.cp-path h3{font-size:2.125rem;line-height:1.3;font-weight:550;max-width:390px;margin:24px 0 19px}
.cp-path p{font-size:.9375rem;max-width:445px;color:#4b6589;margin-bottom:27px}
.cp-path-react p{color:#bdcfe6}
.cp-path .cp-kicker{color:#4c6b95}
.cp-path-react .cp-kicker{color:#a5c1e7}
.cp-path-action{display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:.875rem;line-height:1.75;font-weight:600;border-top:1px solid #adbfda;padding-top:19px;margin-top:auto}
.cp-path-react .cp-path-action{border-color:#506886}
.cp-path:hover .cp-path-action{text-decoration:underline;text-underline-offset:6px}
.cp-path-flutter:hover{background:#d6e4f6}
.cp-path-react:hover{background:#294566}
.cp-service-page .cp-path-react:focus-visible{outline:3px solid #416daf}
.cp-native-paths{grid-column:1/-1;display:grid;grid-template-columns:.8fr 1fr 1fr;gap:36px;align-items:center;padding:26px 0 14px;border-bottom:1px solid #c3d1e3}
.cp-native-paths>.cp-kicker{color:#597292}
.cp-native-paths>a{display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:1.0625rem;line-height:1.7;font-weight:600;padding:12px 0;color:#345a8d}
.cp-native-paths small{display:block;font-size:.8125rem;font-weight:450;line-height:1.7;color:#5a708d;margin-top:6px}
.cp-native-paths a:hover>span{text-decoration:underline;text-underline-offset:5px}
.cp-sources{margin-top:40px;border-top:1px solid #c3d1e3;border-bottom:1px solid #c3d1e3}
.cp-sources summary{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:20px 0;font-size:.875rem;font-weight:550;line-height:1.8;cursor:pointer;list-style:none;color:#476489}
.cp-sources summary::-webkit-details-marker{display:none}
.cp-sources summary>span{font-size:1.375rem;font-weight:400;transition:transform .18s}
.cp-sources[open] summary>span{transform:rotate(45deg)}
.cp-sources>div{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:5px 0 27px}
.cp-sources p{font-size:.875rem;line-height:1.8;color:#5b718e;max-width:600px}
.cp-sources ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.cp-sources a{display:flex;align-items:center;justify-content:space-between;gap:22px;font-size:.875rem;color:#345a8d;line-height:1.8;text-decoration:underline;text-decoration-color:#b0c2dc;text-underline-offset:4px}
.cp-sources a svg{width:17px;height:17px}
.cp-contact{background:#dfe9f7;padding-top:66px;padding-bottom:37px}
.cp-contact>.cp-kicker{color:#4c6d99}
.cp-contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;margin-top:24px}
.cp-contact h2{font-size:2.75rem;line-height:1.25}
.cp-contact-grid p{color:#506887;max-width:620px}
.cp-contact-link{display:flex;align-items:center;justify-content:space-between;gap:20px;width:fit-content;max-width:100%;padding:17px 23px;margin-top:25px;border-radius:6px;font-size:.9375rem;font-weight:600;line-height:1.7;background:#315b96;color:#fff;transition:background .18s}
.cp-contact-link:hover{background:#416daf}
.cp-contact-details{display:flex;flex-wrap:wrap;gap:15px 29px;margin-top:20px;color:#42638f;font-size:.875rem;line-height:1.8}
.cp-contact-details a:hover{text-decoration:underline;text-underline-offset:5px}
.cp-parent-link{display:flex;align-items:center;gap:17px;border-top:1px solid #b6c9e1;padding-top:26px;margin-top:47px;font-size:.875rem;line-height:1.8;color:#42618a;max-width:100%}
.cp-parent-link:hover{text-decoration:underline;text-underline-offset:5px}
@media(max-width:1199px){
 .cp-opening-heading{gap:40px;grid-template-columns:1.15fr 1fr}.cp-service-page .cp-principle{font-size:2.9rem}
 .cp-workspace.is-enhanced .cp-workspace-body{grid-template-columns:minmax(0,1fr)}
 .cp-brief{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 28px;border-right:0;border-bottom:1px solid #cbd8e9;border-radius:0;padding:25px 27px}
 .cp-brief-intro{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:30px}.cp-brief-intro p{margin:0;max-width:480px}
 .cp-field+.cp-field{margin-top:0}.cp-reset{grid-column:1/-1;margin-top:0;padding:0}
 .cp-responsibility{gap:70px}.cp-section-heading{gap:60px}.cp-native-paths{grid-template-columns:.65fr 1fr 1fr;gap:23px}.cp-native-paths>a{font-size:1rem}
 .cp-table-tools{align-items:start;flex-direction:column;gap:13px}.cp-scroll-hint{display:block;font-size:.8125rem}
}
@media(max-width:1023px){
 .cp-service-page{--gutter:30px;--cp-header-height:94px}.cp-opening{padding-top:123px}.cp-opening-heading{gap:31px;grid-template-columns:1fr 1fr}.cp-service-page .cp-principle{font-size:2.6rem}.cp-service-page .cp-opening h1{font-size:.9375rem}
 .cp-service-page h2{font-size:2.5rem}.cp-section{padding-top:75px;padding-bottom:75px}.cp-workspace-bar h2{font-size:1rem}.cp-evaluation-intro h2{font-size:1.625rem}
 .cp-section-heading{gap:35px}.cp-candidate{padding-right:15px;padding-left:15px}.cp-candidate-heading h3{font-size:1.375rem}.cp-candidate-index{display:none}
 .cp-responsibility{gap:50px;grid-template-columns:.9fr 1.1fr}.cp-responsibility h2{font-size:3rem}.cp-method-rows li{grid-template-columns:39px minmax(0,1.25fr) minmax(0,.85fr);gap:25px}
 .cp-path{padding:30px}.cp-path h3{font-size:1.75rem}.cp-native-paths{grid-template-columns:1fr 1fr}.cp-native-paths>.cp-kicker{grid-column:1/-1}.cp-sources>div{gap:40px}
 .cp-contact-grid{gap:45px;grid-template-columns:1fr 1fr}.cp-contact h2{font-size:2.375rem}.cp-contact-link{font-size:.875rem;padding:16px 18px}
}
@media(max-width:760px){
 .cp-service-page{--gutter:22px;--cp-header-height:82px}.cp-opening{padding-top:110px;padding-bottom:29px}.cp-breadcrumb{font-size:.75rem;gap:6px 9px}
 .cp-opening-heading{grid-template-columns:1fr;gap:28px;margin-top:27px}.cp-service-page .cp-opening h1{font-size:.9375rem;line-height:1.7}.cp-service-page .cp-principle{font-size:2.55rem;line-height:1.2;margin-top:13px}.cp-opening-copy>.cp-kicker{margin-bottom:11px}.cp-opening-copy nav{gap:13px 20px;font-size:.8125rem;margin-top:21px}.cp-opening-copy nav a{gap:12px}
 .cp-workspace-bar{display:block;padding:17px 20px}.cp-workspace-bar h2{font-size:.9375rem;line-height:1.8}.cp-workspace-bar>span{display:block;font-size:.75rem;margin-top:6px}
 .cp-brief{padding:23px 20px;gap:22px}.cp-brief-intro{display:block}.cp-brief-intro p{margin-top:10px}.cp-field label{font-size:.8125rem}.cp-field select{font-size:.875rem;min-height:48px}.cp-reset{font-size:.8125rem}
 .cp-evaluation{padding:24px 20px 19px}.cp-evaluation-intro h2{font-size:1.5rem;line-height:1.4;margin-top:12px}.cp-evaluation-intro p{font-size:.9375rem}
 .cp-candidates{grid-template-columns:1fr;margin-top:22px}.cp-candidate,.cp-candidate:first-child,.cp-candidate:last-child{padding:24px 0}.cp-candidate+.cp-candidate{border-left:0;border-top:1px solid #d0dced}.cp-candidate-heading h3{font-size:1.625rem}.cp-candidate-index{display:block}.cp-candidate-check{padding:18px 0}.cp-candidate-links{display:flex;flex-wrap:wrap;gap:13px 23px}.cp-candidate-links a{gap:14px}.cp-candidate .cp-candidate-status{margin-top:17px}
 .cp-proof{grid-template-columns:1fr;gap:10px;padding-top:23px}.cp-proof p{font-size:.9375rem}.cp-evaluation .cp-stage-note{font-size:.875rem;padding:14px}.cp-result-actions{align-items:start;flex-direction:column;gap:12px}.cp-copy{font-size:.875rem;padding:8px 0;flex-shrink:1}
 .cp-section{padding-top:65px;padding-bottom:65px}.cp-service-page h2{font-size:2.125rem;line-height:1.25}.cp-evaluation-intro h2{font-size:1.5rem;line-height:1.4}.cp-workspace-bar h2{font-size:.9375rem;line-height:1.8}
 .cp-section-heading{grid-template-columns:1fr;gap:22px;margin-bottom:27px}.cp-section-heading h2{margin-top:16px}.cp-section-heading>p{font-size:.9375rem}.cp-filters{gap:8px}.cp-filters button{font-size:.75rem;padding:10px 11px}.cp-table-tools{margin-top:25px}.cp-scroll-hint{font-size:.8125rem;line-height:1.8}
 .cp-table-scroll table{min-width:920px}.cp-table-scroll tr>:first-child{width:143px;padding:19px 14px}.cp-table-scroll th,.cp-table-scroll td{padding:19px 20px}.cp-table-scroll tbody th{font-size:.875rem}.cp-table-scroll caption{font-size:.75rem;padding:15px 16px}.cp-table-scroll thead strong{font-size:1rem}.cp-table-scroll thead span{font-size:.8125rem}.cp-comparison .cp-table-note{font-size:.8125rem}
 .cp-responsibility{grid-template-columns:1fr;gap:37px}.cp-responsibility h2{font-size:2.8rem;line-height:1.17;margin:23px 0}.cp-responsibility-intro p{max-width:560px}.cp-work-ledger h3{font-size:1.375rem}.cp-work-ledger article{padding:22px 0 25px}
 .cp-method-heading h2{margin-top:17px}.cp-method-heading>p{font-size:.9375rem}.cp-method-rows{margin-top:30px}.cp-method-rows li{grid-template-columns:32px minmax(0,1fr);gap:15px 19px;padding:27px 0}.cp-method-number{font-size:1.25rem}.cp-method-rows h3{font-size:1.375rem}.cp-method-deliverable{grid-column:2;padding:3px 0 3px 18px}.cp-method-deliverable p{font-size:.875rem}
 .cp-specialist-paths{grid-template-columns:1fr;gap:17px}.cp-path{padding:29px 25px}.cp-path h3{font-size:1.875rem;margin:21px 0 17px}.cp-path p{font-size:.9375rem}.cp-native-paths{grid-template-columns:1fr;gap:8px;padding-top:18px}.cp-native-paths>a{padding:16px 0;font-size:1rem}.cp-native-paths>a+a{border-top:1px solid #cbd7e7}.cp-native-paths>.cp-kicker{margin-bottom:5px}.cp-sources{margin-top:30px}.cp-sources>div{grid-template-columns:1fr;gap:20px}.cp-sources a{font-size:.8125rem}
 .cp-contact{padding-top:52px;padding-bottom:30px}.cp-contact-grid{grid-template-columns:1fr;gap:24px;margin-top:20px}.cp-contact h2{font-size:2.125rem}.cp-contact-link{margin-top:24px;padding:16px 19px;font-size:.875rem;gap:18px}.cp-parent-link{margin-top:33px;padding-top:24px;font-size:.8125rem;align-items:start;gap:13px}
}
@media(max-width:590px){.cp-brief{grid-template-columns:1fr}.cp-brief-intro,.cp-reset{grid-column:1}.cp-field label{font-size:.875rem}.cp-field select{font-size:1rem;padding:12px 9px}}
@media(max-width:370px){.cp-service-page{--gutter:18px}.cp-service-page .cp-principle{font-size:2.2rem}.cp-workspace-bar,.cp-evaluation,.cp-brief{padding-left:17px;padding-right:17px}.cp-service-page h2{font-size:1.875rem}.cp-workspace-bar h2{font-size:.9375rem}.cp-evaluation-intro h2{font-size:1.375rem}.cp-path h3{font-size:1.625rem}.cp-table-scroll tr>:first-child{width:130px}.cp-contact-link{padding:15px;font-size:.8125rem}.cp-responsibility h2{font-size:2.5rem}}
@media(prefers-reduced-motion:reduce){
 html.cp-service-document{scroll-behavior:auto}
 .cp-service-page :is(.cp-filters button,.cp-path,.cp-contact-link,.cp-sources summary>span){transition-duration:.1s}
}
