:root{--line:#3d3d37}
summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}
.title-word{display:inline-block;transform-origin:left bottom}
.hero-photo{overflow:hidden;isolation:isolate;background:#303947}
.photo-reveal{width:100%;overflow:hidden;will-change:clip-path}
.hero-photo img{transform:translate3d(0,var(--photo-shift,0px),0) scale(1.04);will-change:transform}
html{scrollbar-gutter:stable}
html.case-reader-open{overflow:hidden}
.casework{overflow-anchor:none}
.section-heading{padding-block:17px 23px}.section-heading h2{font:400 10px/1.6 var(--body);letter-spacing:.16em;text-transform:uppercase;margin:0;color:var(--muted)}
.case{position:relative;border-top:1px solid var(--line);color:var(--paper);scroll-margin-top:28px}
.case:last-of-type{border-bottom:1px solid var(--line)}
.case-link{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.2fr) 95px;align-items:center;gap:40px;padding-block:31px 33px;text-decoration:none;color:var(--paper)}
.case-title{margin:0;font:400 clamp(27px,2.4vw,36px)/1.22 var(--display);letter-spacing:-.025em;transition:color .18s}
.case-teaser{margin:0;font:400 14px/1.8 var(--body);color:var(--muted);max-width:570px}
.case-action{display:flex;justify-content:flex-end;align-items:center;gap:12px;white-space:nowrap;font:400 11px/1.5 var(--body);color:var(--accent)}
.case-action svg{flex:none;transition:transform .18s ease}
.case-link:hover .case-title{color:var(--accent)}
.case-link:hover .case-action svg{transform:translateX(3px)}
.case-link:focus-visible{outline-offset:7px}
.case-detail{max-width:760px;padding:0 0 40px}
.casework-enhanced .case-detail{display:none}
.case-reading>p{font:400 16px/1.85 var(--body);color:var(--muted);margin:0 0 22px}
.case-outcome{margin-top:29px;padding-top:23px;border-top:1px solid rgba(196,182,142,.26)}
.case-outcome h3{font:400 10px/1.6 var(--body);letter-spacing:.15em;text-transform:uppercase;color:var(--accent);margin:0 0 12px}
.case-outcome p{font:400 16px/1.85 var(--body);color:var(--paper);margin:0}
.case-reader{position:fixed;inset:0;width:min(880px,calc(100% - 80px));max-width:none;max-height:calc(100dvh - 80px);margin:auto;padding:0;border:1px solid #30302b;border-radius:4px;background:#090909;color:var(--paper);overflow:hidden;box-shadow:none;overscroll-behavior:contain}
.case-reader[open]{display:grid;grid-template-rows:auto minmax(0,1fr);animation:reader-in .2s cubic-bezier(.2,.7,.3,1) both}
.case-reader::backdrop{background:rgba(45,45,42,.72);animation:reader-backdrop-in .2s ease both}
.case-reader.is-closing{animation:reader-out .14s ease both;pointer-events:none}
.case-reader.is-closing::backdrop{animation:reader-backdrop-out .14s ease both}
.reader-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 60px 10px}
.reader-toolbar>p{font:400 10px/1.4 var(--body);letter-spacing:.16em;text-transform:uppercase;color:#a49e90;margin:0}
.reader-close{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 0 0 12px;background:transparent;border:0;color:var(--muted);font:400 12px/1.4 var(--body)}
.reader-close svg{width:18px;height:18px;transition:color .15s}
.reader-close:hover{color:var(--paper)}
.reader-close:focus-visible{outline-offset:3px}
.reader-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#666358 transparent}
.reader-content{padding:22px 60px 64px;max-width:880px}
.reader-content>h2{font:400 clamp(32px,3.5vw,46px)/1.15 var(--display);letter-spacing:-.03em;margin:0 0 34px;max-width:700px;text-wrap:balance}
.reader-body .case-reading{max-width:730px}
.reader-body .case-reading>p{margin-bottom:24px}
.reader-body .case-outcome{margin-top:34px;padding-top:25px;border-top-color:rgba(232,229,222,.17)}
@keyframes reader-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes reader-out{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(4px)}}
@keyframes reader-backdrop-in{from{opacity:0}to{opacity:1}}
@keyframes reader-backdrop-out{from{opacity:1}to{opacity:0}}
.casework-note{max-width:650px;margin:25px 0 0;font:400 11px/1.85 var(--body);color:var(--muted)}
.footer{border-top:1px solid var(--line);padding-block:30px 38px;display:flex;justify-content:space-between;gap:32px;align-items:start;font-size:11px;line-height:1.9}
.footer p{margin:0}
.footer p span{color:var(--muted);font-size:10px}
.footer nav{display:flex;gap:28px;flex-wrap:wrap}
.footer nav a{display:inline-flex;min-height:32px;align-items:center;color:var(--muted);text-decoration:none}
.footer nav a:hover{color:var(--accent)}
@media(max-width:1020px){.footer{flex-direction:column;gap:12px}}
@media(max-width:1000px){.case-link{grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr) 20px;gap:28px}.case-action{font-size:0;gap:0}.case-action svg{width:20px}}
@media(max-width:700px){.section-heading{padding-block:12px 18px}.case-link{grid-template-columns:minmax(0,1fr) 24px;gap:11px 22px;padding-block:26px 28px}.case-title{font-size:26px;line-height:1.2}.case-teaser{grid-column:1;grid-row:2;font-size:14px;line-height:1.75}.case-action{grid-column:2;grid-row:1;align-self:start;padding-top:4px}.case-action svg{width:21px;height:21px}.case-reading>p,.case-outcome p{font-size:15px;line-height:1.85}.case-outcome{margin-top:26px}.casework-note{font-size:11px;max-width:340px}.case-reader{width:100%;height:100dvh;max-height:100dvh;max-width:100%;border:0;border-radius:0;margin:0}.reader-toolbar{padding:calc(12px + env(safe-area-inset-top)) 23px 13px;border-bottom:1px solid #292927}.reader-content{padding:30px 25px calc(42px + env(safe-area-inset-bottom))}.reader-content>h2{font-size:34px;line-height:1.15;margin-bottom:26px;text-wrap:initial}.reader-close{min-height:44px}.footer{padding-top:24px;padding-bottom:28px}.footer nav{column-gap:22px;row-gap:2px}.footer nav a{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.hero-photo img{transform:none;will-change:auto}.photo-reveal{will-change:auto}}
