/* R85 case collection: the original charcoal surface and orange logo cards. */
.catalogue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:48px 0}
.catalogue-card.client-card{display:block;min-height:0;padding:0;border-radius:16px;background:var(--orange);color:var(--ink);overflow:hidden}
.catalogue-card-link{display:flex;flex-direction:column;position:relative;min-height:420px;height:100%;padding:36px;text-decoration:none;color:inherit}
.catalogue-card .client-logo-panel{display:flex;align-items:center;min-height:88px;height:88px;margin:0 0 40px;padding:0;background:transparent}
.catalogue-card .client-logo-panel img{width:220px;max-width:100%;height:auto;max-height:88px;object-fit:contain;object-position:left;filter:url(#client-ink);mix-blend-mode:normal}
.catalogue-card .client-hm img{width:104px}.catalogue-card .client-hnt img{width:252px}
.catalogue-service{font-size:.8125rem;line-height:1.5;margin:0 0 12px}
.catalogue-card h3{font:700 clamp(1.75rem,2vw,2.25rem)/1.1 var(--display);letter-spacing:-.02em;margin:0 0 16px;max-width:22ch;text-wrap:balance}
.catalogue-card-link>p:not(.catalogue-service){font-size:.9375rem;line-height:1.65;max-width:38ch;margin:0 0 32px}
.catalogue-card-action{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--ink);padding-top:20px;margin-top:auto;font-size:.875rem;min-height:48px}
.catalogue-card svg,.case-page main svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;flex-shrink:0}
.catalogue-card-link:hover .catalogue-card-action{text-decoration:underline;text-underline-offset:5px}
.catalogue-card-link:focus-visible{outline:3px solid var(--ink);outline-offset:-8px}
.case-page{background:var(--paper);color:var(--ink)}.case-page :focus-visible{outline:2px solid currentColor;outline-offset:5px}.case-page a{text-underline-offset:5px}
.case-page main{padding-top:120px}.case-hero{max-width:1440px;margin:auto;padding:40px var(--gutter) 72px}
.case-breadcrumb{display:flex;gap:16px;align-items:center;font-size:.875rem;margin-bottom:40px}.case-breadcrumb a{display:inline-flex;align-items:center;min-height:44px}
.case-brand{display:block;width:220px;height:auto;max-height:72px;object-fit:contain;object-position:left;margin-bottom:32px}.case-brand.client-hm{width:88px}.case-brand.client-hnt{width:252px}
.case-hero h1{font:700 clamp(2.5rem,4.5vw,4.5rem)/1.04 var(--display);letter-spacing:-.02em;text-wrap:balance;max-width:22ch}
.case-deck{font-size:clamp(1.125rem,1.5vw,1.375rem);line-height:1.55;max-width:58ch;margin-top:24px}.case-role{font-size:.9375rem;line-height:1.7;max-width:72ch;margin-top:24px;color:var(--muted)}
.case-share{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:28px}.case-share button,.case-lightbox-bar button,.case-lightbox-bar a{padding:12px 16px;min-height:48px;border:1px solid currentColor;background:transparent;color:inherit;cursor:pointer;font:inherit;font-size:.875rem}.case-share button:hover{background:var(--ink);color:var(--paper)}.case-share [hidden]{display:none}#share-status{font-size:.875rem;flex-basis:100%;min-height:1.5em}
.case-story{max-width:1600px;margin:auto;padding:0 var(--gutter)}
.case-chapter{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(40px,5vw,96px);padding:64px 0;border-top:1px solid var(--line);align-items:start}
.case-chapter-copy{grid-column:2;grid-row:1;min-width:0}.case-chapter-copy.is-sticky{position:sticky;top:120px}
.case-chapter-media{grid-column:1;grid-row:1;display:grid;gap:40px;min-width:0}
.case-chapter h2,.case-result h2{font:700 clamp(2rem,2.8vw,3rem)/1.08 var(--display);letter-spacing:-.02em;margin-bottom:24px;text-wrap:balance}
.case-chapter-copy p,.case-result p{font-size:1.0625rem;line-height:1.8;max-width:65ch;margin-top:20px}
.case-exhibit{margin:0;min-width:0}.case-image-link{display:block;border:1px solid var(--line);background:#fff;color:var(--ink);text-decoration:none}
.case-image-link img{display:block;width:100%;height:auto;object-fit:contain}.case-exhibit-portrait{max-width:390px;margin-inline:auto;width:100%}
.case-image-link>span{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:52px;padding:12px 16px;background:var(--paper);font-size:.875rem}
.case-exhibit figcaption{margin-top:16px;color:var(--muted);font-size:.875rem;line-height:1.65}
.case-result{max-width:900px;margin:0 auto;padding:72px var(--gutter) 96px}.case-result h2{max-width:24ch}
.case-end{padding:64px var(--gutter);background:var(--orange)}.case-end h2{font:700 clamp(2.5rem,3.5vw,4rem)/1.08 var(--display);max-width:24ch;margin-bottom:32px}.case-end .primary-button{background:var(--ink);color:var(--paper)}
.next-case{display:flex;justify-content:space-between;align-items:center;gap:24px;max-width:900px;border-top:1px solid var(--ink);padding:24px 0;margin-top:48px;min-height:56px}.case-back{display:inline-flex;align-items:center;min-height:48px;font-size:.875rem}
.case-collection{background:var(--ink);color:var(--paper);padding:160px var(--gutter) 96px!important;min-height:75vh}.collection-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:64px;align-items:end}.collection-heading h1{font:700 clamp(2.5rem,4.5vw,4.5rem)/1.04 var(--display);letter-spacing:-.02em;max-width:22ch;text-wrap:balance}.collection-heading p{font-size:1.125rem;line-height:1.7;max-width:45ch}
.case-lightbox{width:calc(100vw - 32px);max-width:none;height:calc(100dvh - 32px);max-height:none;margin:auto;padding:0;border:0;background:var(--paper);color:var(--ink)}.case-lightbox[open]{display:flex;flex-direction:column}.case-lightbox::backdrop{background:rgba(20,18,18,.85)}.case-lightbox-bar{flex:none;display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:16px;background:var(--paper);border-bottom:1px solid var(--line)}.case-lightbox-view{overflow:auto;flex:1;min-height:0;padding:24px;overscroll-behavior:contain;scrollbar-color:var(--ink) var(--paper)}.case-lightbox-view img{display:block;max-width:100%;height:auto;margin:auto}.case-lightbox.is-original .case-lightbox-view img{max-width:none}.case-page:has(.case-lightbox[open]){overflow:hidden}.case-lightbox-view:focus-visible{outline:2px solid var(--ink);outline-offset:-5px}
@media(max-width:1099px){.catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-chapter{grid-template-columns:1fr;gap:32px}.case-chapter-copy,.case-chapter-media{grid-column:1;grid-row:auto}.case-chapter-copy.is-sticky{position:static}.case-chapter-copy{max-width:72ch}.case-chapter-media{grid-template-columns:repeat(2,minmax(0,1fr))}.case-chapter-media .case-exhibit:only-child{grid-column:1/-1;max-width:800px}.case-chapter-media .case-exhibit-portrait:only-child{max-width:400px}.collection-heading{grid-template-columns:1fr;gap:24px}}
@media(max-height:699px){.case-chapter-copy.is-sticky{position:static}}
@media(max-width:699px){.catalogue-grid{grid-template-columns:1fr;gap:24px;margin:32px 0}.catalogue-card-link{min-height:360px;padding:28px}.catalogue-card .client-logo-panel{margin-bottom:24px}.case-page main{padding-top:80px}.case-hero{padding-top:24px;padding-bottom:40px}.case-breadcrumb{margin-bottom:24px}.case-hero h1{font-size:2.5rem}.case-chapter{padding:40px 0;gap:28px}.case-chapter h2,.case-result h2{font-size:2rem}.case-chapter-copy p,.case-result p{font-size:1rem}.case-chapter-media{grid-template-columns:1fr}.case-result{padding-top:40px;padding-bottom:56px}.case-end{padding:48px var(--gutter)}.next-case{font-size:.875rem}.case-collection{padding-top:112px!important}.collection-heading h1{font-size:2.5rem}.case-lightbox{width:100vw;height:100dvh}.case-lightbox-bar{gap:8px;padding:12px}.case-lightbox-bar button,.case-lightbox-bar a{font-size:.75rem;padding:10px}.case-lightbox-view{padding:16px}}

.case-exhibit-compact{width:min(100%,237px);margin-inline:auto}
