.case-hero-artifact[data-astro-cid-47qbftml]{border:var(--rule);background:var(--paper-strong)}.case-hero-artifact[data-astro-cid-47qbftml] picture[data-astro-cid-47qbftml]{aspect-ratio:4/3;place-items:center;display:grid;overflow:hidden}.case-hero-artifact[data-astro-cid-47qbftml] img[data-astro-cid-47qbftml]{object-fit:contain;width:100%;height:100%}.case-hero-artifact[data-astro-cid-47qbftml] figcaption[data-astro-cid-47qbftml]{border-top:var(--rule);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;padding:.65rem .85rem;font-size:.75rem;font-weight:900}@media (width<=900px){.case-hero-artifact[data-astro-cid-47qbftml] picture[data-astro-cid-47qbftml]{aspect-ratio:auto}.case-hero-artifact[data-astro-cid-47qbftml] img[data-astro-cid-47qbftml]{height:auto}}.case-page.profile-general .case-study{--case-outer-gutter:clamp(2rem, 6.4vw, 7rem);--case-inner-gutter:clamp(1.25rem, 4vw, 4rem)}.case-page .case-hero--unframed{width:calc(100% - var(--case-outer-gutter));padding-inline:var(--case-inner-gutter);color:var(--ink);box-shadow:none;background:0 0;border-radius:0;gap:1.5rem;margin-top:0;padding-block:0 1.5rem}.case-page.profile-general .case-body{background:0 0;border-radius:0;width:min(100% - clamp(2.5rem,8vw,8rem),64rem);max-width:none;margin:1.5rem auto 0;padding:0}.case-page.profile-general .case-body>h2{max-width:none;margin-top:2.5rem;font-size:clamp(2rem,3.5vw,3.25rem);line-height:1.06}.case-page.profile-general .case-body>h2:first-child{margin-top:0}.case-page.profile-general .case-body>p{max-width:none;margin-top:.75rem;font-size:clamp(1.05rem,1.4vw,1.125rem);line-height:1.6}.case-page.profile-general .case-body>p:has(>.media-trigger),.case-page.profile-general .case-body>p:has(>img){margin-block:1.25rem}.case-page.profile-general .case-body code{padding:1rem 1.25rem;font-size:clamp(.85rem,1.2vw,1rem);line-height:1.5}.case-page.profile-general .next-project{margin-top:2rem;padding-top:1rem}@media (width<=640px){.case-page.profile-general .case-study{--case-outer-gutter:2rem}.case-page.profile-general .case-body>h2{margin-top:2rem}}@media (width>=641px){.case-page.profile-general .case-body,.case-page.profile-general .next-project{width:calc(100% - var(--case-outer-gutter) - 2 * var(--case-inner-gutter))}}.case-page .case-hero--unframed:before{content:none}.case-page .case-hero--unframed .case-hero__main--brief{grid-template-columns:minmax(0,1fr);gap:1rem;display:grid}.case-page .case-hero--unframed h1{text-wrap:pretty;max-width:30ch;font-size:clamp(2.5rem,5vw,4.8rem);line-height:1.02}.case-hero__summary{max-width:70ch;font-family:var(--sans);margin:0;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.55}.case-page .case-hero--unframed .case-facts--brief{border:0;border-block:1px solid color-mix(in srgb, var(--ink) 25%, transparent);background:0 0;border-radius:0;grid-template-columns:minmax(0,1fr);gap:1.5rem;margin:0;padding-block:1.5rem;display:grid;overflow:visible}.case-page .case-facts--brief>div{border:0;min-width:0;padding:0}.case-page .case-facts--brief dt{letter-spacing:.04em;margin:0 0 .5rem;font-size:.75rem;font-weight:700;line-height:1.4}.case-page .case-facts--brief dd{margin:0;font-size:1rem;font-weight:400;line-height:1.55}.case-page .case-facts--brief .case-facts__context dd+dt{margin-top:1.5rem}.case-page .case-facts--brief .case-facts__outcome{max-width:38ch;font-family:var(--serif);margin-bottom:1.5rem;font-size:clamp(1.6rem,2.4vw,2rem);line-height:1.18}.case-facts__deliverables{gap:.25rem;padding-left:1.1em;list-style:outside;display:grid}.case-capabilities{flex-wrap:wrap;gap:.5rem 1.5rem;padding:0;font-size:.75rem;font-weight:700;line-height:1.5;list-style:none;display:flex}@media (width>=900px){.case-page .case-hero--unframed .case-facts--brief{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:1rem clamp(2rem,4vw,4rem)}.case-page .case-facts--brief .case-facts__context{grid-template-columns:7rem minmax(0,1fr);gap:1rem;display:grid}.case-page .case-facts--brief .case-facts__context dt,.case-page .case-facts--brief .case-facts__context dd+dt{margin:.2rem 0 0}}.case-page.profile-general .next-project{grid-template-columns:minmax(10rem,.26fr) minmax(0,1fr);align-items:center;gap:clamp(1.5rem,3vw,3rem)}.case-page.profile-general .next-project__heading{align-content:center;gap:.5rem;display:grid}.case-page .next-project>.next-case-folder{isolation:isolate;width:100%;min-height:0;box-shadow:none;background:0 0;grid-template-rows:56px auto;grid-template-columns:minmax(0,1fr);justify-self:end;align-items:stretch;gap:0;padding:0;text-decoration:none;display:grid;position:relative}.case-page .next-project>.next-case-folder:before{content:none}.next-case-folder__stock{width:100%;height:100%;fill:var(--next-accent);z-index:-1;filter:drop-shadow(0 12px 18px #27171b26);position:absolute;inset:0}.next-case-folder__tab{width:min(82%,28rem);font:700 clamp(1.15rem, 2vw, 1.5rem)/1.05 var(--sans);letter-spacing:-.025em;padding:16px 20px 0}.next-case-folder__tab>span{max-width:78%;display:block}.next-case-folder__flap{background:var(--next-accent);border-radius:0 16px 16px;grid-template-rows:auto auto;gap:.75rem;padding:clamp(1.25rem,2.25vw,2rem);transition:box-shadow .34s;display:grid;box-shadow:0 -6px 12px -4px #27171b57,0 9px 18px #27171b1a}.next-case-folder__summary{align-self:center;max-width:62ch;font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.5}.next-case-folder__action{justify-self:end;align-items:center;gap:.6rem;font-size:.85rem;font-weight:700;display:inline-flex}.next-case-folder__action svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:24px}.next-case-folder:hover .next-case-folder__action{text-underline-offset:.25em;text-decoration:underline}.next-case-folder:focus-visible .next-case-folder__flap{box-shadow:0 -8px 16px -4px #27171b66,0 16px 30px #27171b2b}@media (hover:hover){.next-case-folder:hover .next-case-folder__flap{box-shadow:0 -8px 16px -4px #27171b66,0 16px 30px #27171b2b}}@media (prefers-reduced-motion:reduce){.next-case-folder__flap{transition:none}}@media (prefers-reduced-motion:no-preference){.case-page .next-project>.next-case-folder{transition:transform .34s}.case-page .next-project>.next-case-folder:focus-visible{transform:translateY(-6px)}}@media (hover:hover) and (prefers-reduced-motion:no-preference){.case-page .next-project>.next-case-folder:hover{transform:translateY(-6px)}}@media (width<=640px){.case-page.profile-general .next-project{grid-template-columns:minmax(0,1fr)}.next-case-folder__tab{padding-inline:16px}}
