.case{padding-top:clamp(7rem,10vw,11rem)}.case-hero{padding-bottom:clamp(2rem,4vw,4rem)}.case-hero__top{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--ink);padding-bottom:1.2rem;margin-bottom:clamp(2rem,5vw,4rem)}.case-hero__idx{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.14em;color:var(--ink-50)}.case-hero__title{font-family:var(--font-display);font-weight:var(--display-wght);font-variation-settings:"wght" var(--display-wght),"wdth" var(--display-wdth);text-transform:uppercase;line-height:.82;letter-spacing:var(--display-tracking);font-size:clamp(3.2rem,1rem + 16vw,15rem);margin:0}.case-hero__sub{font-size:var(--step-2);margin-top:1rem;max-width:24ch;line-height:1.1}.case-hero__meta{display:flex;flex-wrap:wrap;gap:clamp(1.5rem,4vw,4rem);margin-top:clamp(2rem,4vw,3.5rem);padding-top:1.4rem;border-top:1px solid var(--line)}.case-hero__meta .m{display:flex;flex-direction:column;gap:.4rem}.case-hero__meta .m h4{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-50)}.case-hero__meta .m p{font-size:var(--step-0)}.awardlink{position:relative}.awardlink:after{content:"";position:absolute;left:0;bottom:-2px;width:100%;height:1px;background:currentColor;transform:scaleX(1);transform-origin:left;transition:transform .35s var(--ease)}.awardlink:hover:after{transform:scaleX(0);transform-origin:right}.case-hero__meta .m .row{display:flex;gap:.4rem;flex-wrap:wrap;max-width:30ch}.tagchip{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--ink);border-radius:999px;padding:.26em .65em;white-space:nowrap}.case-links{margin-left:auto;display:flex;gap:.8rem;align-items:flex-start;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--ink);padding:.8em 1.3em;border-radius:999px;transition:background .35s var(--ease),color .35s var(--ease);white-space:nowrap}.btn:hover,.btn--solid{background:var(--ink);color:var(--paper)}.btn--solid:hover{background:var(--paper);color:var(--ink)}.case-lead{margin-block:clamp(2rem,5vw,5rem)}.shot{position:relative;overflow:hidden;background:var(--ink)}.shot img{width:100%;height:100%;object-fit:cover;display:block}.shot--wide{aspect-ratio:16/9}.shot--tall{aspect-ratio:3/4}.shot--sq{aspect-ratio:1/1}.shot__cap{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.04em;color:var(--ink-50);margin-top:.7rem;max-width:60ch}figure{margin:0}.case-sec{padding-block:clamp(3.5rem,7vw,8rem);border-top:1px solid var(--ink)}.case-sec__grid{display:grid;grid-template-columns:22rem 1fr;gap:clamp(2rem,5vw,5rem)}.case-sec__label{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.16em;text-transform:uppercase}.case-sec__label .n{display:block;color:var(--ink-50);margin-bottom:.6rem}.case-prose{max-width:60ch}.case-prose p{font-size:var(--step-1);line-height:1.5;color:var(--ink-70)}.case-prose p+p{margin-top:1.2rem}.case-prose .big{font-size:var(--step-2);line-height:1.25;color:var(--ink);letter-spacing:-.01em;margin-bottom:1.6rem}@media(max-width:820px){.case-sec__grid{grid-template-columns:1fr;gap:1.5rem}}.hl-list{list-style:none;counter-reset:hl}.hl{display:grid;grid-template-columns:4rem 1fr;gap:clamp(1rem,2vw,2rem);padding:clamp(1.4rem,2.5vw,2.2rem) 0;border-top:1px solid var(--line)}.hl:first-child{border-top:0}.hl__n{counter-increment:hl;font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.1em;color:var(--ink-50)}.hl__n:before{content:counter(hl,decimal-leading-zero)}.hl__h{font-family:var(--font-display);font-weight:700;font-variation-settings:"wght" 700,"wdth" 100;font-size:var(--step-1);text-transform:uppercase;letter-spacing:-.01em;line-height:1.05;margin-bottom:.5rem}.hl__p{color:var(--ink-70);max-width:64ch}.gallery{display:flex;flex-direction:column;gap:clamp(4rem,8vw,8rem)}.gfig{display:grid;grid-template-columns:1.55fr 1fr;gap:clamp(1.5rem,4vw,4rem);align-items:center}.gfig:nth-child(2n) .gfig__frame{order:2}.gfig__frame{background:var(--paper);border:1px solid var(--line);overflow:hidden}.gfig__frame img{width:100%;height:auto;display:block}.gfig__cap{display:flex;flex-direction:column;gap:.9rem;max-width:30ch}.gfig__n{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.14em;color:var(--ink-50)}.gfig__text{font-size:var(--step-1);line-height:1.32;color:var(--ink);letter-spacing:-.005em}@media(max-width:760px){.gfig{grid-template-columns:1fr;gap:1.2rem}.gfig:nth-child(2n) .gfig__frame{order:0}.gfig__cap{max-width:60ch;flex-direction:row;gap:1rem;align-items:baseline}}.tech-list{display:flex;flex-wrap:wrap;gap:.7rem}.tech-list .tagchip{font-size:12px;padding:.5em .9em}.case-abstract{font-size:var(--step-1);line-height:1.55;color:var(--ink-70);max-width:70ch}.metrics{display:flex;flex-wrap:wrap;gap:clamp(1.5rem,4vw,3rem);margin-top:1.8rem}.metric .v{font-family:var(--font-display);font-weight:var(--display-wght);font-variation-settings:"wght" var(--display-wght),"wdth" 100;font-size:var(--step-2)}.metric .k{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-50)}.case-note{border:1px solid var(--ink);padding:clamp(1.4rem,3vw,2.2rem);display:flex;flex-direction:column;gap:1rem;max-width:60ch;align-items:flex-start}.case-note h4{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase}.case-note p{color:var(--ink-70)}.case-next{display:block;border-top:1px solid var(--ink);padding-block:clamp(3rem,7vw,7rem)}.case-next__lab{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-50)}.case-next__title{font-family:var(--font-display);font-weight:var(--display-wght);font-variation-settings:"wght" var(--display-wght),"wdth" var(--display-wdth);text-transform:uppercase;line-height:.85;letter-spacing:var(--display-tracking);font-size:clamp(3rem,1rem + 13vw,13rem);margin-top:.6rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;transition:color .4s var(--ease)}.case-next:hover .case-next__title{color:var(--ink-50)}.case-next__arrow{width:clamp(2rem,5vw,5rem);flex:none;transition:transform .5s var(--ease)}.case-next:hover .case-next__arrow{transform:translate(12px)}.case-back{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.1em;text-transform:uppercase}.case-back svg{width:1.1rem;transition:transform .4s var(--ease)}.case-back:hover svg{transform:translate(-5px)}
