.case-intro{padding:3rem 0 2.5rem}.case-back{display:inline-block;margin-bottom:3rem;color:var(--text-secondary);font-size:0.875rem}.case-back:hover{color:var(--text-brand)}.case-intro>.eyebrow{margin-bottom:1.125rem}.case-intro h1{max-width:62.5rem;font-size:clamp(2.5rem,5.6vw,5.5rem);line-height:1.08}.case-deck{max-width:50rem;margin-top:1.75rem;font-size:var(--type-body-large);color:var(--text-secondary);line-height:1.7}.case-deck b,.case-prose b{font-weight:500;color:var(--text-primary)}.case-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem;margin:3rem 0 0;padding-top:1.5rem;border-top:1px solid var(--border-default)}.case-meta dt{font-size:0.75rem;color:var(--text-muted);margin-bottom:0.375rem}.case-meta dd{margin:0;font-size:0.875rem}.case-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin:2.5rem 0 0;padding:2rem 0;border-block:1px solid var(--border-default)}.case-stats dd{margin:0;font-family:var(--font-heading);font-size:clamp(1.75rem,3vw,3rem);color:var(--text-brand);line-height:1.2}.case-stats dt{font-size:0.875rem;color:var(--text-secondary);margin-bottom:0.75rem}.case-cover{margin:0.75rem 0 0;border-radius:1rem;overflow:hidden;background:var(--background-surface)}.case-cover img{display:block;width:100%;max-height:40.625rem;object-fit:cover}.case-contents{display:flex;flex-wrap:wrap;gap:0.75rem 1.75rem;margin:1.5rem 0 4rem;font-size:0.8125rem;color:var(--text-secondary)}.case-contents a{padding-block:0.5rem;border-bottom:1px solid var(--border-default)}.case-contents a:hover{color:var(--text-brand)}.case-section{margin-block:5.5rem;scroll-margin-top:2rem}.case-section-heading{display:flex;align-items:baseline;gap:1.5rem;margin-bottom:1.5rem}.case-section h2,.case-next h2{font-size:var(--type-heading-large);font-weight:500;line-height:1.2;letter-spacing:-.035em}.case-prose{max-width:50rem;font-size:var(--type-body-large);color:var(--text-secondary)}.case-prose p+p{margin-top:1.25rem}.case-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 1.5rem;margin-top:2rem;align-items:start}.case-gallery figure{margin:0;min-width:0}.case-gallery figure:only-child{grid-column:1/-1}.case-gallery img,.case-gallery video{width:100%;display:block;background:#020617;border-radius:0.75rem;object-fit:contain;max-height:38.75rem}.case-zoom{display:block;width:100%;padding:0;border-radius:0.75rem;overflow:hidden;background:#020617}.case-zoom img{transition:transform .25s}.case-zoom:hover img{transform:scale(1.015)}.case-zoom.logo-media{padding:2.5rem;background:#0F172A}.case-zoom.logo-media img{background:transparent;max-height:13.75rem;min-height:7.5rem}.case-gallery figcaption,.case-caption{font-size:0.75rem;line-height:1.6;color:var(--text-muted);margin-top:0.75rem}.case-gallery figcaption a{color:var(--text-brand);text-decoration:underline}.case-next{display:block;border-top:1px solid var(--border-default);padding:2.5rem 0 4rem;margin-top:5rem}.case-next h2{margin-top:0.75rem}.case-next:hover h2{color:var(--text-brand)}.case-palette{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;margin-top:2rem}.case-palette span{display:block;aspect-ratio:1;border-radius:0.75rem;margin-bottom:0.75rem}.case-palette b{font-size:0.875rem;font-weight:500}.case-palette p{font-size:0.75rem;color:var(--text-secondary)}#image-viewer{width:min(96vw,93.75rem);max-width:none;padding:3.5rem 1.5rem 1.5rem;background:var(--background-page);color:var(--text-primary);border:1px solid var(--border-default);border-radius:0.75rem;max-height:94dvh}#image-full{display:block;max-height:75dvh;max-width:100%;width:auto;margin:auto;object-fit:contain}#image-caption{margin-top:1rem;font-size:0.875rem}#image-viewer .close-dialog{position:absolute;top:0.5rem;right:0.75rem;font-size:1.625rem}#image-viewer::backdrop{background:rgb(2 6 23/.85)}.project-image img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:1.6}.project-image{overflow:hidden}.project-info a.view{color:var(--brand-700)}
@media(max-width:1199px){.case-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.case-intro{padding-top:2rem}.case-section{margin-block:4rem}}
@media(max-width:767px){.case-back{margin-bottom:2rem}.case-intro h1{font-size:2.5rem}.case-deck,.case-prose{font-size:1rem}.case-meta{gap:1.25rem 1rem;margin-top:2rem}.case-stats{grid-template-columns:1fr;padding-block:1.5rem;gap:1.25rem}.case-stats>div{display:flex;flex-direction:column-reverse}.case-stats dt{margin:0.375rem 0 0}.case-gallery{grid-template-columns:1fr;gap:1.75rem}.case-gallery img,.case-gallery video{max-height:32.5rem}.case-section-heading{gap:0.875rem}.case-contents{margin-bottom:2.5rem;gap:0.5rem 1.25rem}.case-section{margin-block:3rem}.case-palette{grid-template-columns:repeat(2,minmax(0,1fr))}.case-cover img{max-height:21.25rem}.case-next{margin-top:3rem;padding-block:2rem}.case-zoom.logo-media{padding:1.5rem}}
@media(prefers-reduced-motion:reduce){.case-zoom img{transition:none}}
.case-zoom.inverted{background:#fff}.case-zoom.inverted img{filter:invert(1)}.metal-example{background:#0F172A;padding:2.5rem;border-radius:0.75rem;margin:1.5rem 0 0}.metal-example span{display:block;height:8.125rem;background:linear-gradient(160deg,#fafafa 0%,#82858b 25%,#fff 45%,#4b5159 65%,#ddd 85%);mask:url(assets/brand/logo-2021-white.webp) center/contain no-repeat;-webkit-mask:url(assets/brand/logo-2021-white.webp) center/contain no-repeat}.metal-example figcaption{color:#CBD5E1;font-size:0.75rem;margin-top:1.5rem}

.project-image.project-image-motion{position:relative;isolation:isolate;background:#0F172A}
.project-image-motion .project-card-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;pointer-events:none}
.project-image-motion::before{content:"";position:absolute;inset:0;background:rgba(2,6,23,.22);z-index:-1;pointer-events:none}
.project-image-motion img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:12%;aspect-ratio:auto;pointer-events:none}
@media(prefers-reduced-motion:reduce){.project-image-motion .project-card-video{visibility:hidden}.project-image.project-image-motion{background:#0F172A url(assets/classic/hair-texture-poster.jpg) center/cover}}

.project-image.project-image-contain{background:#F2F0ED}.project-image-contain img{object-fit:contain}

.project-image.project-image-fdk{background:#121415}.project-image-fdk img{padding:14%;object-fit:contain}

.project-image.project-image-ftn{background:#0E171E}.project-image-ftn img{object-fit:contain}

.project-image.project-image-chatbot{background-color:#000;background-image:radial-gradient(circle,rgba(255,255,255,.12) 1px,transparent 1px);background-size:1rem 1rem}.project-image-chatbot img{object-fit:contain;padding:4%}

.project-image-video img{visibility:hidden}.project-image-video::before{display:none}@media(prefers-reduced-motion:reduce){.project-image-video img{visibility:visible;object-fit:cover;padding:0}}

/* The video thumbnails include 45px bars above and below a 480 × 270 frame. */
.project-image-letterboxed{position:relative}
.project-image-letterboxed img{position:absolute;left:0;top:50%;width:100%;height:134%;aspect-ratio:auto;object-fit:cover;transform:translateY(-50%)}
