.Tag-module__zQcxqq__tag{padding:var(--component-tag-padding-y) var(--component-tag-padding-x);font-family:var(--font-mono);font-size:var(--type-mono-xs);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-widest);text-transform:uppercase;white-space:nowrap;border-radius:var(--radius-none);border:var(--border-width-hairline) solid transparent;transition:color var(--duration-base) ease, background var(--duration-base) ease, border-color var(--duration-base) ease;display:inline-block}.Tag-module__zQcxqq__outlined{color:var(--color-text-muted);border-color:var(--color-border-default);background:0 0}.Tag-module__zQcxqq__solid{color:var(--color-text-inverse);background:var(--color-text-primary);border-color:var(--color-text-primary)}.Tag-module__zQcxqq__accent{color:var(--color-accent-on);background:var(--color-accent-default);border-color:var(--color-accent-default)}@media (hover:hover) and (pointer:fine){.Tag-module__zQcxqq__outlined:hover{color:var(--color-text-primary);border-color:var(--color-border-strong)}}
.Lightbox-module__78wArW__overlay{background:color-mix(in srgb, var(--color-bg-overlay) 94%, transparent);z-index:var(--z-50);padding-top:calc(var(--spacing-48) + var(--safe-area-top));padding-right:calc(var(--spacing-48) + var(--safe-area-right));padding-bottom:calc(var(--spacing-48) + var(--safe-area-bottom));padding-left:calc(var(--spacing-48) + var(--safe-area-left));cursor:zoom-out;justify-content:center;align-items:center;animation:.15s both Lightbox-module__78wArW__fadeIn;display:flex;position:fixed;inset:0}.Lightbox-module__78wArW__image{object-fit:contain;border-radius:var(--radius-sm);cursor:default;max-width:100%;max-height:100%;box-shadow:0 0 0 .5px var(--color-border-default)}.Lightbox-module__78wArW__close{top:calc(var(--spacing-20) + var(--safe-area-top));right:calc(var(--spacing-24) + var(--safe-area-right));font-family:var(--font-mono);font-size:var(--type-mono-xs);letter-spacing:var(--letter-spacing-widest);text-transform:uppercase;color:var(--color-text-muted);cursor:pointer;padding:var(--spacing-8) var(--spacing-12);transition:color var(--duration-base) ease;background:0 0;border:none;position:absolute}@media (hover:hover) and (pointer:fine){.Lightbox-module__78wArW__close:hover{color:var(--color-text-primary)}}
.CaseImage-module__4EpiHW__figure{gap:var(--spacing-12);flex-direction:column;margin:0;display:flex}.CaseImage-module__4EpiHW__imgWrap{border-radius:var(--radius-sm);border:var(--border-width-hairline) solid var(--color-border-subtle);cursor:zoom-in;width:100%;position:relative;overflow:hidden}.CaseImage-module__4EpiHW__img{width:100%;height:auto;transition:opacity var(--duration-base) ease;display:block}.CaseImage-module__4EpiHW__zoomHint{bottom:var(--spacing-12);right:var(--spacing-12);font-family:var(--font-mono);font-size:var(--type-mono-xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--color-text-primary);background:color-mix(in srgb, var(--color-bg-overlay) 60%, transparent);padding:var(--spacing-4) var(--spacing-8);border-radius:var(--radius-sm);opacity:0;transition:opacity var(--duration-base) ease;pointer-events:none;position:absolute}@media (min-width:768px){.CaseImage-module__4EpiHW__img{object-fit:scale-down;object-position:center;width:100%;height:auto;max-height:600px;display:block}}.CaseImage-module__4EpiHW__caption{font-family:var(--font-mono);font-size:var(--type-mono-xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--color-text-muted)}@media (hover:hover) and (pointer:fine){.CaseImage-module__4EpiHW__imgWrap:hover .CaseImage-module__4EpiHW__img{opacity:.85}.CaseImage-module__4EpiHW__imgWrap:hover .CaseImage-module__4EpiHW__zoomHint{opacity:1}}
.ImageRow-module__VVCGsW__figure{gap:var(--spacing-12);flex-direction:column;margin:0;display:flex}.ImageRow-module__VVCGsW__row{gap:var(--spacing-8);align-items:stretch;display:flex}.ImageRow-module__VVCGsW__imgWrap{cursor:zoom-in;border-radius:var(--radius-sm);border:var(--border-width-hairline) solid var(--color-border-subtle);background:var(--color-bg-surface-1);flex:1;min-width:0;height:240px;position:relative;overflow:hidden}@media (min-width:768px){.ImageRow-module__VVCGsW__imgWrap{height:320px}}.ImageRow-module__VVCGsW__img{object-fit:contain;object-position:center;width:100%;height:100%;transition:opacity var(--duration-base) ease, transform var(--duration-slow) var(--ease-out);display:block}.ImageRow-module__VVCGsW__zoomHint{top:var(--spacing-8);right:var(--spacing-8);font-family:var(--font-mono);font-size:var(--type-mono-xs);color:var(--color-text-primary);background:color-mix(in srgb, var(--color-bg-overlay) 55%, transparent);padding:var(--spacing-2) var(--spacing-6);border-radius:var(--radius-sm);opacity:0;transition:opacity var(--duration-base) ease;pointer-events:none;position:absolute}.ImageRow-module__VVCGsW__caption{font-family:var(--font-mono);font-size:var(--type-mono-xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--color-text-muted)}@media (hover:hover) and (pointer:fine){.ImageRow-module__VVCGsW__imgWrap:hover .ImageRow-module__VVCGsW__img{opacity:.85;transform:scale(1.03)}.ImageRow-module__VVCGsW__imgWrap:hover .ImageRow-module__VVCGsW__zoomHint{opacity:1}}
.CaseVideo-module__f2dsNq__figure{gap:var(--spacing-12);flex-direction:column;margin:0;display:flex}.CaseVideo-module__f2dsNq__videoWrap{aspect-ratio:16/9;border-radius:var(--radius-sm);border:var(--border-width-hairline) solid var(--color-border-subtle);background:var(--color-bg-surface-1);width:100%;max-height:400px;position:relative;overflow:hidden}.CaseVideo-module__f2dsNq__iframe{border:none;width:100%;height:100%;display:block;position:absolute;inset:0}.CaseVideo-module__f2dsNq__caption{font-family:var(--font-mono);font-size:var(--type-mono-xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--color-text-muted)}
.CaseStudySections-module__XpvIgG__sectionContext,.CaseStudySections-module__XpvIgG__section{gap:var(--spacing-20);padding-bottom:var(--spacing-56);border-bottom:var(--border-width-hairline) solid var(--color-border-subtle);grid-template-columns:minmax(72px,104px) 1fr;align-items:start;display:grid}.CaseStudySections-module__XpvIgG__section:last-child,.CaseStudySections-module__XpvIgG__sectionContext:last-child{border-bottom:none;padding-bottom:0}.CaseStudySections-module__XpvIgG__sectionHeading{font-family:var(--font-mono);font-size:var(--type-mono-xs);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-widest);text-transform:uppercase;color:var(--color-text-muted);padding-top:var(--spacing-6)}@media (min-width:768px){.CaseStudySections-module__XpvIgG__sectionContext,.CaseStudySections-module__XpvIgG__section{gap:var(--spacing-32);grid-template-columns:128px 1fr}}@media (min-width:1024px){.CaseStudySections-module__XpvIgG__sectionContext,.CaseStudySections-module__XpvIgG__section{gap:var(--spacing-48);grid-template-columns:200px 1fr}}.CaseStudySections-module__XpvIgG__bodyText{font-family:var(--font-serif);font-size:var(--type-body-md);line-height:var(--line-height-loose);color:var(--color-text-secondary);max-width:680px}.CaseStudySections-module__XpvIgG__bodyLink{color:var(--color-text-primary);text-underline-offset:2px;transition:color var(--duration-base) ease;text-decoration:underline}.CaseStudySections-module__XpvIgG__bodyParts{gap:var(--spacing-20);flex-direction:column;display:flex}.CaseStudySections-module__XpvIgG__orderedList{gap:var(--spacing-12);counter-reset:ordered;flex-direction:column;max-width:640px;margin:0;padding:0;list-style:none;display:flex}.CaseStudySections-module__XpvIgG__orderedListItem{gap:var(--spacing-16);font-family:var(--font-serif);font-size:var(--type-body-md);line-height:var(--line-height-relaxed);color:var(--color-text-secondary);align-items:baseline;display:flex}.CaseStudySections-module__XpvIgG__orderedListNumber{font-family:var(--font-mono);font-size:var(--type-mono-xs);letter-spacing:var(--letter-spacing-widest);color:var(--color-text-muted);flex-shrink:0;min-width:1.5rem;margin-top:3px}.CaseStudySections-module__XpvIgG__subsections{gap:var(--spacing-32);flex-direction:column;display:flex}.CaseStudySections-module__XpvIgG__subsection{gap:var(--spacing-10);padding-bottom:var(--spacing-32);border-bottom:var(--border-width-hairline) solid var(--color-border-subtle);flex-direction:column;display:flex}.CaseStudySections-module__XpvIgG__subsection:last-child{border-bottom:none;padding-bottom:0}.CaseStudySections-module__XpvIgG__subsectionHeading{font-family:var(--font-serif);font-weight:var(--font-weight-bold);font-size:var(--type-body-sm);color:var(--color-text-primary);line-height:var(--line-height-tight)}.CaseStudySections-module__XpvIgG__callout{padding:var(--spacing-32) var(--spacing-40);border-left:var(--border-width-medium) solid var(--color-border-inverse);background:var(--color-bg-surface-1);margin:0}.CaseStudySections-module__XpvIgG__calloutText{font-family:var(--font-serif);font-style:italic;font-size:var(--type-subheading-sm);line-height:var(--line-height-snug);color:var(--color-text-primary)}.CaseStudySections-module__XpvIgG__list{gap:var(--spacing-12);flex-direction:column;max-width:640px;list-style:none;display:flex}.CaseStudySections-module__XpvIgG__listItem{gap:var(--spacing-16);font-family:var(--font-serif);font-size:var(--type-body-sm);line-height:var(--line-height-relaxed);color:var(--color-text-secondary);align-items:baseline;display:flex}.CaseStudySections-module__XpvIgG__listBullet{font-family:var(--font-mono);font-size:var(--type-mono-xs);color:var(--color-text-muted);flex-shrink:0;margin-top:3px}.CaseStudySections-module__XpvIgG__highlightList{padding:var(--spacing-32) var(--spacing-40);gap:var(--spacing-16);background:var(--color-bg-surface-1);border-left:var(--border-width-medium) solid var(--color-border-inverse);flex-direction:column;max-width:680px;margin:0;list-style:none;display:flex}.CaseStudySections-module__XpvIgG__highlightListItem{gap:var(--spacing-16);font-family:var(--font-serif);font-size:var(--type-body-md);line-height:var(--line-height-relaxed);color:var(--color-text-primary);align-items:baseline;display:flex}.CaseStudySections-module__XpvIgG__highlightListBullet{font-family:var(--font-mono);font-size:var(--type-mono-xs);color:var(--color-text-muted);flex-shrink:0;margin-top:4px}@media (max-width:767px){.CaseStudySections-module__XpvIgG__sectionContext,.CaseStudySections-module__XpvIgG__section{gap:var(--spacing-12);padding-bottom:var(--spacing-48);grid-template-columns:1fr}.CaseStudySections-module__XpvIgG__bodyText,.CaseStudySections-module__XpvIgG__orderedList,.CaseStudySections-module__XpvIgG__list,.CaseStudySections-module__XpvIgG__highlightList{max-width:none}.CaseStudySections-module__XpvIgG__callout,.CaseStudySections-module__XpvIgG__highlightList{padding:var(--spacing-24)}}@media (hover:hover) and (pointer:fine){.CaseStudySections-module__XpvIgG__bodyLink:hover{color:var(--color-accent-hover)}}
