:root{--ink:#10231f;--paper:#f7f3ea;--surface:#fffdf8;--line:#d9d4c8;--muted:#69716c;--teal:#087c70;--gold:#c99a3f;color:var(--ink);background:var(--paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);min-width:320px;margin:0}a{color:inherit}button,input,select{font:inherit}button,select{cursor:pointer}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.site-header,.site-footer,.hero,.catalogue,.case-study-page{width:min(72rem,100% - 2.5rem);margin-inline:auto}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:1.3rem 0;display:flex}.brand{letter-spacing:-.04em;font-size:1.1rem;font-weight:800;text-decoration:none}.brand span{color:var(--teal);font-weight:600}.header-link,.back-link,.source-link{color:var(--teal);font-weight:700;text-decoration:none}.header-link:hover,.back-link:hover,.source-link:hover,.card-link:hover{text-decoration:underline}.hero{padding:clamp(4rem,9vw,7.8rem) 0 clamp(3.5rem,7vw,6rem)}.eyebrow{color:var(--teal);letter-spacing:.13em;text-transform:uppercase;margin:0 0 .8rem;font-size:.72rem;font-weight:800}.hero h1,.case-study-header h1{letter-spacing:-.07em;max-width:12ch;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.15rem,8vw,6.9rem);font-weight:500;line-height:.91}.hero h1 em{color:var(--teal);font-weight:inherit}.hero-copy{max-width:39rem;color:var(--muted);margin:2rem 0 2.8rem;font-size:1.12rem;line-height:1.65}.stats{flex-wrap:wrap;gap:1.8rem;margin:0;display:flex}.stats div{min-width:7rem}.stats dt{letter-spacing:-.06em;font-family:Georgia,Times New Roman,serif;font-size:2.25rem;font-weight:700}.stats dd{color:var(--muted);margin:.1rem 0 0;font-size:.86rem}.catalogue{border-top:1px solid var(--line);padding:1.5rem 0 6rem}.catalogue-heading{justify-content:space-between;align-items:end;gap:1rem;margin:2.3rem 0 1.5rem;display:flex}.catalogue-heading h2{letter-spacing:-.055em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,4vw,3.6rem);font-weight:500}.result-count{color:var(--muted);white-space:nowrap;margin:0}.filters{background:#e9e5da;border-radius:.9rem;grid-template-columns:minmax(14rem,1fr) repeat(2,minmax(10rem,.45fr)) auto;gap:.65rem;margin-bottom:1.6rem;padding:.75rem;display:grid}.filters label{min-width:0}.filters input,.filters select,.reset-button{border:1px solid var(--line);background:var(--surface);width:100%;min-height:2.85rem;color:var(--ink);border-radius:.55rem}.filters input,.filters select{padding:0 .85rem}.search-control{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:.55rem;align-items:center;gap:.5rem;padding:0 .8rem;display:flex}.search-control input{border:0;outline:0;padding:0}.reset-button{background:0 0;width:auto;padding:0 1rem}.reset-button:hover{background:var(--surface)}.study-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;display:grid}.study-card{background:var(--surface);border:1px solid var(--line);border-radius:.95rem;flex-direction:column;min-height:100%;padding:1.55rem;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 1px #10231f0a}.study-card:hover{transform:translateY(-3px);box-shadow:0 12px 24px #10231f17}.card-kicker{color:var(--teal);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.7rem;font-size:.75rem;font-weight:800}.study-card h2{letter-spacing:-.04em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.65rem;font-weight:500;line-height:1.08}.study-card h2 a{text-decoration:none}.study-card p{color:var(--muted);line-height:1.55}.tag-row{flex-wrap:wrap;gap:.4rem;margin:.9rem 0;display:flex}.tag-row--technology{margin-top:auto;padding-top:.65rem}.tag{border:1px solid var(--line);background:#f2efe7;border-radius:999px;padding:.3rem .48rem;font-size:.72rem;line-height:1.1;display:inline-flex}.tag--industry{color:#075f56;background:#e4f2ed;border-color:#b7d8d0}.tag--draft{color:#8a5a06;background:#fdf1dc;border-color:#e2c9a0;margin-left:.55rem}.card-link{color:var(--teal);margin-top:1.1rem;font-size:.9rem;font-weight:800;text-decoration:none}.empty-state{color:var(--muted);text-align:center;padding:3rem 1rem}.case-study-page{padding:3rem 0 6rem}.case-study-header{max-width:57rem;padding:3.4rem 0 4rem}.case-study-header h1{max-width:14ch;font-size:clamp(2.9rem,6vw,5.6rem)}.case-study-header>p:last-child{max-width:45rem;color:var(--muted);margin:1.6rem 0 0;font-size:1.12rem;line-height:1.65}.case-study-layout{grid-template-columns:minmax(15rem,.42fr) minmax(0,1fr);align-items:start;gap:clamp(2rem,7vw,7rem);display:grid}.metadata-panel{border:1px solid var(--line);background:var(--surface);border-radius:.85rem;padding:1.35rem;position:sticky;top:1.4rem}.metadata-panel>div+div{margin-top:1.35rem}.metadata-panel h2{letter-spacing:.11em;text-transform:uppercase;margin:0;font-size:.72rem}.source-link{margin-top:1.3rem;font-size:.85rem;display:inline-block}.markdown-content{min-width:0;font-size:1.03rem;line-height:1.72}.markdown-content>:first-child{margin-top:0}.markdown-content h1,.markdown-content h2,.markdown-content h3{letter-spacing:-.035em;margin-top:2.5em;font-family:Georgia,Times New Roman,serif;line-height:1.08}.markdown-content h2{font-size:2rem}.markdown-content h3{font-size:1.4rem}.markdown-content p,.markdown-content li{color:#34413d}.markdown-content a{color:var(--teal)}.markdown-content table{border-collapse:collapse;width:100%;font-size:.9rem;display:block;overflow-x:auto}.markdown-content th,.markdown-content td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:.7rem}.markdown-content th{background:#e9e5da}.markdown-content pre{background:var(--ink);color:#eff7f2;border-radius:.6rem;padding:1rem;overflow-x:auto}.notice{border-radius:.6rem;margin:1.5rem 0;padding:.35rem 1.1rem}.notice--danger{color:#7f1d1a;background:#fdecea;border:1px solid #d9a3a0;border-left:5px solid #b3261e}.notice--danger strong{color:#8c1d18}.mermaid-diagram{border:1px solid var(--line);background:var(--surface);border-radius:.6rem;margin:1.5rem 0;padding:1rem;overflow-x:auto}.mermaid-diagram svg{height:auto}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=700px){.site-header,.site-footer,.hero,.catalogue,.case-study-page{width:min(100% - 1.5rem,72rem)}.header-link{font-size:.85rem}.filters{grid-template-columns:1fr}.reset-button{width:100%}.catalogue-heading{flex-direction:column;align-items:start}.case-study-layout{grid-template-columns:1fr}.metadata-panel{position:static}.hero h1{font-size:clamp(3.3rem,16vw,5rem)}}
