.CaseStudy-module__3T9wKG__page{background:var(--bg);min-height:100dvh;color:var(--text);font-family:var(--font-display)}.CaseStudy-module__3T9wKG__shell{padding-inline:var(--margin)}.CaseStudy-module__3T9wKG__grid{grid-template-columns:repeat(var(--grid-cols), minmax(0, 1fr));gap:var(--gutter);display:grid}.CaseStudy-module__3T9wKG__grid>*{min-width:0}.CaseStudy-module__3T9wKG__meta{font-family:var(--font-mono);font-size:var(--t-meta);font-weight:400;line-height:var(--leading-body);letter-spacing:var(--track-meta);text-transform:uppercase;color:var(--text-dim);overflow-wrap:anywhere;margin:0}.CaseStudy-module__3T9wKG__metaStrong{color:var(--text)}.CaseStudy-module__3T9wKG__rule{border-top:var(--border)}.CaseStudy-module__3T9wKG__nav{z-index:50;justify-content:space-between;align-items:baseline;gap:var(--s3);padding-block:var(--s3);border-bottom:var(--border);background:var(--bg);display:flex;position:sticky;top:0}.CaseStudy-module__3T9wKG__navMark,.CaseStudy-module__3T9wKG__back{font-family:var(--font-mono);font-size:var(--t-meta);letter-spacing:var(--track-meta);text-transform:uppercase;text-underline-offset:var(--underline-offset);text-decoration:none;text-decoration-thickness:var(--underline-thickness)}.CaseStudy-module__3T9wKG__navMark{color:var(--text)}.CaseStudy-module__3T9wKG__back{color:var(--text-dim)}.CaseStudy-module__3T9wKG__back:hover,.CaseStudy-module__3T9wKG__back:focus-visible{color:var(--text);text-decoration-line:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.CaseStudy-module__3T9wKG__skipLink{left:var(--margin);top:var(--s2);z-index:200;padding:var(--s1) var(--s2);background:var(--text);color:var(--bg);font-family:var(--font-mono);font-size:var(--t-meta);letter-spacing:var(--track-meta);text-transform:uppercase;text-decoration:none;position:absolute;transform:translateY(-200%)}.CaseStudy-module__3T9wKG__skipLink:focus{transform:none}.CaseStudy-module__3T9wKG__masthead{padding-block:var(--s7) var(--s6)}.CaseStudy-module__3T9wKG__mastheadLabel{grid-column:1/span 3}.CaseStudy-module__3T9wKG__title{margin:var(--s4) 0 0;font-size:var(--t-hero);font-weight:500;line-height:var(--leading-display);letter-spacing:var(--track-display);overflow-wrap:anywhere;grid-column:1/-1}.CaseStudy-module__3T9wKG__mastheadContext{margin-top:var(--s5);grid-column:5/span 8}.CaseStudy-module__3T9wKG__mastheadTags{margin-top:var(--s1)}.CaseStudy-module__3T9wKG__section{padding-block:0 var(--s7)}.CaseStudy-module__3T9wKG__sectionRule{border-top:var(--border);margin-bottom:var(--s7)}.CaseStudy-module__3T9wKG__sectionLabel{grid-column:1/span 3}.CaseStudy-module__3T9wKG__sectionBody{grid-column:5/span 8}.CaseStudy-module__3T9wKG__sectionTitle{margin:0 0 var(--s4);font-size:var(--t-h2);font-weight:500;line-height:var(--leading-display);letter-spacing:var(--track-display)}.CaseStudy-module__3T9wKG__paragraph{margin:0 0 var(--s3);max-width:68ch;font-size:var(--t-body);line-height:var(--leading-body);color:var(--text)}.CaseStudy-module__3T9wKG__paragraph:last-child{margin-bottom:0}.CaseStudy-module__3T9wKG__todoBlock{padding:var(--s4);border:var(--border);border-radius:var(--radius)}.CaseStudy-module__3T9wKG__todoMark{font-family:var(--font-mono);font-size:var(--t-meta);letter-spacing:var(--track-meta);text-transform:uppercase;color:var(--text)}.CaseStudy-module__3T9wKG__todoText{margin:var(--s2) 0 0;font-size:var(--t-body);line-height:var(--leading-body);color:var(--text-dim)}.CaseStudy-module__3T9wKG__figures{gap:var(--s6) var(--s7);margin-bottom:var(--s5);flex-wrap:wrap;display:flex}.CaseStudy-module__3T9wKG__figure{font-family:var(--font-serif);font-size:var(--t-hero);line-height:var(--leading-display);font-variant-numeric:tabular-nums;color:var(--text);margin:0}.CaseStudy-module__3T9wKG__figureCaption{margin-top:var(--s2)}.CaseStudy-module__3T9wKG__chain{margin:0 0 var(--s5);padding:0;list-style:none;display:flex}.CaseStudy-module__3T9wKG__chainStep{min-width:0;padding:var(--s2) var(--s1);border:var(--border);border-radius:var(--radius);font-family:var(--font-mono);font-size:var(--t-meta);line-height:var(--leading-body);letter-spacing:var(--track-meta);text-transform:uppercase;text-align:center;color:var(--text);flex:1 1 0;position:relative}.CaseStudy-module__3T9wKG__chainStep+.CaseStudy-module__3T9wKG__chainStep{margin-left:var(--s4)}.CaseStudy-module__3T9wKG__chainStep:not(:last-child):after{content:"";width:var(--s4);border-top:1px solid var(--text);position:absolute;top:50%;left:100%}.CaseStudy-module__3T9wKG__stackList{gap:var(--s1) var(--s3);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.CaseStudy-module__3T9wKG__stackItem{font-family:var(--font-mono);font-size:var(--t-meta);letter-spacing:var(--track-meta);text-transform:uppercase;color:var(--text-dim);padding-block:var(--s1)}.CaseStudy-module__3T9wKG__footer{justify-content:space-between;align-items:baseline;gap:var(--s3);padding-block:var(--s4) var(--s6);border-top:var(--border);flex-wrap:wrap;display:flex}@media (max-width:767px){.CaseStudy-module__3T9wKG__grid{grid-template-columns:repeat(4,minmax(0,1fr))}.CaseStudy-module__3T9wKG__mastheadLabel,.CaseStudy-module__3T9wKG__title,.CaseStudy-module__3T9wKG__mastheadContext,.CaseStudy-module__3T9wKG__sectionLabel,.CaseStudy-module__3T9wKG__sectionBody{grid-column:1/-1}.CaseStudy-module__3T9wKG__masthead{padding-block:var(--s6) var(--s5)}.CaseStudy-module__3T9wKG__section{padding-block:0 var(--s6)}.CaseStudy-module__3T9wKG__sectionRule{margin-bottom:var(--s6)}.CaseStudy-module__3T9wKG__mastheadContext{margin-top:var(--s4)}.CaseStudy-module__3T9wKG__sectionLabel{margin-bottom:var(--s2)}.CaseStudy-module__3T9wKG__sectionTitle{font-size:var(--t-h3)}.CaseStudy-module__3T9wKG__figure{font-size:var(--t-h2)}.CaseStudy-module__3T9wKG__chain{flex-direction:column}.CaseStudy-module__3T9wKG__chainStep+.CaseStudy-module__3T9wKG__chainStep{margin-left:0;margin-top:var(--s4)}.CaseStudy-module__3T9wKG__chainStep:not(:last-child):after{width:0;height:var(--s4);border-top:none;border-left:1px solid var(--text);top:100%;left:50%}}
