/* Case studies extend the production theme; no external dependencies. */
.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-main{padding-top:0}
.review-note{padding:12px 20px;border-bottom:1px solid var(--line-strong);background:var(--background-soft);color:var(--muted-bright);font-size:.8rem;text-align:center}
.breadcrumbs,.case-next{display:flex;flex-wrap:wrap;gap:12px;align-items:center;font-size:.88rem;color:var(--muted-bright)}
.breadcrumbs{padding-top:36px}.breadcrumbs a,.case-next a{text-underline-offset:5px}
.case-hero{max-width:970px;padding:58px 0 70px}
.case-hero h1{font-size:clamp(2.5rem,6vw,5.6rem);line-height:1.03;letter-spacing:-.055em;margin:0 0 30px;text-wrap:balance}
.case-deck{font-size:clamp(1.15rem,2vw,1.45rem);max-width:770px;line-height:1.6;color:var(--muted-bright)}
.case-context{max-width:740px;font-size:.92rem;color:var(--muted);line-height:1.7;margin:25px 0 32px;border-left:2px solid var(--accent);padding-left:20px}
.case-jump{display:flex;flex-wrap:wrap;gap:14px 30px;padding:24px 0;border-block:1px solid var(--line-strong)}
.case-jump a{font-size:.88rem;text-underline-offset:6px;color:var(--accent-bright)}
.case-body{max-width:900px;margin-inline:auto}.case-section{padding:65px 0;border-bottom:1px solid var(--line)}
.case-section h2,.case-contact h2{font-size:clamp(1.8rem,3.5vw,2.7rem);letter-spacing:-.04em;line-height:1.15;margin:0 0 26px}
.case-section p,.case-contact p{font-size:1.05rem;line-height:1.8;color:var(--muted-bright);max-width:78ch}
.workflow{list-style:none;padding:0;margin:34px 0 0}.workflow li{display:grid;grid-template-columns:50px 1fr;gap:24px;padding:30px 0;border-top:1px solid var(--line)}
.step-number{font-family:ui-monospace,monospace;color:var(--accent);font-size:1rem;padding-top:5px}.workflow h3,.technical-note h3{font-size:1.2rem;line-height:1.4;margin:0 0 12px}.workflow p{margin-bottom:0}
.capture-pending,.technical-note{padding:28px;border:1px solid var(--line-strong);background:var(--background-soft);margin-top:28px}.capture-pending p:last-child,.technical-note p:last-child{margin-bottom:0}.capture-pending .eyebrow{font-size:.7rem;color:var(--accent)}
.case-contact{padding:60px;margin:75px 0 35px;background:var(--surface-solid);border:1px solid var(--line-strong)}
.case-contact .eyebrow{font-size:.74rem;color:var(--accent)}.case-contact p{max-width:660px}.case-contact .button{margin-top:15px}.case-next{justify-content:space-between;padding:22px 0 65px}
.case-card-link{display:flex;justify-content:space-between;gap:16px;margin-top:28px;padding-top:20px;border-top:1px solid var(--line-strong);color:var(--accent-bright);font-weight:650;font-size:.95rem;text-underline-offset:5px}
@media(max-width:720px){.case-hero{padding:40px 0 45px}.case-section{padding:44px 0}.case-jump{gap:18px}.case-jump a{min-height:28px}.case-contact{padding:28px 22px;margin-top:46px}.workflow li{grid-template-columns:28px 1fr;gap:14px}.capture-pending,.technical-note{padding:22px}.case-next a{padding:10px 0}.case-deck{font-size:1.12rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.evidence{grid-column:1/-1;margin:24px 0 0;min-width:0;border:1px solid var(--line-strong);background:var(--background-soft)}
.evidence>a{display:block;overflow:hidden}.evidence img{display:block;width:100%;height:auto}
.evidence figcaption{padding:18px 22px;font-size:.86rem;line-height:1.7;color:var(--muted-bright)}
.evidence figcaption a{display:inline-block;margin-left:6px;color:var(--accent-bright);text-underline-offset:4px}
.case-section .evidence-note{font-size:.86rem;border-left:2px solid var(--accent);padding-left:18px;color:var(--muted)}
@media(max-width:720px){.evidence figcaption{padding:15px}.evidence figcaption a{display:block;margin:8px 0 0;padding:5px 0}.workflow li>div{min-width:0}}

.evidence-portrait{width:100%;max-width:520px}

/* One native link covers each completed card, with a single keyboard stop. */
.system-card-linked{position:relative}
.system-card-linked .case-card-link::after{content:"";position:absolute;inset:0;cursor:pointer}
.system-card-linked .case-card-link:focus-visible{outline:none}
.system-card-linked .case-card-link:focus-visible::after{outline:3px solid var(--accent-bright);outline-offset:4px}

/* Customer feedback sits alongside the workflow it describes. */
.impact-quote{margin:32px 0;padding:28px 30px;border-left:3px solid var(--accent);background:var(--background-soft)}
.impact-quote blockquote{margin:0}
.case-section .impact-quote p{margin:0;font-size:clamp(1.3rem,2.8vw,1.85rem);line-height:1.5;color:var(--text)}
.impact-quote figcaption{margin-top:20px;font-size:.88rem;color:var(--muted-bright)}
@media(max-width:720px){.impact-quote{padding:24px 20px}}

/* Finished work gets the visual emphasis; future work is a quiet footer. */
.systems-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.system-card-linked{min-width:0;min-height:0}
.system-card-linked .system-card-body{display:flex;flex-direction:column}
.system-card-linked .system-card-body>p:not(.system-industry){color:var(--muted-bright)}
.system-card-linked h3{font-size:clamp(2rem,3vw,2.8rem)}
.system-card-linked .system-features{margin-top:auto;padding-top:0}
.system-card-linked .system-card-body>p:not(.system-industry){margin-bottom:28px}
.case-preview{margin:0 0 25px;border:1px solid var(--line-strong);background:#f3f4f6}
.case-preview img{display:block;width:100%;height:205px;object-fit:contain}
.case-preview figcaption{background:var(--background-soft);padding:14px 16px;font-size:.85rem;line-height:1.5;color:var(--text)}
.case-preview figcaption span{display:block;color:var(--muted);font-size:.72rem;margin-top:5px}
.next-system{grid-column:1/-1;display:flex;align-items:center;gap:28px;border-top:1px solid var(--line-strong);padding:26px 0 0}
.next-system .eyebrow{margin:0;white-space:nowrap;font-size:.7rem}
.next-system p{margin:0;font-size:.9rem;line-height:1.7;color:var(--muted-bright);flex:1}
.next-system strong{color:var(--text);font-weight:550}.next-system .status{font-size:.75rem;white-space:nowrap}
.workflow-overview{margin:32px 0 0;padding:25px 28px;border:1px solid var(--line-strong);background:var(--background-soft)}
.workflow-overview .eyebrow{font-size:.7rem;margin:0 0 20px}
.workflow-overview ol{list-style:none;display:flex;flex-wrap:wrap;gap:16px 30px;padding:0;margin:0}
.workflow-overview li{display:flex;align-items:center;gap:10px;color:var(--text);font-size:.86rem;line-height:1.5}
.workflow-overview li span{color:var(--accent);font-family:ui-monospace,monospace;font-size:.7rem}
.technical-note summary{cursor:pointer;color:var(--text);font-weight:600;font-size:1.1rem;line-height:1.5}
.technical-note summary span{display:block;padding-top:8px;font-weight:400;font-size:.82rem;color:var(--muted-bright)}
.technical-note[open] summary{margin-bottom:22px}
@media(max-width:720px){
 .systems-grid{grid-template-columns:minmax(0,1fr)}
 .system-card-body{padding:26px 22px}
 .case-preview img{height:auto;max-height:210px}
 .next-system{display:block}.next-system p{margin:12px 0}.next-system .status{display:none}
 .workflow-overview{padding:22px 20px}.workflow-overview ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}
 .workflow-overview li{align-items:baseline;font-size:.8rem}
 .hero-blueprint{display:none}.hero-layout{padding:56px 0 45px}.hero-footer{padding-bottom:28px}
}
@media(min-width:721px){
 .systems-section{padding-block:90px}
 .systems-section .section-heading{max-width:none;display:grid;grid-template-columns:1.1fr 1fr;gap:18px 65px;align-items:end}
 .systems-section .section-heading .eyebrow{grid-column:1/-1;margin:0}
 .systems-section .section-heading h2{margin:0;font-size:clamp(2.8rem,4.5vw,4.5rem)}
 .systems-section .section-heading>p:last-child{margin:0}
}
.case-preview{background:#111722}
