/* A case is a sequence of decisions and the work that makes them visible. */
.case-curated[data-project="41-eyewear"] .fortyone-architecture{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#d8d8d6;border:1px solid #d8d8d6;margin:0 0 2rem}
.case-curated[data-project="41-eyewear"] .fortyone-architecture>div{min-width:0;display:flex;flex-direction:column;justify-content:space-between;gap:2rem;background:#f4f4f4;padding:clamp(1.25rem,3vw,2.75rem)}
.case-curated[data-project="41-eyewear"] .fortyone-role{font-size:.85rem;line-height:1.4;color:#525252}
.case-curated[data-project="41-eyewear"] .fortyone-architecture strong{font-family:Archivo,sans-serif;font-weight:800;font-size:clamp(1.6rem,4vw,3.9rem);line-height:.98;letter-spacing:-.055em;overflow-wrap:anywhere;color:#000}
.case-curated[data-project="41-eyewear"] .fortyone-architecture>div:last-child{background:#ff007b}
.case-curated[data-project="41-eyewear"] .fortyone-architecture>div:last-child .fortyone-role{color:#000}
.case-curated[data-project="41-eyewear"] .fortyone-voice{display:grid;grid-template-columns:2fr 1fr;align-items:end;gap:2rem;padding:clamp(1.25rem,3vw,2.75rem);background:#f4f4f4;border-left:5px solid #ff007b;margin:0 0 2rem}
.case-curated[data-project="41-eyewear"] .fortyone-voice strong{font-family:Archivo,sans-serif;font-size:clamp(1.6rem,3.9vw,3.65rem);font-weight:800;letter-spacing:-.05em;line-height:1.02;color:#000}
.case-curated[data-project="41-eyewear"] .fortyone-voice>span{font-size:clamp(1rem,2vw,1.4rem);line-height:1.3;letter-spacing:-.025em;color:#000}
@media(max-width:620px){.case-curated[data-project="41-eyewear"] .fortyone-architecture,.case-curated[data-project="41-eyewear"] .fortyone-voice{grid-template-columns:1fr}.case-curated[data-project="41-eyewear"] .case-palette li{flex-basis:50%}}
.case-page.editorial-case.case-curated .case-main{display:block;width:100%;margin:0;padding-top:0;overflow:clip}
.case-curated{--case-width:78rem;--case-gap:clamp(1rem,2.4vw,2rem);--case-space:clamp(3.25rem,6vw,6rem);--case-tint:#f2f2f0}
.case-curated .case-opening,.case-curated .case-context,.case-curated .case-idea,.case-curated .case-chapter-section,.case-curated .case-outcome{width:calc(100% - 2 * var(--gutter));max-width:var(--case-width);margin-inline:auto;box-sizing:border-box}
.case-curated .case-opening{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,6rem);align-items:center;padding:clamp(2rem,4vw,4.5rem) 0 var(--case-space)}
.case-curated .case-opening-copy{min-width:0}
.case-curated .case-discipline{font-size:.875rem;font-weight:500;line-height:1.5;margin:0 0 1.5rem;color:#555;max-width:27rem}
.case-curated .case-opening h1{font-family:Archivo,sans-serif;font-weight:650;font-size:clamp(3rem,5.8vw,6.4rem);line-height:1.02;letter-spacing:-.055em;padding:0;margin:0 0 1.8rem;overflow-wrap:normal;color:var(--red)}
.case-curated .case-opening h1 span{display:block}
.case-curated .case-intro{font-size:clamp(1.15rem,1.7vw,1.55rem);line-height:1.45;letter-spacing:-.018em;max-width:29rem;margin:0;text-wrap:pretty}
.case-curated .case-opening-image{width:min(100%,30rem);aspect-ratio:4/5;margin:0;justify-self:center;background:var(--cover-surface,var(--case-tint));overflow:hidden}
.case-curated .case-opening-image img{display:block;width:100%;height:100%;object-fit:var(--cover-fit,cover);object-position:var(--cover-focus,50% 50%);padding:var(--cover-inset,0);margin:0;transform:none}
.case-curated .case-opening-image.is-logo img{object-fit:contain;padding:clamp(2.5rem,5vw,5rem)}
.case-curated .case-context{display:grid;grid-template-columns:1fr 2fr;column-gap:var(--case-gap);padding:2rem 0 var(--case-space);border-top:1px solid #c9c9c7}
.case-curated .case-meta{margin:0;display:grid;gap:1.2rem;align-content:start}
.case-curated .case-meta dt{font-size:.875rem;color:#666;line-height:1.4;margin:0 0 .25rem}
.case-curated .case-meta dd{margin:0;font-size:1rem;line-height:1.5;max-width:21rem}
.case-curated .case-context h2{font-weight:600;font-size:clamp(1.8rem,3vw,3rem);line-height:1.14;letter-spacing:-.04em;margin:0 0 1.25rem;text-wrap:pretty}
.case-curated .case-context p{font-size:1.0625rem;line-height:1.65;margin:0;max-width:44rem;color:#404040;text-wrap:pretty}
.case-curated .case-chapter-section{margin-top:0;margin-bottom:var(--case-space)}
.case-curated .case-chapter-heading{display:grid;grid-template-columns:1fr 2fr;gap:var(--case-gap);align-items:start;margin:0 0 2rem;padding-top:1.5rem;border-top:1px solid #d8d8d6}
.case-curated .case-chapter-heading h2{font-size:clamp(1.55rem,2.25vw,2.15rem);line-height:1.16;letter-spacing:-.035em;font-weight:600;margin:0;text-wrap:pretty;max-width:23rem}
.case-curated .case-chapter-heading p{font-size:1.0625rem;line-height:1.65;margin:0;max-width:44rem;color:#404040;text-wrap:pretty}
.case-curated .case-media-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(1.5rem,3vw,3rem) var(--case-gap);align-items:center}
.case-curated .case-media-row{grid-column:1/-1;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--case-gap);align-items:center;min-width:0}
.case-curated .case-media-row .case-piece{grid-column:span var(--piece-span,4)}
.case-curated .case-piece{--max-media-height:38rem;grid-column:span 4;min-width:0;margin:0;align-self:center;justify-self:center;width:100%;max-width:min(30rem,calc(var(--max-media-height) * var(--media-aspect)))}
.case-curated .case-piece.is-landscape{grid-column:span 6;max-width:min(100%,calc(var(--max-media-height) * var(--media-aspect)))}
.case-curated .case-piece.is-panorama{grid-column:span 8;max-width:60rem}
.case-curated .case-piece.is-feature{grid-column:1/-1;max-width:min(64rem,calc(var(--max-media-height) * var(--media-aspect)))}
.case-curated .case-piece img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center;aspect-ratio:var(--media-ratio);margin:0;transform:none;background:transparent}
.case-curated .case-piece.is-artwork{background:var(--case-tint);padding:clamp(.9rem,1.6vw,1.4rem)}
.case-curated .case-piece.is-artwork img{max-height:32rem}
.case-curated .case-piece figcaption{font-size:.9375rem;line-height:1.5;margin:.8rem 0 0;padding:0;color:#555;text-wrap:pretty}
.case-curated .case-piece.is-artwork figcaption{padding-top:.2rem}
.case-curated .case-media-grid[data-count="1"] .case-piece{grid-column:1/-1}
.case-curated .case-media-grid[data-count="2"] .case-piece{grid-column:span 6}
.case-curated .case-media-grid[data-count="3"] .case-piece{grid-column:span 4;max-width:30rem}
.case-curated .case-film-piece{grid-column:span 4;max-width:min(27rem,calc(var(--max-media-height) * var(--media-aspect)))}
.case-curated .case-film-piece.is-landscape{grid-column:1/-1;max-width:64rem}
.case-curated .case-film-piece video{width:100%;height:auto;max-height:none;aspect-ratio:var(--media-ratio,9/16);display:block;object-fit:contain;background:#111;border:0}
.case-curated .case-film-link{display:inline-block;margin-top:.4rem;font-size:.875rem;color:inherit;text-decoration:underline;text-underline-offset:.22em}
.case-curated .case-media-grid .case-note{grid-column:span 4;padding:clamp(.5rem,2vw,2rem);align-self:center}
.case-curated .case-note h3{font-size:clamp(1.35rem,1.8vw,1.75rem);line-height:1.2;font-weight:600;letter-spacing:-.025em;margin:0 0 1rem}
.case-curated .case-note p{font-size:1rem;line-height:1.65;margin:0;color:#555}
.case-curated .case-design-notes{display:grid;grid-template-columns:1fr 1fr;gap:var(--case-gap);border-top:1px solid #d8d8d6;padding-top:2rem}
.case-curated .case-design-notes article{max-width:32rem}
.case-curated .case-design-notes h2{font-size:clamp(1.5rem,2.2vw,2rem);font-weight:600;letter-spacing:-.035em;line-height:1.15;margin:0 0 1rem}
.case-curated .case-design-notes p{font-size:1.0625rem;line-height:1.65;margin:0;color:#404040}
.case-curated[data-project="blackjack"] .case-piece img{height:clamp(16rem,32vw,31rem);max-height:none;aspect-ratio:auto}
.case-curated[data-project="neutre"] .case-opening h1{font-size:clamp(2.6rem,4.6vw,5.3rem)}
.case-curated[data-project="opti-privee-haz-pop"] .case-opening h1{font-size:clamp(2.6rem,4.6vw,5.3rem)}
.case-curated[data-project="chocolate-museum"] .case-opening h1{font-size:clamp(2.6rem,4.6vw,5.3rem)}
.case-curated .case-palette{display:flex;gap:0;margin:0 0 2rem;list-style:none;padding:0}
.case-curated .case-palette li{flex:1;min-width:0;padding:1.25rem 1rem;min-height:7rem;display:flex;align-items:end;background:var(--swatch);color:var(--swatch-ink,#111);font-size:.9375rem;line-height:1.4}
.case-curated .case-outcome{padding:2rem 0 var(--case-space);border-top:1px solid #111;display:grid;grid-template-columns:1fr 2fr;gap:var(--case-gap)}
.case-curated .case-outcome h2{font-size:clamp(1.6rem,2.25vw,2.3rem);line-height:1.15;font-weight:600;letter-spacing:-.035em;margin:0}
.case-curated .case-outcome p{font-size:1.0625rem;line-height:1.65;margin:0 0 1rem;max-width:44rem;color:#404040}
.case-curated .case-outcome a{display:inline-block;font-size:1rem;font-weight:600;color:var(--ink);text-decoration:underline;text-underline-offset:.3em}
/* Scope, the central idea and documented results form a readable case spine. */
.case-curated .case-role-list{list-style:none;padding:0;margin:0;display:grid;gap:.3rem}
.case-curated .case-meta .case-scope{margin-top:.35rem}
.case-curated .case-meta .case-scope dt{color:var(--ink);font-weight:600;margin-bottom:.65rem}
.case-curated .case-idea{display:grid;grid-template-columns:1fr 2fr;gap:var(--case-gap);padding:1.8rem 0 var(--case-space);border-top:1px solid var(--red)}
.case-curated .case-idea h2{font-size:clamp(1.55rem,2.25vw,2.15rem);line-height:1.16;letter-spacing:-.035em;font-weight:600;margin:0}
.case-curated .case-idea p{font-size:1.0625rem;line-height:1.65;margin:0;max-width:44rem;color:#404040;text-wrap:pretty}
.case-curated .case-idea .case-idea-statement{font-size:clamp(1.65rem,2.7vw,2.65rem);line-height:1.17;letter-spacing:-.035em;font-weight:600;color:var(--red);margin:0 0 1.4rem;max-width:42rem}
.case-curated .case-prose p+p{margin-top:1rem}
.case-curated .case-prose,.case-curated .case-chapter-heading>div,.case-curated .case-outcome>div{min-width:0}
.case-curated .case-eyebrow{font-size:.875rem;line-height:1.4;font-weight:500;color:#555;margin:0 0 .8rem;letter-spacing:0}
.case-curated .case-outcome-metrics{grid-column:1/-1;margin:1rem 0 0;padding:0;background:transparent;color:var(--ink)}
.case-curated .case-metrics{margin:0;display:flex;flex-wrap:wrap;gap:2rem;border-top:1px solid #d8d8d6;padding-top:2rem}
.case-curated .case-metrics>div{flex:1;min-width:13rem;display:flex;flex-direction:column}
.case-curated .case-metrics dt{font-size:1.0625rem;line-height:1.4;color:var(--ink);font-weight:600;margin:0 0 .9rem}
.case-curated .case-metrics dd{margin:0}
.case-curated .case-metrics strong{font-size:clamp(3.5rem,6.5vw,6rem);line-height:1;font-weight:600;letter-spacing:-.06em;display:block;color:var(--red);margin:0 0 .85rem}
.case-curated .case-metrics span{font-size:1rem;line-height:1.5;display:block;color:#555;max-width:25rem}
.case-curated .case-outcome-metrics .case-metrics-note{font-size:.875rem;line-height:1.5;margin:1.5rem 0 0;color:#666;max-width:none}
/* The same selected image is used by the opening, the home and the project index. */
body .work-selector .work-card-link .work-card-image{aspect-ratio:4/5;background:var(--cover-surface,var(--case-tint))}
body .work-selector .work-card-link .work-card-image img[data-case-cover]{object-fit:var(--cover-fit,cover);object-position:var(--cover-focus,50% 50%);padding:var(--cover-inset,0);width:100%;height:100%;transform:none}
body .project-index .index-preview img[data-case-cover]{object-fit:var(--cover-fit,cover);object-position:var(--cover-focus,50% 50%);padding:var(--cover-inset,0);background:var(--cover-surface,var(--case-tint));transform:none}
.case-curated .case-media-grid .case-media-row .case-piece{grid-column:span var(--piece-span,4)}
@media(min-width:1600px){.case-curated .case-opening h1{font-size:6.4rem}}
@media(max-width:1000px){
 .case-curated .case-opening{gap:2rem}.case-curated .case-opening h1{font-size:clamp(2.65rem,6.1vw,4.7rem)}
 .case-curated .case-piece,.case-curated .case-piece.is-panorama,.case-curated .case-media-grid[data-count="3"] .case-piece{grid-column:span 6}
 .case-curated .case-media-grid .case-note{grid-column:span 6}
 .case-curated .case-piece.is-feature,.case-curated .case-film-piece.is-landscape{grid-column:1/-1}
 .case-curated .case-media-row .case-piece{grid-column:span var(--piece-span,4)}
}
@media(max-width:640px){
 .case-curated .case-opening{grid-template-columns:1fr;gap:2rem;padding-top:2rem}
 .case-curated .case-opening h1{font-size:clamp(2.65rem,11.5vw,4.5rem);margin-bottom:1.15rem}
 .case-curated .case-discipline{margin-bottom:1rem}.case-curated .case-intro{font-size:1.125rem}
 .case-curated .case-opening-image{width:100%;max-width:26rem}
 .case-curated .case-context,.case-curated .case-idea,.case-curated .case-chapter-heading,.case-curated .case-outcome{grid-template-columns:1fr;gap:1.75rem}
 .case-curated .case-meta{grid-template-columns:1fr 1fr;gap:1rem}
 .case-curated .case-meta .case-scope{grid-column:1/-1;margin-top:.5rem}
 .case-curated .case-role-list{grid-template-columns:1fr 1fr;gap:.4rem 1rem}
 .case-curated .case-idea h2 br{display:none}
 .case-curated .case-metrics{gap:1.75rem}.case-curated .case-metrics>div{min-width:100%}
 .case-curated .case-meta dt{font-size:.875rem}.case-curated .case-meta dd{font-size:.9375rem}
 .case-curated .case-media-grid{grid-template-columns:1fr;gap:1.5rem}
 .case-curated .case-media-row{grid-template-columns:1fr;gap:1.5rem}
 .case-curated .case-media-grid .case-piece,.case-curated .case-media-grid .case-note{grid-column:1/-1;--max-media-height:36rem}
 .case-curated .case-media-grid .case-media-row .case-piece{grid-column:1/-1;max-width:min(30rem,calc(var(--max-media-height) * var(--media-aspect)))}
 .case-curated .case-design-notes{grid-template-columns:1fr}
 .case-curated[data-project="blackjack"] .case-piece img{height:auto;max-height:32rem}
 .case-curated[data-project] .case-opening h1{font-size:clamp(2.5rem,10.5vw,4rem)}
 .case-curated .case-piece img,.case-curated .case-film-piece video{max-height:none}
 .case-curated .case-chapter-heading{margin-bottom:1.5rem;padding-top:1.25rem}
 .case-curated .case-palette{flex-wrap:wrap}.case-curated .case-palette li{flex-basis:33%;padding:.9rem;min-height:5rem}
 .case-curated .case-media-grid .case-note{padding:1rem 0}
}
