/* Dedicated case-study pages: editorial blueprints and inspectable evidence. */
body[data-page="cases"] { background:#f8fbff; }
body[data-page="cases"] .page-shell { background:linear-gradient(180deg,#f5f9ff,#fff 750px); }
body[data-page="cases"] .page-actions { display:none; }
.case-library { color:#24364d; padding:38px 0 54px; --cs-blue:#0968ef; --cs-line:#dce7f4; }
.cs-container { width:calc(100% - 48px); max-width:1232px; margin:auto; }
.case-library [hidden] { display:none!important; }
.case-library :is(a,button,summary):focus-visible { outline:2px solid #086aee; outline-offset:5px; border-radius:4px; }
.cs-eyebrow { color:#146fe5; font:12px/1.6 ui-monospace,monospace; letter-spacing:1px; margin:0 0 14px; }
.cs-eyebrow span { color:#8a9eb6; margin-left:10px; font-size:12px; }
.cs-intro { display:flex; align-items:flex-end; justify-content:space-between; gap:50px; margin-bottom:34px; }
.cs-intro h1 { color:#182d46; font-size:clamp(28px,3vw,38px); line-height:1.4; font-weight:600; letter-spacing:-1px; }
.cs-intro > p { max-width:315px; color:#7a8b9f; font-size:14px; line-height:1.9; padding-bottom:3px; }
.cs-directory { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.cs-directory a { display:flex; align-items:center; gap:16px; min-width:0; padding:12px 17px 12px 12px; border:1px solid var(--cs-line); border-radius:12px; background:#ffffffa8; transition:background .25s,border-color .25s,box-shadow .25s; }
.cs-directory img { width:58px; height:62px; object-fit:cover; object-position:50% 40%; border-radius:7px; }
.cs-directory a > span:nth-child(2) { display:grid; gap:5px; }.cs-directory small { color:#7d96b1; font:12px/1.4 ui-monospace,monospace; }.cs-directory strong { color:#345271; font-size:16px; font-weight:500; }.cs-directory a > span:last-child { color:#7c9bbc; margin-left:auto; font-size:20px; }
.cs-directory a[aria-current="page"] { background:#fff; border-color:#80b6f5; box-shadow:0 8px 26px #1767c40a; }.cs-directory a[aria-current="page"] strong,.cs-directory a:hover strong { color:var(--cs-blue); }.cs-directory a:hover { border-color:#9dc7f3; }
.cs-disclosure { display:flex; align-items:center; gap:10px; color:#8292a6; font-size:12px; line-height:1.8; margin:18px 0 34px; }.cs-disclosure > span { white-space:nowrap; border:1px solid #d2e2f4; border-radius:4px; padding:2px 7px; color:#5d83b3; }
.cs-study { scroll-margin-top:90px; }.cs-study + .cs-study { margin-top:60px; }.case-library.is-enhanced .cs-study { margin-top:0; }
.cs-hero { display:grid; grid-template-columns:1.15fr 1fr; min-height:480px; border:1px solid #d7e5f4; border-radius:20px; overflow:hidden; background:#fff; }
.cs-hero-copy { padding:43px 40px; position:relative; z-index:1; }.cs-hero-copy .cs-eyebrow span { display:block; margin:5px 0 0; font-size:12px; letter-spacing:1.8px; }
.cs-hero h2 { font-size:clamp(28px,3.1vw,39px); line-height:1.5; letter-spacing:-.7px; color:#183854; font-weight:600; margin:18px 0 13px; outline:none; }
.cs-headline { font-size:17px; color:#2674cb; line-height:1.75; margin-bottom:16px; }.cs-lead { font-size:15px; color:#6b8096; line-height:1.95; max-width:480px; }
.cs-tags { display:flex; flex-wrap:wrap; list-style:none; gap:7px; margin-top:21px; padding:0; }.cs-tags li { font-size:12px; color:#6487ad; padding:4px 9px; background:#f1f7ff; border-radius:5px; }
.cs-jump { display:inline-flex; align-items:center; gap:22px; font-size:14px; color:var(--cs-blue); margin-top:28px; }.cs-jump span { font-size:19px; }
.cs-hero-art { position:relative; min-height:350px; overflow:hidden; background:#e9f5ff; }.cs-hero-art > img { width:100%; height:100%; position:absolute; object-fit:cover; object-position:50% 40%; }
.cs-hero-art::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#ffffff7a,transparent 35%),linear-gradient(0deg,#edf7fff5,transparent 45%); pointer-events:none; }
.cs-art-caption { position:absolute; z-index:1; bottom:30px; left:30px; display:grid; gap:8px; }.cs-art-caption span { font:12px/1.5 ui-monospace,monospace; letter-spacing:1.8px; color:#7098bc; }.cs-art-caption strong { color:#2d648f; font-size:23px; font-weight:400; letter-spacing:4px; }.cs-art-number { position:absolute; top:12px; right:22px; z-index:1; font:90px/1.2 ui-monospace,monospace; color:#ffffff8c; letter-spacing:-6px; }
.cs-scope { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-bottom:1px solid var(--cs-line); margin:0; padding:28px 5px; }.cs-scope > div { padding:0 28px; border-right:1px solid var(--cs-line); }.cs-scope > div:first-child { padding-left:0; }.cs-scope > div:last-child { border:0; }.cs-scope dt { color:#8b9caf; font-size:12px; margin-bottom:9px; }.cs-scope dd { color:#47627f; font-size:14px; line-height:1.7; margin:0; }
.cs-chapter { padding:68px 0 0; scroll-margin-top:92px; }.cs-chapter-heading { margin-bottom:28px; }.cs-chapter-heading > span { display:block; color:#2676d4; font:12px/1.5 ui-monospace,monospace; letter-spacing:1.3px; margin-bottom:12px; }.cs-chapter h3 { color:#213e5f; font-size:27px; line-height:1.5; font-weight:600; letter-spacing:-.4px; }.cs-chapter-heading > p { color:#7d8fa3; font-size:15px; line-height:1.9; margin-top:12px; max-width:790px; }
.cs-context { display:grid; grid-template-columns:1fr 1fr; gap:66px; }.cs-context .cs-chapter-heading { margin:0; }.cs-context .cs-chapter-heading p { margin-top:21px; font-size:16px; }.cs-constraints { border-top:1px solid var(--cs-line); }.cs-constraints > div { display:flex; align-items:flex-start; gap:18px; padding:22px 0; border-bottom:1px solid var(--cs-line); }.cs-small-number { color:#7fa6cf; font:12px/1.7 ui-monospace,monospace; }.cs-constraints h4 { font-size:16px; font-weight:600; color:#375472; margin-bottom:7px; }.cs-constraints p { color:#7a8ba0; font-size:14px; line-height:1.85; }
.cs-demo { border:1px solid #cedff3; border-radius:16px; overflow:hidden; background:#f5f9ff; box-shadow:0 18px 45px -30px #225b9660; }
.cs-demo button { font:inherit; cursor:pointer; }
.cs-demo button:disabled { cursor:default; }.cs-demo-body > div > section { min-width:0; }
.cs-interactive-only { display:none!important; }.is-enhanced .cs-interactive-only { display:flex!important; }
.cs-demo-top { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:19px 26px; background:#fff; border-bottom:1px solid #dce8f5; }
.cs-demo-top > div { display:flex; align-items:center; gap:12px; }.cs-demo-top strong { color:#294f78; font-size:15px; font-weight:500; }.cs-demo-top small { color:#8aabc9; font:12px/1.5 ui-monospace,monospace; letter-spacing:1.2px; }.cs-demo-signal { width:7px; height:7px; border-radius:50%; background:#378df5; box-shadow:0 0 0 5px #eef6ff; }.cs-demo-mode { color:#86a1bd; font-size:12px; white-space:nowrap; }
.cs-demo-controls { align-items:center; gap:8px; flex-wrap:wrap; padding:18px 26px; background:#f8fbff; border-bottom:1px solid #e2ecf7; }.cs-demo-controls > span { font-size:12px; color:#7d97b4; margin-right:10px; }.cs-demo-controls button { border:1px solid #d8e5f4; border-radius:6px; padding:8px 13px; color:#6a87a6; background:#fff; font-size:13px; transition:background .2s,color .2s,border-color .2s; }.cs-demo-controls button[aria-pressed="true"] { background:#176df1; border-color:#176df1; color:white; box-shadow:0 3px 9px #1671ed20; }.cs-demo-controls button:hover:not([aria-pressed="true"]) { border-color:#77ace9; color:#1767cb; }.cs-demo-controls small { color:#91aac3; font-size:12px; margin-left:auto; }
.cs-demo-body { padding:27px; }.cs-status { display:inline-flex; align-items:center; gap:6px; font-size:12px; color:#3377bd; white-space:nowrap; }.cs-status i { width:5px; height:5px; border-radius:50%; background:currentColor; }.cs-status--review { color:#a07634; }.cs-label { color:#7e99b8; font-size:12px; padding:3px 8px; border:1px solid #dbe8f6; border-radius:4px; white-space:nowrap; }
.cs-query { display:flex; align-items:center; gap:16px; padding:20px 23px; border:1px solid #dbe7f5; background:linear-gradient(115deg,#fff,#f4f9ff); border-radius:10px; }.cs-query-icon { display:grid; place-items:center; flex-shrink:0; width:35px; height:35px; border-radius:50%; color:#3485e1; background:#eaf4ff; font:17px/1 ui-monospace,monospace; }.cs-query small { display:block; color:#99acc3; font-size:12px; margin-bottom:7px; }.cs-query p { font-size:16px; color:#345779; line-height:1.7; }.cs-query-meta { margin-left:auto; display:grid; gap:5px; color:#8da6c0; font:12px/1.6 ui-monospace,monospace; white-space:nowrap; }
.cs-routing { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; padding:25px 15px; list-style:none; }.cs-routing li { display:flex; align-items:center; gap:10px; position:relative; }.cs-routing li > span { display:grid; place-items:center; width:26px; height:26px; border:1px solid #c5def9; color:#3386df; border-radius:50%; font:12px/1 ui-monospace,monospace; flex-shrink:0; background:#fff; }.cs-routing strong { font-size:12px; font-weight:400; color:#7192b5; }.cs-routing i { position:absolute; right:-16px; color:#92b9e2; font-style:normal; }
.cs-evidence-grid { display:grid; grid-template-columns:1.08fr 1fr; gap:22px; align-items:stretch; }.cs-document { border:1px solid #cddff2; border-radius:10px; overflow:hidden; background:#eaf2fc; transition:box-shadow .25s,border-color .25s; }.cs-document-heading { display:flex; gap:12px; align-items:center; padding:15px 18px; background:#f1f7ff; border-bottom:1px solid #d3e4f8; }.cs-doc-glyph { font-size:30px; color:#5797d7; line-height:1; }.cs-document-heading small { color:#8fa9c5; font:12px/1.5 ui-monospace,monospace; letter-spacing:1px; }.cs-document-heading h4 { color:#4d7399; font-size:13px; font-weight:500; margin-top:5px; }.cs-document-heading > span:last-child { margin-left:auto; color:#91aac2; font-size:12px; white-space:nowrap; }.cs-document-page { margin:21px 28px 0; padding:24px 24px 20px; background:#fff; box-shadow:0 1px 20px #426d9520; border-radius:4px 4px 0 0; min-height:300px; }.cs-document-meta { display:flex; justify-content:space-between; gap:12px; font-size:12px; color:#adc0d3; border-bottom:1px solid #e7eff7; padding-bottom:13px; }.cs-document-lines { margin:20px 0; display:grid; gap:7px; }.cs-document-lines i { height:4px; border-radius:2px; background:#edf2f8; width:95%; }.cs-document-lines i:nth-child(2) { width:76%; }.cs-document-lines i:nth-child(3) { width:60%; }.cs-document blockquote { position:relative; font-size:15px; line-height:2; margin:0 -10px; padding:12px 13px; background:#edf6ff; border-left:2px solid #6caaff; color:#4d79a5; border-radius:0 5px 5px 0; transition:background .25s; }.cs-citation { font:12px/1 ui-monospace,monospace; color:#2385e2; display:block; margin-bottom:9px; }.cs-document-footnote { color:#9eb3c9; font-size:12px; margin-top:20px; }.cs-document.is-inspected { border-color:#4797f3; box-shadow:0 0 0 3px #aed4ff5e; }.cs-document.is-inspected blockquote { background:#dceeff; border-left-color:#1476ed; }
.cs-answer { padding:24px; background:#fff; border:1px solid #d7e6f5; border-radius:10px; display:flex; flex-direction:column; }.cs-answer-header { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-bottom:23px; }.cs-answer-header > span:first-child { font:12px/1.6 ui-monospace,monospace; letter-spacing:.8px; color:#8ba6c4; }.cs-answer h4 { font-size:23px; line-height:1.6; color:#33597f; font-weight:500; margin-bottom:16px; }.cs-answer > p { color:#7890aa; font-size:15px; line-height:2; }.cs-source-button { align-items:center; justify-content:space-between; gap:20px; margin-top:23px; border:1px solid #d5e6f9; border-radius:6px; padding:11px 13px; background:#f7fbff; color:#4689d4; font-size:12px!important; }.cs-source-button:hover,.cs-source-button[aria-pressed="true"] { background:#ecf5ff; border-color:#81b3ed; }.cs-answer-boundary { display:flex; align-items:flex-start; gap:10px; margin-top:auto; padding-top:24px; }.cs-answer-boundary > span { color:#5d97d5; font-size:22px; }.cs-answer-boundary p { color:#96abc0; font-size:12px; line-height:1.8; }
.cs-review-grid { display:grid; grid-template-columns:1fr 1fr; background:#fff; border:1px solid #d8e6f5; border-radius:11px; overflow:hidden; }.cs-transcript { background:linear-gradient(145deg,#f5faff,#fff); padding:29px 27px 24px; border-right:1px solid #e0eaf6; }.cs-pane-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; }.cs-pane-heading > div > span { color:#8da9c5; font:12px/1.5 ui-monospace,monospace; letter-spacing:1px; }.cs-pane-heading h4 { color:#395e83; font-size:18px; font-weight:500; margin-top:10px; }.cs-chat { list-style:none; padding:0; margin:25px 0; display:grid; gap:14px; }.cs-chat li { display:flex; gap:14px; padding:15px; border:1px solid #e3edf8; border-radius:9px; background:#fff; }.cs-chat-index { color:#adc1d9; font:12px/1.8 ui-monospace,monospace; padding-top:1px; }.cs-chat li > div { flex:1; min-width:0; }.cs-chat-role { display:flex; justify-content:space-between; align-items:center; gap:15px; font-size:12px; color:#5b81a9; margin-bottom:10px; }.cs-chat-role span { font-size:12px; color:#a4b6cb; }.cs-chat p { font-size:15px; line-height:1.9; color:#70869e; }.cs-chat .is-flagged { border-color:#96c2f6; background:#f1f7ff; box-shadow:0 7px 20px #2672c909; }.cs-chat .is-flagged .cs-chat-role span { color:#3989e8; }.cs-chat mark { color:#1d6dc6; background:#dcecff; padding:2px 0; border-bottom:1px solid #84b7f4; box-decoration-break:clone; -webkit-box-decoration-break:clone; }.cs-transcript-footer { display:flex; gap:10px; color:#95acc3; font-size:12px; border-top:1px solid #e1ebf5; padding-top:18px; }
.cs-inspector { padding:29px 27px 24px; }.cs-rule-head { margin:27px 0 22px; }.cs-rule-head small { color:#7f9ab8; font:12px/1.7 ui-monospace,monospace; }.cs-rule-head h4 { font-size:25px; font-weight:500; color:#2b5a8a; margin-top:7px; }.cs-inspection { margin:0; display:grid; gap:17px; }.cs-inspection > div { display:grid; grid-template-columns:80px 1fr; gap:18px; }.cs-inspection dt { font-size:12px; color:#8da7c1; padding-top:2px; }.cs-inspection dd { font-size:14px; line-height:1.9; color:#637f9c; }.cs-inspector-reason { padding:15px; border-left:2px solid #93bff2; border-radius:0 5px 5px 0; background:#f4f8fd; font-size:13px; line-height:1.9; color:#7994b0; margin-top:24px; }.cs-review-actions { flex-wrap:wrap; gap:9px; margin-top:22px; }.cs-review-actions button { padding:9px 13px; border-radius:5px; border:1px solid #c7dbf3; background:#fff; color:#5285bc; font-size:12px; }.cs-review-actions button[aria-pressed="true"] { background:#e8f3ff; color:#216fca; border-color:#82b4ed; }.cs-review-actions button:hover { border-color:#78ace7; }.cs-local-note { color:#9bb0c7; font-size:12px; line-height:1.8; margin-top:12px; }
.cs-policy-prompt { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:15px; padding:17px 20px; border:1px solid #d6e5f6; border-radius:9px; background:#fff; }.cs-policy-prompt > div { display:flex; align-items:center; gap:13px; }.cs-policy-prompt p { font-size:15px; color:#42668c; line-height:1.8; }
.cs-channel-map { padding:25px 15px; }.cs-channel-origin { display:flex; justify-content:center; align-items:center; gap:16px; }.cs-channel-origin span { font-size:13px; color:#4582c5; }.cs-channel-origin strong { font:12px/1.6 ui-monospace,monospace; color:#8aa8c8; letter-spacing:1px; }.cs-channel-branches { display:flex; position:relative; justify-content:space-around; margin:14px 0 0; padding-top:18px; }.cs-channel-branches:before { content:''; position:absolute; left:16.66%; right:16.66%; top:0; height:17px; border:1px solid #c6dcf3; border-bottom:0; border-radius:5px 5px 0 0; }.cs-channel-branches:after { content:''; position:absolute; left:50%; top:-9px; width:1px; height:28px; background:#c6dcf3; }.cs-channel-branches > span { z-index:1; position:relative; color:#b1c5db; font:12px/1 ui-monospace,monospace; padding:5px 0 16px; width:33.33%; text-align:center; }.cs-channel-branches i { display:block; margin:8px auto 0; width:5px; height:5px; border-radius:50%; background:#cfdfef; }.cs-channel-branches .is-current { color:#1876e8; }.cs-channel-branches .is-current i { background:#338afb; box-shadow:0 0 0 4px #5da1f41a; }
.cs-policy-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; }.cs-policy-option { position:relative; text-align:left; border:1px solid #d9e6f5; background:#f6faff; padding:16px 20px; border-radius:8px; display:grid; gap:9px; transition:background .25s,border-color .25s; }.cs-policy-option > span { font-size:13px; color:#7191b4; }.cs-policy-option strong { color:#83a0bf; font:12px/1.5 ui-monospace,monospace; font-weight:400; }.cs-policy-option small { color:#9bb0c7; font-size:12px; }.cs-policy-option i { position:absolute; top:15px; right:16px; color:#9fbcdc; font-style:normal; }.cs-policy-option.is-current { background:#fff; border-color:#68a4f1; box-shadow:0 6px 20px #126de711; }.cs-policy-option.is-current > span,.cs-policy-option.is-current i { color:#1879e4; }.cs-policy-option:hover { border-color:#7caee9; }
.cs-policy-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }.cs-policy-source,.cs-reply { padding:25px; background:#fff; border-radius:10px; border:1px solid #d5e6f8; }.cs-policy-source h4 { color:#5a7ea4; font-size:13px; font-weight:400; margin-bottom:13px; }.cs-policy-source blockquote { font-size:18px; font-weight:500; color:#3b6692; line-height:1.9; margin:0 0 21px; min-height:68px; }.cs-policy-source dl { display:flex; gap:30px; border-top:1px solid #e3edf8; padding-top:18px; }.cs-policy-source dt { color:#8ba4be; font-size:12px; margin-bottom:7px; }.cs-policy-source dd { color:#668bae; font:12px/1.8 ui-monospace,monospace; }.cs-policy-source > p { color:#8ba3bd; font-size:12px; line-height:1.8; margin-top:18px; }.cs-reply { background:linear-gradient(145deg,#f0f7ff,#fff 75%); display:flex; flex-direction:column; }.cs-reply h4 { color:#32649d; font-size:22px; font-weight:500; margin-bottom:15px; }.cs-reply > p { color:#6c8bac; font-size:15px; line-height:2; }.cs-reply-source { display:flex; align-items:center; gap:12px; color:#4d8bcf; font:12px/1.7 ui-monospace,monospace; margin-top:auto; padding-top:22px; }.cs-reply-source > span:first-child { font-size:23px; }.cs-reply-source small { display:block; color:#8ba6c2; font-size:12px; margin-top:3px; }
.cs-static-path { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; padding:30px; }.cs-static-path > div { border-left:2px solid #b3d2f4; padding-left:18px; }.cs-static-path span { color:#5b93d1; font:12px/1.5 ui-monospace,monospace; display:block; margin-bottom:12px; }.cs-static-path strong { display:block; font-size:15px; font-weight:500; margin-bottom:10px; }.cs-static-path p { color:#74869c; font-size:14px; line-height:1.9; }
.cs-design-grid { display:grid; grid-template-columns:1.45fr 1fr; gap:36px; align-items:start; }.cs-methods { border-top:1px solid #cddff2; }.cs-method { border-bottom:1px solid #dce6f2; }.cs-method summary { display:flex; align-items:center; gap:18px; cursor:pointer; padding:21px 0; list-style:none; }.cs-method summary::-webkit-details-marker { display:none; }.cs-method summary > span { color:#93adc9; font:12px/1 ui-monospace,monospace; }.cs-method h4 { font-size:17px; font-weight:500; color:#3b5673; }.cs-method summary i { margin-left:auto; font:23px/1 sans-serif; color:#6d9bca; }.cs-method[open] summary h4 { color:#166cd7; }.cs-method[open] summary i { transform:rotate(45deg); }
.cs-method-body { padding:0 0 25px 35px; }.cs-method-body dl > div { display:grid; grid-template-columns:38px 1fr; gap:16px; margin-bottom:14px; }.cs-method-body dt { font-size:12px; color:#7c9ec2; padding-top:2px; }.cs-method-body dd { font-size:14px; line-height:1.9; color:#697f96; }.cs-method-body > p { margin:18px 0 0; padding:12px 16px; background:#f2f7fd; color:#7290b0; font-size:13px; line-height:1.8; border-radius:5px; }.cs-method-body > p strong { display:block; font-weight:500; color:#4b7aad; margin-bottom:4px; }
.cs-decision { padding:35px; border-radius:14px; background:radial-gradient(ellipse at 100% 0,#d6edff,#f1f7ff 65%); border:1px solid #d6e6f6; }.cs-decision-icon { font-size:39px; line-height:1; color:#489dff; display:block; margin:0 0 25px; }.cs-decision h4 { font-size:25px; line-height:1.6; font-weight:500; color:#244c78; margin-bottom:20px; }.cs-decision > p:not(.cs-eyebrow) { font-size:14px; line-height:1.95; color:#7490af; }.cs-decision-rule { display:flex; gap:8px; height:35px; margin:25px 0; align-items:center; }.cs-decision-rule i { height:1px; background:#b6d4f4; flex:1; }.cs-decision-rule i:nth-child(3) { height:7px; border-radius:4px; background:#549cf3; flex:.2; }.cs-mono { font:12px/1.5 ui-monospace,monospace; letter-spacing:1.4px; color:#87a4c4; }
.cs-deliverables { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--cs-line); border-radius:12px; background:#fff; }.cs-deliverables > div { padding:26px 23px; border-right:1px solid var(--cs-line); }.cs-deliverables > div:last-child { border:0; }.cs-file-icon { display:grid; place-items:center; width:35px; height:35px; color:#3b86e0; border:1px solid #c9dff8; border-radius:8px; font:18px/1 ui-monospace,monospace; background:#f5faff; margin-bottom:22px; }.cs-deliverables h4 { color:#335273; font-size:16px; font-weight:500; margin-bottom:10px; }.cs-deliverables p { font-size:14px; color:#8291a5; line-height:1.85; }
.cs-acceptance { margin-top:35px; }.cs-table-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:16px; }.cs-table-heading h4 { font-size:19px; color:#365677; font-weight:500; }.cs-table-heading > span { color:#94a2b4; font-size:12px; }.cs-acceptance table { width:100%; border-collapse:collapse; font-size:14px; line-height:1.8; text-align:left; }.cs-acceptance th,.cs-acceptance td { padding:17px 20px; border-bottom:1px solid #e0e9f3; }.cs-acceptance thead { background:#edf4fc; color:#7194ba; font-size:12px; }.cs-acceptance th { font-weight:500; }.cs-acceptance tbody th { width:18%; color:#3c5c7f; }.cs-acceptance tbody td { color:#7d8ea2; }.cs-acceptance tbody td:last-child { width:26%; color:#587fac; }
.cs-questions { display:grid; grid-template-columns:.9fr 1.4fr; gap:48px; margin-bottom:64px; }.cs-questions details { border-top:1px solid var(--cs-line); }.cs-questions details:last-child { border-bottom:1px solid var(--cs-line); }.cs-questions summary { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:22px 0; font-size:15px; color:#476887; cursor:pointer; list-style:none; }.cs-questions summary::-webkit-details-marker { display:none; }.cs-questions summary span { color:#82a5c9; font-size:20px; }.cs-questions details[open] summary span { transform:rotate(45deg); }.cs-questions details > p { font-size:14px; color:#7c90a7; line-height:1.95; padding:0 28px 23px 0; }
.cs-case-footer { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:36px 40px; background:linear-gradient(115deg,#edf5ff,#f7fbff); border:1px solid #dce8f6; border-radius:14px; }.cs-case-footer h3 { font-size:25px; color:#244c75; font-weight:500; line-height:1.5; }.cs-case-footer p:not(.cs-eyebrow) { color:#7d95ae; font-size:14px; line-height:1.8; margin-top:9px; }.cs-primary { display:inline-flex; align-items:center; gap:23px; padding:14px 21px; background:#0868ee; color:white; font-size:14px; border-radius:7px; white-space:nowrap; }.cs-primary:hover { background:#045aca; }.cs-primary span { font-size:20px; }
.cs-related { display:flex; gap:28px; align-items:center; justify-content:flex-end; padding-top:25px; }.cs-related > span { color:#9aacc0; font-size:12px; }.cs-related a { display:flex; align-items:center; gap:12px; color:#4c83bf; font-size:14px; }.cs-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.case-library :is(.cs-method,.cs-questions details) { box-sizing:border-box; overflow-anchor:none; }
.case-library .cs-accordion-animating { overflow:hidden; will-change:height; }
.cs-method summary h4,.cs-questions summary { transition:color 300ms ease; }
.cs-method summary i,.cs-questions summary > span { display:inline-block; transform-origin:center; transition:transform 420ms cubic-bezier(.22,.61,.36,1),color 300ms ease; }
.case-library details[data-expanded="false"] summary :is(i,span:last-child) { transform:rotate(0deg); }
.cs-method[data-expanded="false"] summary h4 { color:#3b5673; }
.cs-questions details[data-expanded="true"] summary { color:#166cd7; }
@media(max-width:1000px) { .cs-hero-copy { padding:32px; }.cs-hero { grid-template-columns:1.2fr 1fr; }.cs-context { gap:35px; }.cs-design-grid { gap:23px; }.cs-decision { padding:27px; }.cs-deliverables { grid-template-columns:repeat(2,1fr); }.cs-deliverables > div:nth-child(2) { border-right:0; }.cs-deliverables > div:nth-child(-n+2) { border-bottom:1px solid var(--cs-line); }.cs-intro { gap:30px; }.cs-directory a { gap:10px; }.cs-directory img { width:44px; height:53px; }.cs-directory small { font-size:12px; } }
@media(max-width:767px) {
 .case-library { padding-top:25px; }.cs-container { width:calc(100% - 36px); }.cs-intro { display:block; margin-bottom:24px; }.cs-intro h1 { font-size:29px; }.cs-intro > p { margin-top:15px; max-width:none; }.cs-eyebrow span { display:block; margin:5px 0 0; font-size:12px; }
 .cs-directory { gap:8px; }.cs-directory a { display:block; padding:13px 7px; text-align:center; }.cs-directory img,.cs-directory a > span:last-child { display:none; }.cs-directory small { font-size:12px; letter-spacing:-.3px; }.cs-directory strong { font-size:14px; }.cs-directory a > span:nth-child(2) { gap:7px; }.cs-disclosure { align-items:flex-start; font-size:12px; margin:17px 0 24px; }
 .cs-hero { grid-template-columns:1fr; }.cs-hero-copy { padding:28px 23px; }.cs-hero h2 { font-size:29px; }.cs-headline { font-size:16px; }.cs-lead { font-size:15px; }.cs-hero-art { min-height:260px; }.cs-hero-art > img { object-position:50% 43%; }.cs-art-caption { bottom:22px; left:24px; }.cs-art-number { font-size:65px; }.cs-scope { grid-template-columns:1fr; padding:8px 0; }.cs-scope > div { border-right:0; border-bottom:1px solid #e5edf6; padding:14px 0; display:grid; grid-template-columns:80px 1fr; gap:15px; }.cs-scope dt { margin:0; padding-top:2px; }.cs-scope dd { font-size:13px; }
 .cs-chapter { padding-top:46px; }.cs-chapter h3 { font-size:23px; }.cs-chapter-heading > p { font-size:14px; }.cs-context,.cs-design-grid,.cs-questions { grid-template-columns:1fr; gap:24px; }.cs-context .cs-chapter-heading p { font-size:15px; }.cs-constraints > div { padding:19px 0; }.cs-chapter-heading { margin-bottom:23px; }.cs-static-path { grid-template-columns:1fr; gap:22px; padding:24px; }.cs-method h4 { font-size:16px; }.cs-method summary { gap:12px; }.cs-method-body { padding-left:0; }.cs-method-body dl > div { gap:10px; }.cs-decision { padding:27px; }.cs-decision h4 { font-size:23px; }
 .cs-deliverables { grid-template-columns:1fr; }.cs-deliverables > div { padding:22px; border:0; border-bottom:1px solid var(--cs-line); }.cs-file-icon { float:left; margin:0 16px 50px 0; }.cs-deliverables > div:last-child { border:0; }.cs-acceptance table { table-layout:fixed; font-size:12px; }.cs-acceptance th,.cs-acceptance td { padding:13px 8px; overflow-wrap:anywhere; }.cs-acceptance tbody th { width:23%; }.cs-acceptance th:first-child { width:23%; }.cs-acceptance th:last-child { width:26%; }.cs-table-heading { display:block; }.cs-table-heading > span { display:block; margin-top:8px; font-size:12px; }
 .cs-questions { gap:5px; margin-bottom:40px; }.cs-questions summary { font-size:15px; }.cs-case-footer { display:block; padding:26px; }.cs-case-footer h3 { font-size:23px; }.cs-primary { margin-top:24px; }.cs-related { justify-content:space-between; gap:12px; flex-wrap:wrap; }.cs-related > span { width:100%; }.cs-related a { font-size:13px; }
}
@media(max-width:1000px) { .cs-demo-controls small,.cs-demo-top small { display:none; }.cs-demo-body { padding:22px; }.cs-evidence-grid { gap:16px; }.cs-document-page { margin:17px 17px 0; padding:20px 18px; }.cs-query-meta { display:none; }.cs-inspector,.cs-transcript { padding:23px 20px; }.cs-inspection > div { grid-template-columns:72px 1fr; gap:12px; } }
@media(max-width:767px) {
 .cs-demo-top { padding:16px 18px; }.cs-demo-top strong { font-size:14px; }.cs-demo-mode { font-size:12px; }.cs-demo-controls { gap:7px; padding:14px 16px; }.cs-demo-controls > span { width:100%; margin-bottom:3px; }.cs-demo-controls button { flex:1; padding:8px 7px; font-size:12px; }.cs-demo-body { padding:15px; }
 .cs-query { padding:15px; gap:12px; align-items:flex-start; }.cs-query p { font-size:15px; }.cs-query small { font-size:12px; }.cs-query-icon { width:28px; height:28px; font-size:14px; }
 .cs-routing { gap:12px; padding:21px 0; }.cs-routing li { flex-direction:column; gap:8px; text-align:center; }.cs-routing strong { font-size:12px; line-height:1.7; }.cs-routing i { top:5px; right:-10px; }.cs-evidence-grid,.cs-review-grid,.cs-policy-grid { grid-template-columns:1fr; }.cs-document-heading { padding:12px; gap:9px; }.cs-document-heading > span:last-child { font-size:12px; }.cs-document-heading h4 { font-size:12px; }.cs-document-heading small { font-size:12px; }.cs-document-page { margin:18px 20px 0; padding:20px; min-height:260px; }.cs-answer { padding:21px; }.cs-answer h4 { font-size:21px; }
 .cs-transcript { border:0; border-bottom:1px solid #e0eaf6; padding:23px 17px; }.cs-pane-heading { gap:10px; }.cs-pane-heading h4 { font-size:17px; }.cs-pane-heading > div > span { font-size:12px; }.cs-chat li { gap:10px; padding:12px; }.cs-chat p { font-size:15px; }.cs-inspector { padding:24px 18px; }.cs-inspection > div { grid-template-columns:1fr; gap:6px; }.cs-inspection dd { font-size:15px; }
 .cs-policy-prompt { padding:15px; }.cs-policy-prompt > div { align-items:flex-start; gap:10px; }.cs-policy-prompt p { font-size:15px; }.cs-channel-map { padding:23px 0; }.cs-channel-origin { flex-direction:column; gap:5px; }.cs-policy-options { gap:7px; }.cs-policy-option { padding:13px 7px; gap:9px; text-align:center; }.cs-policy-option > span { font-size:12px; }.cs-policy-option strong { font-size:12px; letter-spacing:-.3px; }.cs-policy-option small { font-size:12px; }.cs-policy-option i { display:none; }.cs-policy-source,.cs-reply { padding:21px; }.cs-policy-source dl { flex-wrap:wrap; gap:15px 23px; }.cs-policy-source blockquote { min-height:0; font-size:17px; }.cs-reply h4 { font-size:21px; }
 .cs-acceptance { overflow-x:auto; }.cs-acceptance table { min-width:530px; font-size:14px; }.cs-acceptance th,.cs-acceptance td { padding:14px 12px; }
}
.cs-project-status { margin-top:20px; padding:14px 16px; border-left:2px solid #8dbcf4; background:#f4f9ff; color:#617b95; font-size:14px; line-height:1.85; }
.cs-medical-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:4px 0 22px; }
.cs-medical-heading > div { display:flex; align-items:center; gap:15px; }
.cs-medical-cross { flex-shrink:0; display:grid; place-items:center; width:48px; height:48px; border:1px solid #b6d7ff; border-radius:14px; background:linear-gradient(135deg,#fff,#ddebff); color:#0868ee; font-size:32px; font-weight:300; box-shadow:0 6px 20px #187be514,inset 0 1px 0 #fff; }
.cs-medical-heading h4 { font-size:22px; line-height:1.5; color:#244b72; font-weight:600; }
.cs-medical-heading p { margin-top:7px; color:#6d839b; font-size:14px; line-height:1.8; }
.cs-medical-role { flex-shrink:0; padding:7px 12px; border:1px solid #d5e5f7; background:#ffffff9e; border-radius:6px; font-size:13px; color:#517ca8; }
.cs-medical-flow { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; list-style:none; padding:0; margin:0 0 24px; }
.cs-medical-flow li { display:flex; align-items:center; gap:11px; padding:13px 17px; border:1px solid #dbe7f6; border-radius:8px; color:#7b91a8; background:#ffffff8f; font-size:14px; }
.cs-medical-flow li > span { display:grid; place-items:center; width:25px; height:25px; flex-shrink:0; border-radius:50%; background:#edf4fd; font-size:12px; }
.cs-medical-flow .is-done { color:#326fad; border-color:#b9d7f8; background:#ecf5ff; }
.cs-medical-flow .is-done > span { background:#d6eaff; color:#0066ff; }
.cs-medical-flow .is-current { color:#0968ef; background:#fff; border-color:#74b0fb; box-shadow:0 3px 14px #1766dc0a; }
.cs-medical-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; align-items:stretch; }
.cs-medical-document, .cs-medical-review { min-width:0; border:1px solid #d5e4f6; border-radius:12px; background:#fff; overflow:hidden; }
.cs-medical-document { background:linear-gradient(145deg,#fff,#f6faff); }
.cs-medical-document header { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; padding:19px 24px; color:#325d87; border-bottom:1px solid #dfebf8; font-size:15px; }
.cs-medical-version { color:#7e96af; font-size:12px; }
.cs-medical-document dl { padding:0 24px; }
.cs-medical-document dl > div { position:relative; padding:21px 0 21px 20px; border-bottom:1px solid #e3edf7; }
.cs-medical-document dl > div::before { content:''; position:absolute; top:26px; left:0; width:5px; height:5px; border-radius:50%; background:#64a8fc; box-shadow:0 0 0 4px #edf5ff; }
.cs-medical-document dt { color:#365d84; font-size:14px; font-weight:500; }
.cs-medical-document dd { margin-top:7px; color:#6b8198; font-size:14px; line-height:1.85; }
.cs-medical-source { display:flex; align-items:center; gap:8px; padding:18px 24px; font-size:13px; color:#7b97b5; }
.cs-medical-source > span { color:#5198ed; font-size:22px; }
.cs-medical-review { display:flex; flex-direction:column; padding:25px; }
.cs-medical-review > h4 { color:#2b537c; font-size:22px; font-weight:500; line-height:1.6; margin:15px 0 11px; }
.cs-medical-review > p { color:#6c829a; font-size:14px; line-height:1.85; }
.cs-medical-review dl { margin:20px 0; border-top:1px solid #e4edf8; }
.cs-medical-review dl > div { display:flex; justify-content:space-between; gap:15px; padding:13px 0; border-bottom:1px solid #e4edf8; font-size:14px; line-height:1.6; }
.cs-medical-review dt { color:#7d94ad; }
.cs-medical-review dd { color:#346998; text-align:right; }
.cs-medical-actions { align-items:center; gap:15px; margin-top:auto; padding-top:6px; }
.cs-medical-actions button { min-height:42px; padding:10px 14px; border-radius:6px; font-size:14px; }
.cs-medical-actions button:first-child { display:flex; justify-content:space-between; align-items:center; gap:15px; flex:1; background:#0868ee; color:#fff; border:1px solid #0868ee; transition:background .2s; }
.cs-medical-actions button:first-child:hover { background:#0057d7; }
.cs-medical-actions button[aria-pressed="true"] { color:#176bc1; background:#eef6ff; border-color:#b7d7fb; }
.cs-medical-actions button[aria-pressed="true"]:hover { background:#e1efff; }
.cs-medical-actions button:last-child { border:0; color:#6484a8; background:transparent; padding-inline:0; }
.cs-medical-review .cs-medical-handoff { font-size:13px; color:#748da8; padding-top:17px; }
.cs-medical-note { margin-top:19px; color:#748ba4; font-size:13px; line-height:1.8; }
@media(max-width:767px) {
  .cs-medical-heading { flex-wrap:wrap; gap:12px; }
  .cs-medical-heading > div { align-items:flex-start; gap:12px; }
  .cs-medical-heading h4 { font-size:20px; }
  .cs-medical-cross { width:38px; height:38px; border-radius:11px; font-size:26px; }
  .cs-medical-role { margin-left:50px; }
  .cs-medical-flow { gap:6px; }
  .cs-medical-flow li { flex-direction:column; gap:8px; text-align:center; padding:12px 4px; font-size:13px; }
  .cs-medical-grid { grid-template-columns:1fr; gap:15px; }
  .cs-medical-document header { padding:17px; }
  .cs-medical-document dl { padding:0 17px; }
  .cs-medical-document dl > div { padding-block:17px; }
  .cs-medical-document dl > div::before { top:22px; }
  .cs-medical-source { padding:15px 17px; }
  .cs-medical-review { padding:21px 17px; }
  .cs-medical-review > h4 { font-size:20px; }
  .cs-project-status { padding:12px; }
}
@media(prefers-reduced-motion:reduce) { .case-library * { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }
