/* Local pilot proposal. Palette and type follow Product; diagrams keep their meaning at each width. */
:root {
  --accent: #72000e;
  --preview-panel: #f1eeea;
  --preview-line: #e2ddd7;
  --preview-muted: #6b6663;
  --preview-connector: #b9a89a;
  --preview-document: #fffefb;
  --preview-fold: #e5dfd5;
  --preview-alert: #72000e;
  --preview-alert-soft: #faf5f1;
  --preview-alert-line: #a51422;
  --preview-warning: #89631c;
  --preview-warning-soft: #fff6dd;
  --preview-warning-line: #d7b867;
  --preview-warning-header: #eed99b;
  --preview-clear: #42664d;
  --preview-clear-soft: #e5eee4;
  --preview-highlight: #f6e9a9;
  --preview-quote-line: #d8bd64;
}
.preview-symbols { position: absolute; width: 0; height: 0; overflow: hidden; }
.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; }
.pilots-content { width: min(1100px, calc(100% - 80px)); margin-inline: auto; padding-top: 132px; }
.pilots-content *, .pilots-content *::before, .pilots-content *::after { min-width: 0; }
.pilots-hero { max-width: none; padding-bottom: 52px; }
.pilots-hero h1 { margin-bottom: 24px; font-size: clamp(40px, 5vw, 60px); line-height: 1.1; letter-spacing: -.045em; text-wrap: balance; }
.pilots-hero h1 span { color: var(--accent); }
.pilots-hero .pilots-lead { max-width: 780px; margin-bottom: 22px; font-size: clamp(20px, 2.1vw, 24px); line-height: 1.5; text-wrap: pretty; }
.pilots-hero .pilot-status { margin-bottom: 0; font-size: 18px; line-height: 1.65; }
.pilot-hero-actions { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: start; gap: 32px; }
.pilot-hero-actions .pilot-status { padding-top: 11px; }
.pilots-hero .pilot-hero-contact { align-items: center; }
.pilots-hero .pilots-button { margin-top: 0; }
.pilots-section { padding: 46px 0; border-color: var(--preview-line); }
.pilots-section h2 { margin-bottom: 24px; font-size: clamp(30px, 3.5vw, 40px); line-height: 1.2; letter-spacing: -.035em; text-wrap: balance; }
.section-heading h2 { margin-bottom: 8px; }
.section-intro { max-width: 810px; font-size: 16px; line-height: 1.75; text-wrap: pretty; }

