@import url('wireframe-annotations.css');
.case-dialog{width:min(1240px,96vw);max-width:1240px}.case-dialog .dialog-inner{padding:70px 64px}.case-document{max-width:1256px;margin:auto;padding:90px 64px 110px}.case-content{max-width:1128px;margin:auto}.case-intro h2{font-family:Manrope,sans-serif;font-size:clamp(42px,5.8vw,72px);line-height:1.08;letter-spacing:-.055em;margin:24px 0}.case-intro .dialog-lede{max-width:760px;font-size:20px;line-height:1.65}.case-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin:38px 0 30px}.case-summary p{font-size:14px;line-height:1.7;color:var(--secondary)}.case-summary b{display:block;color:var(--text);font-size:12px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px}.case-jumpnav{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin:45px 0 0}.case-jumpnav a{font-size:13px;display:flex;gap:8px;align-items:center;padding:8px 4px}.case-jumpnav span{color:var(--accent);font-size:10px}.case-chapter{padding:68px 0;border-bottom:1px solid var(--line);scroll-margin-top:28px}.case-chapter>header{max-width:850px;margin-bottom:32px}.case-chapter h3,.case-reflection h3{font-family:Manrope,sans-serif;font-size:clamp(30px,3.5vw,42px);line-height:1.17;letter-spacing:-.045em;margin:16px 0}.case-chapter>header p{color:var(--secondary);font-size:15px;line-height:1.75}.audit-chart{padding:32px;border-radius:24px;background:var(--surface);border:1px solid var(--line)}.chart-title{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}.chart-title h4{font-size:20px;margin:0}.chart-title>span,.audit-chart>p{font-size:12px;color:var(--muted)}.audit-row{display:grid;grid-template-columns:140px 1fr 48px;gap:24px;align-items:center;margin:17px 0;font-size:14px}.audit-track{height:10px;border-radius:99px;background:var(--line);overflow:hidden}.audit-track i{display:block;height:100%;width:var(--rating);background:var(--accent);border-radius:99px}.audit-row b{font-size:16px;font-weight:500}.audit-row small{color:var(--muted);font-size:11px;margin-left:3px}.audit-chart>p{margin:24px 0 0}.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:28px 0}.insight-grid article{padding:24px 0}.insight-index{font-size:12px;color:var(--accent)}.insight-grid h4{font-size:21px;font-weight:500;letter-spacing:-.035em;margin:16px 0 12px}.insight-grid p{font-size:14px;line-height:1.7;color:var(--secondary)}.insight-grid article>div{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}.insight-grid article>div>span{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent)}.research-facts{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:24px;overflow:hidden;background:var(--surface)}.research-facts>div{padding:30px;border-right:1px solid var(--line)}.research-facts>div:last-child{border:0}.research-facts strong{display:block;font-family:Manrope,sans-serif;font-weight:500;font-size:36px;letter-spacing:-.05em}.research-facts span{display:block;font-size:13px;color:var(--secondary);margin-top:10px}.measurement-plan{padding:28px;background:var(--surface);border-radius:20px}.measurement-plan h4{margin:0 0 9px;font-size:20px;font-weight:500}.measurement-plan>p{font-size:12px;color:var(--muted)}.measurement-plan ul{list-style:none;margin:18px 0 0;padding:0}.measurement-plan li{font-size:13px;display:flex;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding:14px 0}.measurement-plan li span{white-space:nowrap;color:var(--muted);font-size:11px}.source-link{display:inline-block;color:var(--accent);font-size:12px;margin-top:20px}.journey-scroll{overflow:auto;border:1px solid var(--line);border-radius:20px}.journey-table{width:100%;min-width:850px;border-collapse:collapse;font-size:13px;line-height:1.65}.journey-table th,.journey-table td{text-align:left;vertical-align:top;padding:20px 16px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);width:17%}.journey-table th{font-weight:500;background:var(--surface)}.journey-table thead th{color:var(--accent);font-size:15px}.journey-table tbody td{color:var(--secondary)}.journey-table tr:last-child>*{border-bottom:0}.journey-table tr>:last-child{border-right:0}.journey-table tr>:first-child{width:15%;font-size:12px}.source-map{margin-top:24px}.source-map summary{cursor:pointer;color:var(--accent);font-size:13px;padding:16px 0}.artifact-figure{margin:0;min-width:0}.artifact-figure>a{display:block;background:#f5f3ed;border:1px solid var(--line);border-radius:18px;overflow:hidden}.artifact-figure img{width:100%;height:auto;object-fit:contain;display:block}.artifact-figure figcaption{padding:16px 0 0;font-size:12px;line-height:1.65;color:var(--muted)}.artifact-figure figcaption strong{display:block;font-size:13px;font-weight:500;color:var(--text)}.artifact-figure figcaption span{display:block;margin:4px 0}.artifact-figure figcaption a{display:inline-block;color:var(--accent);margin-top:6px}.flow-figure>a{max-height:480px;overflow:auto}.flow-figure img{min-height:200px;max-height:480px;object-fit:contain}.wireframe-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.wireframe-grid .artifact-figure>a{height:360px}.wireframe-grid img{height:100%}.case-comparison .comparison-controls{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:24px}.comparison-controls button{padding:11px 20px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--secondary);cursor:pointer;font-size:13px}.comparison-controls button[aria-pressed=true]{background:var(--text);color:var(--canvas)}.comparison-images{display:grid;grid-template-columns:1fr 1fr;gap:28px}.comparison-images .artifact-figure>a{height:420px}.comparison-images img{height:100%}.case-comparison[data-mode=before] .comparison-images,.case-comparison[data-mode=after] .comparison-images{grid-template-columns:1fr}.case-comparison[data-mode=before] .artifact-figure>a,.case-comparison[data-mode=after] .artifact-figure>a{height:auto;max-height:none}.case-comparison[data-mode=before] img,.case-comparison[data-mode=after] img{max-height:850px}.artifact-provenance{font-size:12px!important;color:var(--muted);line-height:1.7;margin-top:20px}.prototype-app{padding:32px;border:1px solid var(--line);background:var(--surface);border-radius:24px}.prototype-topline{display:flex;justify-content:space-between;gap:24px;padding-bottom:20px;border-bottom:0;font-size:10px;letter-spacing:.1em;color:var(--muted)}.prototype-topline span:last-child{letter-spacing:0}.prototype-app h4{font-family:Manrope,sans-serif;font-size:30px;font-weight:500;letter-spacing:-.035em;margin:28px 0 14px}.prototype-app>p{font-size:14px;color:var(--secondary)}.prototype-app .button{font-size:13px;padding:13px 20px;min-height:44px;cursor:pointer}.prototype-app .button:disabled{opacity:.4;cursor:not-allowed}.prototype-app .text-link{font-size:12px;cursor:pointer;margin:6px 12px 6px 0}.readiness-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0}.readiness-list label{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:18px;border:1px solid var(--line);border-radius:12px;font-size:14px;cursor:pointer}.readiness-list input{width:18px;height:18px;accent-color:var(--accent)}.readiness-list small{flex-basis:100%;padding-left:30px;color:var(--muted);font-size:11px}.prototype-feedback{padding:18px 20px;background:var(--canvas);border:1px solid var(--line);border-radius:12px;font-size:13px;line-height:1.65;color:var(--secondary);margin:24px 0}.prototype-steps{list-style:none;display:flex;padding:0;gap:32px;margin:24px 0;font-size:13px;color:var(--muted)}.prototype-steps [aria-current]{color:var(--accent);font-weight:600}.prototype-screen{height:410px;overflow:auto;border-radius:12px;background:#f1f0e8;border:1px solid var(--line)}.prototype-screen img{width:100%;min-height:100%;object-fit:contain;object-position:top}.prototype-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:24px}.claim-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:24px}.claim-fields label{display:flex;flex-direction:column;gap:10px;color:var(--secondary);font-size:13px}.claim-fields input{background:var(--canvas);color:var(--text);border:1px solid var(--line);border-radius:8px;font:inherit;padding:13px 15px;min-width:0;width:100%}.claim-fields input[aria-invalid=true]{border-color:#be6546;outline:1px solid #be6546}.sample-document{margin-top:28px;padding:24px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;border:1px dashed var(--muted);border-radius:12px;font-size:14px}.sample-document small{flex-basis:100%;color:var(--muted);font-size:11px}.claim-review h5{font-size:20px;font-weight:500;margin:0 0 20px}.claim-review dl{display:grid;grid-template-columns:1fr 1fr;gap:20px}.claim-review dt{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.claim-review dd{font-size:15px;margin:6px 0}.claim-review p{font-size:13px;color:var(--secondary)}.case-reflection{padding:70px 0 30px;max-width:830px}.case-reflection p{font-size:14px;line-height:1.7;color:var(--secondary);margin:22px 0 30px}.case-page .case-intro .dialog-meta{margin:30px 0}.case-content a:focus-visible,.case-content button:focus-visible,.case-content input:focus-visible,.case-content summary:focus-visible,.journey-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
@media(max-width:900px){.case-dialog .dialog-inner,.case-document{padding:68px 28px}.case-summary,.insight-grid{grid-template-columns:1fr;gap:10px}.case-summary p{margin:10px 0}.case-jumpnav{grid-template-columns:repeat(3,1fr)}.insight-grid article{padding:20px 0}.insight-grid article>div{margin-top:14px}.wireframe-grid .artifact-figure>a{height:270px}.comparison-images .artifact-figure>a{height:320px}.prototype-screen{height:320px}.research-facts>div{padding:20px}.research-facts strong{font-size:29px}}
@media(max-width:600px){.case-dialog .dialog-inner,.case-document{padding:60px 20px}.case-dialog{width:100vw;max-height:100dvh;border-radius:0}.case-intro h2{font-size:40px}.case-intro .dialog-lede{font-size:17px}.case-jumpnav{gap:2px}.case-jumpnav a{font-size:11px}.case-chapter{padding:48px 0}.audit-chart,.prototype-app{padding:20px}.chart-title{align-items:start;flex-direction:column;gap:8px}.audit-row{grid-template-columns:105px 1fr 42px;gap:12px;font-size:12px}.measurement-plan{padding:20px}.measurement-plan li{display:block}.measurement-plan li span{display:block;margin-top:6px}.research-facts{grid-template-columns:1fr}.research-facts>div{border:0;border-bottom:1px solid var(--line)}.research-facts strong{font-size:34px}.wireframe-grid,.comparison-images{grid-template-columns:1fr}.wireframe-grid .artifact-figure>a{height:auto}.comparison-images .artifact-figure>a{height:380px}.readiness-list,.claim-fields{grid-template-columns:1fr}.prototype-topline{flex-direction:column;gap:8px}.prototype-steps{gap:14px;font-size:11px}.prototype-screen{height:290px}.claim-review dl{grid-template-columns:1fr}.comparison-controls button{padding:10px 15px;font-size:12px}.prototype-app h4{font-size:27px}}

/* Borderless paper controls inside case-study overlays. */
.case-intro .case-full-link{border-bottom:0;gap:14px}
.comparison-controls button{border:0;background:color-mix(in srgb,var(--text) 7%,var(--surface));box-shadow:0 7px 18px #251e1b0c}
.comparison-controls button:hover{background:color-mix(in srgb,var(--text) 11%,var(--surface))}
.comparison-controls button[aria-pressed=true]{background:var(--text);color:var(--canvas);box-shadow:0 9px 22px #251e1b18}
/* Product screens retain their original proportions inside scrollable device displays. */
.artifact-visual{display:flex;align-items:center;justify-content:center;padding:28px 8px;background:var(--surface);border:1px solid var(--line);border-radius:18px;min-height:360px;overflow:hidden}
.device-artifact .device{width:100%;max-width:950px;flex-shrink:0}
.device-artifact-ipad .device{max-width:280px}
.device-artifact .device-screen,.prototype-device .device-screen,.prototype-app>.device .device-screen{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#a5a5a5 #eee}
.artifact-figure .device-screen>img,.wireframe-grid .device-screen>img,.comparison-images .device-screen>img{width:100%;height:auto;max-height:none;object-fit:initial;display:block}
.artifact-figure .device-hardware{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:fill;pointer-events:none}
.comparison-images .artifact-visual{min-height:420px}
.artifact-figure figcaption .wireframe-figma-link{display:block;margin-left:0}
.device-caption{font-size:11px;color:var(--muted)}
.prototype-app>.device{width:100%;max-width:960px;margin:0 auto}
.prototype-app>.device .prototype-screen{height:auto;overflow:visible;border:0;border-radius:0}
.prototype-app>.device .prototype-screen img{display:block;width:100%;height:auto;min-height:0;object-fit:initial}
.prototype-device{padding:24px 0;max-width:1050px;margin:auto}
.prototype-device>.device{width:100%}
.prototype-device:has(.device-ipad-landscape){max-width:920px}
.prototype-device .prototype-app{border-radius:0;border:0;min-height:100%;padding-top:38px}
.device-screen:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}
@media(max-width:900px){.artifact-visual{min-height:270px;padding:20px 6px}.comparison-images .artifact-visual{min-height:320px}.device-artifact-ipad .device{max-width:210px}}
@media(max-width:600px){.artifact-visual{min-height:0;padding:24px 6px}.comparison-images .artifact-visual{min-height:260px}.device-artifact-ipad .device{max-width:260px}.prototype-device{padding:8px 0}.prototype-device .prototype-app{padding:26px 16px}.prototype-device .prototype-topline{font-size:9px}.prototype-device .prototype-app h4{font-size:24px}.wireframe-figma-link{margin-left:0;display:block!important}}

/* The new search styling follows the portfolio appearance control. */
.styled-search{display:block;width:100%}
.artifact-figure .styled-search img{display:block;width:100%;height:auto;max-height:none;object-fit:initial}
.search-theme-dark,.artifact-figure .search-theme-dark{display:none!important}
[data-theme="dark"] .search-theme-light{display:none!important}
[data-theme="dark"] .styled-search .search-theme-dark{display:block!important}
[data-theme="dark"] figcaption .search-theme-dark{display:inline-block!important}
.wireframe-original-link{display:block!important;width:fit-content}
.live-catalog{position:absolute;left:0;top:0;border:0;transform-origin:0 0;width:1232px;height:772px;max-width:none;background:#d9dbe3}

/* Cards remain distinct through surface tone, spacing and soft elevation. */
.audit-chart,
.research-facts,
.journey-scroll,
.artifact-figure>a,
.artifact-visual,
.prototype-app,
.readiness-list label,
.prototype-feedback{border:0;box-shadow:0 16px 42px #251e1b0d}
.research-facts>div:last-child{border:0}
.readiness-list label,.prototype-feedback{background:var(--canvas)}
.device-screen:has(.live-catalog){overflow:hidden!important;background:#d9dbe3}
[data-theme="dark"] .device-screen:has(.live-catalog){background:#c6c9d1}
.catalog-live-prototype>.device-macbook{width:min(100%,920px);margin:24px auto}
.device-screen:has(.styled-search){background:#e1e2e8}
[data-theme="dark"] .device-screen:has(.styled-search){background:#0c1525;scrollbar-color:#526782 #0c1525}

.catalog-live-prototype>[data-live-study-link]{display:inline-flex;min-height:44px;align-items:center;color:var(--accent);font-size:14px;margin-top:12px}

/* Live component comparisons remain readable at their actual container width. */
.enterprise-component-stage{border-radius:20px;overflow:hidden;background:#fcfcf9;box-shadow:0 16px 42px #0000000d}
.live-enterprise-components{display:block;width:100%;height:1080px;border:0;background:#fcfcf9}
#enterprise-comparison .comparison-images{align-items:start}
#enterprise-comparison .artifact-figure figcaption{padding-bottom:20px}
#enterprise-comparison .artifact-figure figcaption strong{font-size:16px}
#enterprise-comparison .artifact-figure figcaption span{font-size:14px;line-height:1.65}
#enterprise-comparison .case-comparison:not([data-mode=both]) .comparison-images{grid-template-columns:1fr}
@media(max-width:900px){#enterprise-comparison .comparison-images{grid-template-columns:1fr}}