/* Benefit rows. */
.benefits-section { padding-bottom: 12px; }
.benefit-row { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 56px; align-items: center; padding: 34px 0; }
.benefit-row + .benefit-row { border-top: 1px solid var(--preview-line); }
.benefit-copy h3 { max-width: 370px; margin-bottom: 16px; font-size: 24px; line-height: 1.3; letter-spacing: -.03em; text-wrap: balance; }
.benefit-copy p { max-width: 390px; margin: 0; font-size: 16px; line-height: 1.75; text-wrap: pretty; }
.benefit-copy p + p { margin-top: 22px; }
.benefit-visual { margin: 0; padding: 26px; border: 1px solid var(--preview-line); border-radius: 10px; background: var(--preview-panel); }
.benefit-visual svg, .scope-visual svg, .assessment-policy svg, .result-example svg { fill: none; stroke: currentColor; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.app-icon { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; flex: 0 0 44px; border-radius: 9px; background: #fff; }
.app-icon img { display: block; width: 100%; height: 100%; object-fit: contain; border-radius: inherit; }
.practice-icon { width: 19px; height: 19px; flex: 0 0 19px; color: #938274; }
.signal-alert { position: absolute; top: 7px; right: 8px; color: var(--preview-alert); font: 600 18px/1 var(--font-body); }
.source-tag { justify-self: end; align-self: start; padding: 3px 7px; border: 1px solid var(--preview-line); border-radius: 3px; background: #f4f1ed; color: #78695f; font: 500 10px/1.35 var(--font-body); white-space: nowrap; }

/* Paper and quoted text. */
.policy-sheet { width: min(100%, 410px); margin: 0 auto; padding: 22px 25px; border: 1px solid #ddd7cf; background: var(--preview-document); }
.folded-document { position: relative; min-height: 190px; border-radius: 2px; clip-path: polygon(0 0, calc(100% - 28px) 0, 100% 28px, 100% 100%, 0 100%); }
.folded-document::after { content: ""; position: absolute; top: 0; right: 0; width: 28px; height: 28px; background: linear-gradient(45deg, var(--preview-fold) 50%, transparent 50%); }
.document-heading { display: flex; align-items: flex-start; gap: 9px; margin-bottom: 16px; padding-right: 9px; color: var(--ink); font-size: 13px; font-weight: 500; line-height: 1.5; }
.document-heading svg { width: 18px; height: 20px; flex: 0 0 18px; color: #97867a; }
.policy-quote { margin: 0; padding-left: 11px; border-left: 3px solid var(--preview-quote-line); color: inherit; font-size: 14px; line-height: 1.75; }
.pilots-content mark { padding: 2px 1px; color: #55472e; background: var(--preview-highlight); box-decoration-break: clone; -webkit-box-decoration-break: clone; }
.residency-visual .policy-quote { font-size: 15px; }

/* A policy and three application outcomes. */
.inventory-connectors { display: block; width: 100%; height: 34px; color: var(--preview-connector); }
.inventory-connectors path { vector-effect: non-scaling-stroke; stroke-width: 1; }
.example-apps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.example-app { display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center; }
.app-identity { display: flex; flex-direction: column; align-items: center; gap: 9px; }
.app-identity strong { display: flex; align-items: center; justify-content: center; min-height: 38px; color: var(--ink); font-size: 13px; font-weight: 500; line-height: 1.5; text-wrap: balance; }
.app-result { display: flex; flex: 1; align-items: center; justify-content: center; gap: 6px; width: 100%; min-height: 48px; padding: 7px 9px; border: 1px solid transparent; border-radius: 5px; font-size: 12px; font-weight: 500; line-height: 1.4; }
.result-symbol { display: inline-flex; align-items: center; justify-content: center; width: 17px; height: 17px; flex: 0 0 17px; border: 1px solid currentColor; border-radius: 50%; font: 500 11px/1 var(--font-body); }
.result-alert { color: var(--preview-alert); }
.result-warning { color: var(--preview-warning); }
.result-clear { color: var(--preview-clear); }
.app-result.result-alert { background: var(--preview-alert-soft); border-color: #e3cfd3; }
.app-result.result-warning { background: #f5ecd7; border-color: #e2d3ae; }
.app-result.result-clear { background: var(--preview-clear-soft); border-color: #ccdcca; }
.status-tag { display: inline-block; flex: 0 0 auto; padding: 6px 10px; border-radius: 4px; font-size: 12px; font-weight: 500; line-height: 1.4; }
.status-tag.result-warning { background: #f5ecd7; }
.status-tag.result-alert { background: var(--preview-alert-soft); }

/* The same workflow is rearranged, with the same edges, on phones. */
.privacy-map-app { display: flex; align-items: center; justify-content: center; gap: 12px; margin-bottom: 26px; }
.privacy-map-app strong { font-size: 14px; font-weight: 500; }
.warning-workflow { position: relative; height: 264px; }
.workflow-connections, .workflow-connections-mobile { position: absolute; inset: 0; width: 100%; height: 100%; color: var(--preview-connector); }
.workflow-connections-mobile { display: none; }
.workflow-connections path, .workflow-connections-mobile path { vector-effect: non-scaling-stroke; stroke-width: 1.2; }
.workflow-node { position: absolute; top: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; width: 26.6667%; height: 112px; padding: 9px 7px; border: 1px solid #ddd5cd; border-radius: 6px; background: #fff; color: #62564f; text-align: center; }
.workflow-kind { color: #827366; font-size: 10px; line-height: 1.45; }
.workflow-node strong { color: inherit; font-size: 12px; font-weight: 500; line-height: 1.5; }
.workflow-node .practice-icon { width: 18px; height: 18px; flex: 0 0 18px; }
.workflow-audio { left: 0; }
.workflow-prompts { left: 0; top: 152px; }
.workflow-ai { left: 36.6667%; }
.workflow-providers { left: 36.6667%; top: 152px; }
.workflow-london { left: 73.3333%; }
.workflow-region { left: 73.3333%; top: 152px; }
.workflow-node.workflow-attention { border-color: var(--preview-warning-line); background: var(--preview-warning-soft); color: var(--preview-warning); }
.workflow-attention .workflow-kind, .workflow-attention .practice-icon { color: #98772e; }
.workflow-node.workflow-match { border-color: var(--preview-alert-line); background: var(--preview-alert-soft); color: var(--preview-alert); }
.workflow-match .workflow-kind, .workflow-match .practice-icon { color: var(--preview-alert); }
.workflow-connections .matched-connection, .workflow-connections-mobile .matched-connection { color: var(--preview-alert); }
.workflow-node.workflow-match { border-width: 1.5px; }
.provider-icons { display: flex; justify-content: center; gap: 8px; }
.provider-icons img, .provider-list img { width: 24px; height: 24px; object-fit: contain; border-radius: 4px; }
.workflow-providers { gap: 5px; }
.possible-connection { stroke: var(--preview-warning); stroke-dasharray: 4 4; }
.benefit-visual .possible-label { fill: var(--preview-warning); stroke: none; font: 12px var(--font-body); }

/* Three evidence columns, paired vertically on desktop and horizontally on phones. */
.evidence-app { display: flex; align-items: center; flex-direction: column; justify-content: center; gap: 9px; width: calc((100% - 36px) / 3); margin: 0 auto; padding: 14px 8px; border: 1px solid #ded7cf; border-radius: 6px; background: #fff; text-align: center; }
.evidence-app strong { font-size: 13px; font-weight: 500; line-height: 1.5; }
.source-connectors { display: block; width: 100%; height: 36px; color: var(--preview-connector); }
.source-connectors path { vector-effect: non-scaling-stroke; stroke-width: 1; }
.evidence-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: 88px 26px auto; gap: 0 18px; }
.evidence-signal { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; padding: 9px 8px; border: 1px solid #dfd8d1; border-radius: 5px; background: #fff; color: #6c5b50; text-align: center; font-size: 12px; line-height: 1.5; }
.evidence-signal-next::before { content: ""; position: absolute; left: -19px; top: 50%; width: 18px; border-top: 1px solid var(--preview-connector); }
.evidence-signal-next::after { content: ""; position: absolute; left: -7px; top: calc(50% - 3px); width: 6px; height: 6px; border-top: 1px solid var(--preview-connector); border-right: 1px solid var(--preview-connector); transform: rotate(45deg); }
.evidence-link { display: block; align-self: center; width: 100%; height: 26px; color: var(--preview-connector); }
.evidence-link path { vector-effect: non-scaling-stroke; stroke-width: 1; }
.source-card { display: grid; align-content: start; gap: 14px; padding: 12px 13px 17px; border: 1px solid #dfd8d1; border-radius: 3px; background: var(--preview-document); }
.evidence-grid .policy-quote { padding-left: 9px; font-size: 12px; line-height: 1.75; overflow-wrap: break-word; }
.paper-evidence { position: relative; clip-path: polygon(0 0, calc(100% - 20px) 0, 100% 20px, 100% 100%, 0 100%); }
.paper-evidence::after { content: ""; position: absolute; top: 0; right: 0; width: 20px; height: 20px; background: linear-gradient(45deg, var(--preview-fold) 50%, transparent 50%); }
.paper-evidence .source-tag { margin-right: 7px; }
.evidence-grid .source-excerpt { margin: 0; padding: 0 0 0 9px; border-left: 3px solid var(--preview-quote-line); list-style: none; }
.evidence-grid .provider-list li { margin: 0; padding: 0; color: #675b53; font-size: 12px; line-height: 1.9; }
.evidence-grid .code-evidence { display: block; padding: 0; overflow: hidden; border-color: #d6dcd7; background: #f5f6f4; }
.code-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 5px; padding: 10px 8px; border-bottom: 1px solid #dde1dc; background: #ecefeb; }
.editor-dots { display: flex; gap: 3px; }
.editor-dots i { width: 4px; height: 4px; border-radius: 50%; background: #b8c1b8; }
.code-toolbar .source-tag { padding: 2px 5px; border-color: #d5ddd5; background: #f5f7f3; }
.code-calls { display: grid; align-content: start; gap: 13px; padding: 14px 8px; color: #66584d; }
.code-calls code { display: grid; grid-template-columns: 7px minmax(0, 1fr); gap: 5px; overflow-wrap: anywhere; font: 400 11px/1.8 var(--font-mono); }
.line-number { color: #a6aea5; }
.code-object { color: #487487; }
.code-method { color: #8c5572; }

/* Pilot steps and equal-sized policy documents. */
.pilots-content .pilot-timeline { margin: 32px 0 0; padding: 0; list-style: none; }
.pilots-content .pilot-timeline > li { position: relative; margin: 0; padding: 0 0 40px 40px; }
.pilot-timeline > li:not(:last-child)::before { content: ""; position: absolute; left: 8px; top: 18px; bottom: -5px; border-left: 1px solid #d8c6bf; }
.pilot-timeline > li:last-child { padding-bottom: 0; }
.timeline-dot { position: absolute; left: 0; top: 6px; width: 17px; height: 17px; border: 1px solid #bd9696; border-radius: 50%; background: var(--paper); }
.timeline-dot::after { content: ""; position: absolute; inset: 4px; border-radius: 50%; background: var(--accent); }
.pilot-timeline h3 { margin-bottom: 14px; font-size: 23px; line-height: 1.35; text-wrap: balance; }
.pilot-timeline p { max-width: 940px; margin-bottom: 14px; font-size: 15px; line-height: 1.75; text-wrap: pretty; }
.pilot-timeline p:last-child { margin-bottom: 0; }
.scope-visual { display: grid; grid-template-columns: minmax(0, 1fr) 194px; gap: 28px; margin: 26px 0 0; padding: 25px; border: 1px solid var(--preview-line); border-radius: 8px; background: var(--preview-panel); }
.scope-papers { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 1fr; gap: 18px; align-items: stretch; }
.scope-papers .policy-sheet { display: flex; flex-direction: column; width: 100%; height: 100%; min-height: 240px; margin: 0; padding: 21px; }
.scope-papers .document-heading { align-items: flex-start; min-height: 40px; margin-bottom: 13px; font-size: 13px; line-height: 1.5; }
.scope-papers .policy-quote { font-size: 14px; line-height: 1.75; }
.scope-applications { padding-left: 24px; border-left: 1px solid #ded7cf; }
.scope-label { display: block; margin-bottom: 16px; color: #716357; font-size: 13px; font-weight: 500; line-height: 1.5; }
.scope-app-grid { display: grid; grid-template-columns: repeat(3, 44px); justify-content: start; gap: 16px 14px; }
.inventory-more { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; color: #8a7b70; }
.inventory-more svg { width: 24px; height: 24px; }
.inventory-more circle { fill: currentColor; stroke: none; }

/* An example requirement and three comparable assessment cards. */
.assessment-policy.folded-document { width: 100%; min-height: 0; margin-top: 25px; padding: 21px 24px; border: 1px solid #ddd7cf; background: var(--preview-document); }
.assessment-policy .document-heading { margin-bottom: 12px; }
.assessment-policy p { max-width: none; margin: 0; font-size: 14px; line-height: 1.75; }
.assessment-results { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 20px; }
.assessment-result { display: flex; align-items: stretch; flex-direction: column; overflow: hidden; border: 1px solid #ded7cf; border-radius: 6px; background: var(--preview-document); }
.assessment-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 58px; padding: 13px 16px; }
.assessment-status { flex: 0 0 auto; color: inherit; font: 600 18px/1.3 var(--font-display); letter-spacing: .01em; }
.assessment-header .assessment-caption { flex: 0 0 auto; margin: 0; color: inherit; font: 400 11px/1.4 var(--font-body); letter-spacing: 0; white-space: nowrap; text-align: right; }
.example-alert { --example-colour: var(--preview-alert); }
.example-warning { --example-colour: var(--preview-warning); }
.example-clear { --example-colour: var(--preview-clear); }
.example-alert .assessment-header { color: #fff; background: var(--preview-alert); }
.example-warning .assessment-header { color: #705018; background: var(--preview-warning-header); }
.example-clear .assessment-header { color: var(--preview-clear); background: #dceadc; }
.assessment-content { display: flex; flex: 1; flex-direction: column; padding: 20px 16px; }
.result-example { width: 100%; }
.example-app-id { display: flex; align-items: center; gap: 10px; margin-bottom: 18px; color: #66594f; }
.example-app-id strong { font-size: 13px; font-weight: 500; }
.data-path { display: grid; grid-template-columns: minmax(0, 1fr) 44px minmax(0, 1fr); align-items: center; }
.signal-node { display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 8px; min-height: 102px; padding: 12px 6px; border: 1px solid #e0d9d2; border-radius: 5px; background: #fff; color: #675b53; text-align: center; font-size: 12px; line-height: 1.5; }
.signal-node > svg { width: 22px; height: 22px; color: #8d7d70; }
.signal-link { margin-inline: 3px; color: var(--example-colour); }
.signal-link > svg { display: block; width: 100%; height: 24px; }
.unknown-link text { fill: currentColor; stroke: none; font: 500 13px var(--font-body); }
.disabled-link { color: #aeb6aa; }
.muted-training { border-color: #dfe2db; background: #f0f1ee; color: #8e9788; }
.muted-training > svg { color: #9ba694; }
.example-alert .data-path .signal-node:last-child { border-color: var(--preview-alert); border-width: 1.5px; }
.example-warning .data-path .signal-node:last-child { border-color: #c6a13b; border-width: 1.5px; }

/* Terms and the final call to action. */
.term-row { display: grid; grid-template-columns: 190px minmax(0, 1fr); gap: 36px; padding: 23px 0; }
.term-row + .term-row { border-top: 1px solid var(--preview-line); }
.term-row:first-child { padding-top: 4px; }
.term-row:last-child { padding-bottom: 0; }
.term-row h3 { margin: 0; font-size: 21px; line-height: 1.5; }
.term-row p { max-width: 790px; margin-bottom: 13px; font-size: 15px; line-height: 1.75; text-wrap: pretty; }
.term-row p:last-child { margin-bottom: 0; }
.pilots-contact { display: flex; align-items: center; justify-content: space-between; gap: 56px; padding-bottom: 60px; }
.pilots-contact h2 { margin-bottom: 15px; }
.pilots-contact p { max-width: 650px; margin: 0; font-size: 15px; line-height: 1.75; text-wrap: pretty; }
.contact-actions { display: flex; align-items: center; flex: 0 0 auto; flex-direction: column; gap: 13px; }
.contact-email { color: #75665f; font-size: 13px; }

/* Tablets: give drawings a full readable row. */
@media (max-width: 1100px) {
  .pilots-content { width: calc(100% - 64px); padding-top: 120px; }
  .benefit-row { grid-template-columns: minmax(0, 1fr); gap: 25px; padding: 34px 0; }
  .benefit-copy h3 { max-width: 680px; margin-bottom: 13px; }
  .benefit-copy p { max-width: 760px; }
  .benefit-visual { width: 100%; }
  .scope-visual { grid-template-columns: minmax(0, 1fr); gap: 25px; }
  .scope-applications { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 22px 0 0; border: 0; border-top: 1px solid #ded7cf; }
  .scope-label { margin: 0; }
  .scope-app-grid { grid-template-columns: repeat(6, 44px); gap: 14px; }
  .term-row { grid-template-columns: 155px minmax(0, 1fr); gap: 30px; }
}
@media (max-width: 900px) {
  .assessment-results { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .assessment-content { padding: 20px; }
  .assessment-content .result-example { display: grid; grid-template-columns: minmax(130px, .6fr) minmax(0, 1.4fr); align-items: center; gap: 25px; }
  .example-app-id { margin: 0; }
  .signal-node { min-height: 102px; }
  .pilots-contact { flex-direction: column; align-items: flex-start; gap: 27px; }
  .contact-actions { align-items: flex-start; }
}
@media (max-width: 700px) {
  .pilot-hero-actions { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .pilot-hero-actions .pilot-status { padding-top: 0; }
  .pilot-hero-contact { justify-self: start; }
  .pilots-content { width: calc(100% - 40px); padding-top: 108px; }
  .pilots-section { padding: 35px 0; }
  .benefit-visual { padding: 20px; }
  .pilot-timeline h3 { font-size: 21px; }
  .pilots-content .pilot-timeline > li { padding-left: 30px; }
  .scope-visual { padding: 20px; }
  .scope-applications { align-items: flex-start; }
  .scope-app-grid { grid-template-columns: repeat(3, 44px); }
  .scope-papers .policy-sheet { padding: 19px; }
  .term-row { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .term-row h3 { font-size: 20px; }
}
@media (min-width: 541px) and (max-width: 640px) {
  .scope-papers { grid-template-columns: minmax(0, 1fr); }
}

/* Phones: preserve relationships, with larger readable cells instead of squeezed columns. */
@media (max-width: 540px) {
  .pilots-content { width: calc(100% - 36px); padding-top: 104px; }
  .pilots-hero { padding-bottom: 36px; }
  .pilots-hero h1 { margin-bottom: 20px; }
  .pilots-hero .pilots-lead { font-size: 20px; margin-bottom: 18px; }
  .pilots-hero .pilot-status { font-size: 16px; }
  .pilots-section h2 { font-size: 31px; margin-bottom: 21px; }
  .benefit-row { padding: 29px 0; gap: 21px; }
  .benefit-copy h3 { font-size: 23px; }
  .benefit-copy p { font-size: 15px; line-height: 1.75; }
  .benefit-visual { padding: 16px; border-radius: 8px; }
  .policy-sheet { padding: 21px; }
  .folded-document { min-height: 0; }
  .document-heading { padding-right: 12px; }
  .residency-visual .policy-quote { font-size: 14px; }
  .residency-visual .inventory-connectors { display: none; }
  .example-apps { position: relative; grid-template-columns: minmax(0, 1fr); gap: 10px; margin-top: 22px; }
  .example-app { display: grid; grid-template-columns: 44px minmax(0, 1fr) 108px; align-items: center; gap: 9px; padding: 10px; border: 1px solid #e0d8cf; border-radius: 5px; background: #fff; text-align: left; }
  .app-identity { display: contents; }
  .app-identity strong { min-height: 0; justify-content: flex-start; text-wrap: pretty; }
  .app-result { flex: 0 0 auto; min-height: 44px; padding: 6px; font-size: 11px; }
  .privacy-map-app { flex-wrap: wrap; gap: 9px; margin-bottom: 25px; }
  .privacy-map-app strong { font-size: 13px; }
  .warning-workflow { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(4, 104px); grid-template-areas: "audio audio" "ai ai" "providers london" "region ."; gap: 30px 24px; height: 506px; }
  .workflow-connections { display: none; }
  .workflow-connections-mobile { display: block; }
  .workflow-node { position: relative; inset: auto; width: 100%; height: 104px; padding: 8px; }
  .workflow-audio { grid-area: audio; justify-self: center; width: calc((100% - 24px) / 2); }
  .workflow-ai { grid-area: ai; justify-self: center; width: calc((100% - 24px) / 2); }
  .workflow-providers { grid-area: providers; }
  .workflow-london { grid-area: london; }
  .workflow-region { grid-area: region; }
  .evidence-story .source-connectors { display: none; }
  .evidence-app { width: 100%; flex-direction: row; gap: 8px; padding: 13px 9px; }
  .evidence-app strong { font-size: 12px; }
  .evidence-app .status-tag { padding: 5px 8px; font-size: 11px; }
  .evidence-grid { grid-template-columns: minmax(0, .8fr) 22px minmax(0, 1.2fr); grid-template-rows: repeat(3, minmax(176px, auto)); gap: 28px 0; margin-top: 24px; }
  .evidence-audio { grid-column: 1; grid-row: 1; }
  .evidence-ai { grid-column: 1; grid-row: 2; }
  .evidence-providers { grid-column: 1; grid-row: 3; }
  .link-audio { grid-column: 2; grid-row: 1; }
  .link-ai { grid-column: 2; grid-row: 2; }
  .link-providers { grid-column: 2; grid-row: 3; }
  .source-audio { grid-column: 3; grid-row: 1; }
  .source-ai { grid-column: 3; grid-row: 2; }
  .source-providers { grid-column: 3; grid-row: 3; }
  .evidence-signal { align-self: center; height: 84px; padding: 10px 6px; font-size: 12px; }
  .evidence-link { width: 22px; height: 26px; transform: rotate(-90deg); }
  .evidence-signal-next::before { left: 50%; top: -120px; width: 0; height: 119px; border-top: 0; border-left: 1px solid var(--preview-connector); }
  .evidence-signal-next::after { left: calc(50% - 3px); top: -7px; border-top: 0; border-bottom: 1px solid var(--preview-connector); transform: rotate(45deg); }
  .source-card { min-height: 176px; padding: 11px 10px 15px; }
  .evidence-grid .policy-quote { font-size: 12px; }
  .paper-evidence .source-tag { margin-right: 3px; }
  .source-tag { font-size: 9px; padding: 3px 5px; }
  .code-calls { padding: 13px 7px; }
  .code-calls code { font-size: 10.5px; }
  .pilots-content .pilot-timeline { margin-top: 27px; }
  .pilots-content .pilot-timeline > li { padding-left: 25px; padding-bottom: 32px; }
  .timeline-dot { left: 0; top: 5px; width: 15px; height: 15px; }
  .timeline-dot::after { inset: 4px; }
  .pilot-timeline > li:not(:last-child)::before { left: 7px; }
  .pilot-timeline h3 { font-size: 20px; }
  .pilot-timeline p { font-size: 14px; line-height: 1.8; }
  .scope-visual { padding: 16px; gap: 23px; }
  .scope-papers { grid-template-columns: minmax(0, 1fr); gap: 17px; }
  .scope-papers .policy-sheet { padding: 20px; min-height: 240px; }
  .scope-papers .document-heading { min-height: 40px; }
  .scope-applications { flex-direction: column; align-items: center; gap: 18px; }
  .scope-label { text-align: center; }
  .scope-app-grid { justify-content: center; gap: 16px 20px; }
  .assessment-policy.folded-document { padding: 19px 20px; }
  .assessment-policy .document-heading { font-size: 12px; }
  .assessment-policy p { font-size: 13px; }
  .assessment-header { min-height: 58px; padding: 13px 14px; }
  .assessment-status { font-size: 18px; }
  .assessment-header .assessment-caption { font-size: 11px; }
  .assessment-content { padding: 20px 16px; }
  .assessment-content .result-example { display: block; }
  .example-app-id { margin-bottom: 18px; }
  .data-path { max-width: 420px; margin-inline: auto; }
  .signal-node { font-size: 12px; min-height: 102px; }
  .pilots-contact { gap: 25px; padding-bottom: 40px; }
  .contact-actions { width: 100%; align-items: center; }
  .pilots-button { width: 100%; justify-content: space-between; }
  .site-footer .footer-wrap { width: calc(100% - 36px); }
  .site-footer .footer-main { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 20px; }
  .site-footer .footer-brand { grid-column: 1 / -1; }
}
@media (max-width: 360px) {
  .pilots-content { width: calc(100% - 28px); }
  .pilots-hero h1 { font-size: 38px; }
  .benefit-visual { padding: 13px; }
  .example-app { grid-template-columns: 44px minmax(0, 1fr) 108px; padding: 8px; gap: 7px; }
  .app-identity strong { font-size: 12px; }
  .scope-visual { padding: 13px; }
  .scope-papers .policy-sheet { padding: 18px; }
  .assessment-header { padding-inline: 12px; gap: 8px; }
  .assessment-status { font-size: 17px; }
  .assessment-header .assessment-caption { font-size: 10.5px; }
}

/* Business application story: comparison, explanation, then supporting sources. */
.business-inventory .policy-sheet { width: 100%; }
.business-evidence-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.business-evidence-column { display: grid; grid-template-rows: 98px 26px 1fr; }
.business-evidence .source-card { min-height: 210px; }
.business-evidence .policy-quote { padding-left: 9px; font-size: 12px; line-height: 1.75; overflow-wrap: break-word; }
.business-evidence .source-excerpt { margin: 0; padding: 0 0 0 9px; border-left: 3px solid var(--preview-quote-line); list-style: none; }
.business-evidence .provider-list li { margin: 0; padding: 0; color: #675b53; font-size: 13px; line-height: 1.9; }
.evidence-needs-review { color: var(--preview-warning); border-color: var(--preview-warning-line); background: var(--preview-warning-soft); }
.evidence-needs-review .practice-icon { color: var(--preview-warning); }
.evidence-match { border-color: var(--preview-alert-line); background: var(--preview-alert-soft); color: var(--preview-alert); }
.evidence-match .practice-icon { color: var(--preview-alert); }
.fireflies-evidence .privacy-map-app { margin-bottom: 24px; }
.signal-evidence-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.signal-evidence-card { display: grid; grid-template-rows: 52px 1fr; overflow: hidden; border: 1px solid #dfd8d1; border-radius: 6px; background: var(--preview-document); }
.signal-evidence-card .evidence-signal { flex-direction: row; gap: 9px; border: 0; border-bottom: 1px solid #dfd8d1; border-radius: 0; padding-inline: 20px; font-size: 13px; }
.signal-evidence-card .evidence-match { border-bottom-color: var(--preview-alert-line); }
.signal-evidence-card .evidence-match { background: var(--preview-alert); color: #fff; }
.signal-evidence-card .evidence-match .practice-icon, .signal-evidence-card .evidence-match .signal-alert { color: #fff; }
.audio-evidence-card, .region-evidence-card { grid-column: 1 / -1; }
.audio-evidence-bodies { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.audio-evidence-bodies > :last-child { border-left: 1px solid var(--preview-line) !important; }
.business-evidence .provider-list li { display: flex; align-items: center; gap: 9px; margin-bottom: 9px; }
.fireflies-evidence .signal-evidence-card.region-evidence-card .source-card { min-height: 96px; }
.fireflies-evidence .signal-evidence-card .source-card { min-height: 132px; border: 0; border-radius: 0; }
.business-evidence .code-evidence { display: block; padding: 0; overflow: hidden; border-color: #d6dcd7; background: #f5f6f4; }
.scope-app-grid .app-icon img { padding: 4px; }
@media (max-width: 540px) {
  .business-evidence-grid { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .business-evidence-column { grid-template-columns: minmax(0, .85fr) 22px minmax(0, 1.15fr); grid-template-rows: auto; align-items: stretch; }
  .business-evidence .evidence-signal { align-self: center; height: auto; min-height: 100px; }
  .business-evidence .evidence-signal-next::before, .business-evidence .evidence-signal-next::after { display: none; }
  .business-evidence .source-card { min-height: 180px; }
  .business-evidence .privacy-map-app { margin-bottom: 22px; }
  .business-evidence .source-connectors { display: none; }
  .alert-workflow { grid-template-rows: repeat(3, 104px); grid-template-areas: "audio prompts" "ai ai" "providers london"; height: 410px; }
  .alert-workflow .workflow-audio { width: 100%; }
  .alert-workflow .workflow-prompts { grid-area: prompts; inset: auto; }
  .signal-evidence-cards { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .signal-evidence-card { grid-template-rows: 68px 1fr; }
  .fireflies-evidence .signal-evidence-card .evidence-signal { height: 68px; min-height: 68px; align-self: stretch; }
  .fireflies-evidence .signal-evidence-card .source-card { min-height: 150px; padding: 14px; }
  .fireflies-evidence .signal-evidence-card .code-evidence { padding: 0; }
  .fireflies-evidence .source-tag { font-size: 10px; }
  .audio-evidence-bodies { grid-template-columns: minmax(0, 1fr); }
  .audio-evidence-bodies > :last-child { border-left: 0 !important; border-top: 1px solid var(--preview-line) !important; }

}

/* Flat presentation: one visual surface, with structure supplied by spacing and rules. */
.benefit-row[aria-labelledby="new-software-title"], .benefit-row[aria-labelledby="evidence-title"] { align-items: start; }
.benefit-visual.business-inventory, .benefit-visual.alert-map, .benefit-visual.fireflies-evidence {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.alert-map .privacy-map-app, .fireflies-evidence .privacy-map-app {
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 24px;
  padding-bottom: 0;
  border-bottom: 0;
}
.review-app { display: inline-flex; align-items: center; gap: 10px; }
.alert-map .privacy-map-app .status-tag, .fireflies-evidence .privacy-map-app .status-tag {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 0;
  background: transparent;
  color: var(--preview-alert);
  font: 500 12px/1.4 var(--font-body);
  letter-spacing: 0;
  text-transform: none;
}
.alert-map .status-tag::before, .fireflies-evidence .status-tag::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.business-inventory .app-result { flex: 0 0 auto; width: auto; min-width: 112px; min-height: 32px; padding: 7px 10px; border: 0; border-radius: 4px; font: 600 11px/1.4 var(--font-display); letter-spacing: .035em; text-transform: uppercase; white-space: nowrap; }
.business-inventory .app-result.result-alert { color: #fff; background: var(--preview-alert); }
.business-inventory .app-result.result-warning { color: #705018; background: var(--preview-warning-header); }
.business-inventory .app-result.result-clear { color: var(--preview-clear); background: #dceadc; }
.alert-map .workflow-node { border-radius: 5px; background: #fffefb; }
.alert-map .workflow-node.workflow-match { border-width: 1px; border-color: #b7868b; background: #fffefb; }
.alert-map .workflow-prompts { opacity: .5; }
.alert-map .context-connection { opacity: .35; }
.alert-map .workflow-kind { color: var(--preview-muted); }
.evidence-register { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.evidence-entry { padding: 17px 14px; border: 1px solid var(--preview-line); border-radius: 6px; background: #fffefb; }
.evidence-entry:first-child { grid-column: 1 / -1; padding: 18px; }
.fireflies-evidence .evidence-entry h4 { display: flex; align-items: center; gap: 7px; min-height: 38px; margin: 0 0 13px; color: var(--ink); font: 500 13px/1.45 var(--font-body); }
.fireflies-evidence .evidence-entry:first-child h4 { min-height: 0; font-size: 14px; }
.evidence-entry h4 .practice-icon { color: var(--preview-alert); }
.evidence-source-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px; }
.evidence-source { min-width: 0; }
.evidence-source-label { display: block; margin: 0 0 9px; color: #82766d; font: 500 11px/1.4 var(--font-body); }
.fireflies-evidence .evidence-source .policy-quote { padding-left: 10px; font-size: 12px; line-height: 1.7; }
.evidence-code-calls { display: grid; gap: 8px; padding: 0 0 0 12px; border-left: 3px solid #b7bdb7; }
.evidence-code-calls code { font: 400 11.5px/1.9 var(--font-mono); overflow-wrap: anywhere; }
.fireflies-evidence .evidence-provider-list { display: flex; flex-wrap: wrap; gap: 12px 18px; margin: 0; padding: 0; list-style: none; }
.fireflies-evidence .evidence-provider-list li { display: flex; align-items: center; gap: 9px; margin: 0; padding: 0; color: var(--ink); font-size: 13px; line-height: 1.5; }
.evidence-provider-list img { width: 24px; height: 24px; object-fit: contain; border-radius: 4px; }
@media (min-width: 541px) {
  .business-inventory .example-app { gap: 7px; }
  .business-inventory .app-identity { gap: 10px; }
  .business-inventory .app-identity strong { min-height: 0; }
  .business-inventory .app-result { gap: 6px; min-width: 0; min-height: 0; padding: 0; border-radius: 0; font: 500 12px/1.4 var(--font-body); letter-spacing: 0; text-transform: none; background: transparent; }
  .business-inventory .app-result::before { content: ""; width: 6px; height: 6px; flex: 0 0 6px; border-radius: 50%; background: currentColor; }
  .business-inventory .app-result.result-alert { color: var(--preview-alert); background: transparent; }
  .business-inventory .app-result.result-warning { color: var(--preview-warning); background: transparent; }
  .business-inventory .app-result.result-clear { color: var(--preview-clear); background: transparent; }
}
@media (min-width: 541px) and (max-width: 680px) {
  .evidence-register { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .evidence-entry:last-child { grid-column: 1 / -1; }
}
@media (max-width: 540px) {
  .alert-map .privacy-map-app, .fireflies-evidence .privacy-map-app { margin-bottom: 22px; padding-bottom: 0; }
  .business-inventory .app-result { width: 100%; min-width: 0; padding-inline: 7px; }
  .evidence-source-pair { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .evidence-register { grid-template-columns: minmax(0, 1fr); }
  .fireflies-evidence .evidence-entry h4 { min-height: 0; font-size: 14px; }
  .evidence-entry, .evidence-entry:first-child { padding: 18px; }
  .fireflies-evidence .evidence-source .policy-quote { font-size: 13px; }
}

/* Pilot steps share the same unboxed layout and quiet status language. */
.scope-visual { grid-template-columns: minmax(0, 1fr) 194px; padding: 0; border: 0; border-radius: 0; background: transparent; align-items: center; }
.scope-papers .policy-sheet { min-height: 0; padding: 22px; }
.scope-papers .document-heading { min-height: 20px; }
.scope-applications { display: block; padding: 0; border: 0; }
.scope-label { margin-bottom: 16px; color: var(--ink); }
.scope-app-grid { grid-template-columns: repeat(3, 44px); }
.assessment-policy.folded-document { margin-top: 24px; padding: 22px; }
.assessment-policy .policy-quote { padding-left: 11px; }
.assessment-results { gap: 30px; margin-top: 26px; }
.assessment-result { overflow: visible; border: 0; border-radius: 0; background: transparent; }
.assessment-result .assessment-content { padding: 0; }
.assessment-content .result-example { display: block; }
.assessment-app-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 44px; margin-bottom: 20px; }
.assessment-app-header .example-app-id { gap: 9px; margin: 0; }
.assessment-app-details { display: grid; gap: 3px; }
.assessment-app-details strong { color: var(--ink); font-size: 13px; line-height: 1.4; }
.assessment-app-details .assessment-caption { color: var(--preview-muted); font: 400 11px/1.4 var(--font-body); }
.assessment-app-header .assessment-status { display: inline-flex; align-items: center; gap: 6px; color: var(--example-colour); font: 500 12px/1.4 var(--font-body); letter-spacing: 0; }
.assessment-app-header .assessment-status::before { content: ""; width: 6px; height: 6px; flex: 0 0 6px; border-radius: 50%; background: currentColor; }
.assessment-results .signal-node { min-height: 112px; border-width: 1px; background: #fffefb; }
.assessment-results .example-alert .data-path .signal-node { border-width: 1px; border-color: #b7868b; color: var(--preview-alert); }
.assessment-results .example-alert .signal-node > svg { color: var(--preview-alert); }
.assessment-results .example-warning .signal-node:last-child { border-width: 1px; border-color: var(--preview-warning-line); color: var(--preview-warning); }
.assessment-results .example-warning .signal-node:last-child > svg { color: var(--preview-warning); }
.assessment-results .muted-training, .assessment-results .disabled-link { opacity: .5; }
.assessment-results .muted-training { color: #675b53; border-color: #e0d9d2; }
.assessment-results .muted-training > svg { color: #8d7d70; }
@media (max-width: 1100px) {
  .scope-applications { padding: 0; border: 0; }
}
@media (max-width: 900px) {
  .scope-visual { grid-template-columns: minmax(0, 1fr); }
  .scope-applications { display: flex; align-items: center; justify-content: flex-start; gap: 28px; }
  .scope-label { margin: 0; }
  .scope-app-grid { grid-template-columns: repeat(6, 44px); }
  .assessment-results { gap: 26px; }
  .assessment-app-header { margin-bottom: 16px; }
  .assessment-result + .assessment-result { padding-top: 24px; border-top: 1px solid var(--preview-line); }
  .assessment-results .data-path { max-width: none; }
}
@media (max-width: 700px) {
  .scope-app-grid { grid-template-columns: repeat(3, 44px); }
}
@media (max-width: 540px) {
  .scope-papers .policy-sheet { min-height: 0; padding: 20px; }
  .scope-papers .document-heading { min-height: 20px; }
  .scope-applications { align-items: flex-start; gap: 16px; }
  .scope-label { text-align: left; }
  .scope-app-grid { justify-content: start; }
  .assessment-policy.folded-document { padding: 20px; }
  .assessment-app-header { gap: 10px; }
  .assessment-app-header .assessment-status { font-size: 11px; }
}

/* A single retention story: two inputs, three distinct assessment outcomes. */
.retention-scope { grid-template-columns: minmax(0, 1.55fr) 40px minmax(230px, .85fr); gap: 30px; margin-block: 30px 8px; }
.document-stack { position: relative; isolation: isolate; padding-top: 94px; min-width: 0; }
.stack-sheet { padding: 20px 24px; border: 1px solid #dcd6cf; background: #fffefb; }
.stack-sheet .document-heading { margin: 0; font-size: 13px; line-height: 1.5; }
.stack-back, .stack-middle { position: absolute; bottom: 0; min-height: 0; }
.stack-back { top: 0; left: 32px; right: 32px; background: #eeeae4; }
.stack-middle { top: 47px; left: 16px; right: 16px; background: #f7f4ef; }
.stack-front { position: relative; min-height: 0; padding: 24px; }
.stack-front .document-heading { margin-bottom: 20px; color: var(--ink); }
.stack-front .policy-quote { margin: 0; padding-left: 14px; font-size: 16px; line-height: 1.8; }
.scope-plus { color: #9b8c80; font: 400 32px/1 var(--font-body); text-align: center; }
.retention-scope .scope-applications { display: flex; flex-direction: column; align-items: center; justify-content: center; justify-self: center; width: max-content; max-width: 100%; gap: 16px; padding: 18px; border: 1px solid #ded7cf; border-radius: 7px; background: transparent; }
.retention-scope .scope-label { margin: 0; font-size: 15px; text-align: center; }
.retention-scope .scope-app-grid { grid-template-columns: repeat(4, 44px); gap: 12px; justify-content: center; }
.retention-results { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-top: 26px; }
.retention-result { min-width: 0; --outcome: var(--preview-alert); --outcome-line: #b7868b; --outcome-bg: #72000e; --outcome-ink: #fff; }
.retention-warning { --outcome: #89631c; --outcome-line: #d7b867; --outcome-bg: #eed99b; --outcome-ink: #664a17; }
.retention-compliant { --outcome: #746f69; --outcome-line: #c9c4bd; --outcome-bg: #dceadc; --outcome-ink: #365540; }
.outcome-heading { margin-bottom: 20px; display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 65px; padding: 16px 18px; border-radius: 5px; color: var(--outcome-ink); background: var(--outcome-bg); }
.outcome-heading > strong { color: inherit; font: 600 23px/1.2 var(--font-display); }
.outcome-heading > span { max-width: 100px; font-size: 12px; line-height: 1.5; text-align: right; }
.retention-app { display: flex; align-items: center; gap: 11px; margin: 0 0 16px; }
.retention-app > strong { color: var(--ink); font-size: 14px; font-weight: 500; }
.retention-path { display: grid; grid-template-columns: minmax(0, 1fr) 32px minmax(0, 1.08fr); align-items: center; }
.retention-node { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; min-width: 0; min-height: 132px; padding: 12px 8px; border: 1px solid #ddd7cf; border-radius: 5px; background: #fffefb; text-align: center; }
.retention-node svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.retention-node > strong { color: var(--ink); font-size: 13px; line-height: 1.5; font-weight: 500; }
.retention-node > span { color: #746b62; font-size: 11px; line-height: 1.5; }
.duration-node { border-color: var(--outcome-line); }
.duration-node > span { color: var(--outcome); }
.duration-node > strong { color: var(--outcome); font: 600 20px/1.4 var(--font-display); }
.retention-arrow { width: 100%; height: 16px; fill: none; stroke: var(--outcome); stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.retention-alert .retention-node { border-color: var(--outcome-line); color: var(--outcome); }
.retention-alert .retention-node > strong { color: var(--outcome); }
.retention-warning .data-node { border-color: #b7868b; color: var(--preview-alert); }
.retention-warning .data-node > strong { color: var(--preview-alert); }
.retention-warning .retention-arrow { stroke: var(--preview-alert); }
.retention-compliant .retention-node { border-color: var(--outcome-line); color: var(--outcome); }
.retention-compliant .retention-node > strong { color: var(--outcome); }
.business-inventory .app-result { width: 108px; max-width: 100%; min-height: 30px; padding: 6px 10px; border-radius: 4px; font: 500 12px/1.4 var(--font-body); letter-spacing: 0; text-transform: none; }
.business-inventory .app-result.result-alert { color: #fff; background: var(--preview-alert); }
.business-inventory .app-result.result-warning { color: #664a17; background: #eed99b; }
.business-inventory .app-result.result-clear { color: #365540; background: #dceadc; }
.business-inventory .app-result::before { display: none; }
@media (min-width: 901px) and (max-width: 1100px) {
  .retention-scope .scope-app-grid { grid-template-columns: repeat(3, 44px); }
  .retention-results { gap: 18px; }
  .outcome-heading { flex-direction: column; align-items: flex-start; gap: 4px; }
  .outcome-heading > span { max-width: none; text-align: left; }
}
@media (max-width: 900px) {
  .retention-scope { grid-template-columns: minmax(0, 1fr) 28px 214px; gap: 18px; }
  .stack-sheet { padding: 17px 18px; }
  .stack-back { left: 20px; right: 20px; }
  .stack-middle { left: 10px; right: 10px; }
  .stack-front .policy-quote { font-size: 14px; }
  .retention-scope .scope-applications { padding: 18px; }
  .retention-scope .scope-app-grid { grid-template-columns: repeat(3, 44px); gap: 12px; }
  .retention-results { grid-template-columns: minmax(0, 1fr); gap: 30px; }
  .retention-result { width: 100%; max-width: 600px; margin-inline: auto; }
  .outcome-heading { margin-bottom: 18px; }
}
@media (max-width: 680px) {
  .retention-scope { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .document-stack { padding-top: 102px; }
  .stack-back { left: 18px; right: 18px; }
  .stack-middle { top: 51px; left: 9px; right: 9px; }
  .stack-sheet .document-heading { font-size: 12px; }
  .stack-front { padding: 22px; }
  .stack-front .policy-quote { font-size: 15px; }
  .retention-scope .scope-applications { min-height: 0; padding: 18px; }
  .retention-scope .scope-app-grid { grid-template-columns: repeat(6, 44px); gap: 12px; }
  .scope-plus { font-size: 28px; }
}
@media (max-width: 540px) {
  .retention-result { display: block; }
  .outcome-heading { min-height: 65px; margin-bottom: 16px; }
  .outcome-heading > strong { font-size: 22px; }
  .retention-app { margin-bottom: 18px; }
  .retention-path { grid-template-columns: minmax(0, 1fr) 32px minmax(0, 1fr); }
  .retention-node { width: 100%; min-height: 0; aspect-ratio: 1; box-sizing: border-box; }
  .retention-scope .scope-app-grid { grid-template-columns: repeat(3, 44px); gap: 12px; }
  .retention-scope .inventory-desktop-extra { display: none; }
  .retention-scope .scope-app-grid .app-icon, .retention-scope .inventory-more, .retention-scope .scope-app-grid img { width: 44px; height: 44px; }
}
@media (max-width: 380px) {
  .retention-scope .scope-app-grid { grid-template-columns: repeat(3, 44px); }
  .document-stack { padding-top: 120px; }
  .stack-middle { top: 60px; }
}
