html:has(.case-study__contents){scroll-behavior:smooth}.case-studies__hero{padding-bottom:64px}.case-studies__disciplines{max-width:80ch;color:var(--text-dim);margin:32px 0 0;font-size:13px;line-height:1.9}.case-studies__listing{padding-top:48px}.case-studies__heading{font-size:clamp(30px,3.5vw,42px)}.case-card{gap:0;padding:0;position:relative;overflow:hidden}.case-card__media{background:var(--surface-alt);border-bottom:1px solid var(--glass-border);height:260px;position:relative;overflow:hidden}.case-card__image{object-fit:cover;width:100%;height:100%;margin:0;padding:0;display:block;position:absolute;inset:0}.case-card__body{flex-direction:column;flex:1;align-items:flex-start;gap:20px;padding:clamp(24px,3vw,36px);display:flex}.case-card__body .desc{margin:0}.case-card__title a:after{z-index:1;content:"";position:absolute;inset:0}.case-card__link{z-index:2;min-height:44px;margin-top:auto;position:relative}.case-studies a:focus-visible,.case-study a:focus-visible{outline:2px solid var(--accent-glow);outline-offset:5px;border-radius:4px}.case-study__hero{padding-bottom:48px}.case-study__back{color:var(--text-dim);margin-bottom:40px;font-size:14px;display:inline-block}.case-study__hero .h-hero{max-width:20ch;margin-top:20px}.case-study__hero .h-sub{max-width:65ch;margin-top:24px}.case-study__meta{border-top:1px solid var(--line);grid-template-columns:1fr 2fr;gap:32px;margin:40px 0 0;padding-top:28px;display:grid}.case-study__meta dt{letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);margin-bottom:10px;font-size:11px}.case-study__technologies{overflow-wrap:anywhere;grid-column:1/-1;min-width:0}.case-study__meta dd{margin:0;font-size:15px}.case-study__cover{border:1px solid var(--glass-border);border-radius:var(--r-lg);background:var(--surface-alt);height:376px;margin:64px 0 0;position:relative;overflow:hidden}.case-study__image{object-fit:cover;width:100%;height:100%;margin:0;padding:0;display:block;position:absolute;inset:0}.case-study__layout{grid-template-columns:240px minmax(0,1fr);gap:clamp(32px,6vw,88px);padding-top:64px;display:grid}.case-study__contents{align-self:start;position:sticky;top:100px}.case-study__contents ol{color:var(--text-dim);margin-top:20px;padding-left:24px;font-size:13px}.case-study__contents li{padding:7px 0 7px 6px}.case-study__contents a{padding-block:4px;transition:color .15s;display:inline-block}.case-study__contents a:hover{color:var(--text)}.case-study__contents a[aria-current=location]{color:var(--accent-glow);font-weight:600}@media (prefers-reduced-motion:reduce){html:has(.case-study__contents){scroll-behavior:auto}.case-study__contents a{transition:none}}.case-study__section{border-top:1px solid var(--line);padding:36px 0 48px;scroll-margin-top:100px}.case-study__section h2{margin:14px 0 24px;font-size:clamp(28px,3vw,38px);line-height:1.12}.case-study__prose{max-width:68ch;color:var(--text-dim);overflow-wrap:anywhere;line-height:1.85}.case-study__prose p{margin:0 0 20px}.case-study__prose p:last-child{margin-bottom:0}.case-study__prose strong{color:var(--text);font-weight:500}.case-study__prose a{color:var(--accent-glow);text-decoration:underline}.case-study__prose h3{color:var(--text);margin:28px 0 16px;font-size:23px}.case-study__prose img{height:auto}.case-study__section--outcome{background:var(--glass-bg);border:1px solid var(--glass-border-strong);border-radius:var(--r-lg);margin-bottom:48px;padding:32px}.case-study__end{border-top:1px solid var(--line);flex-wrap:wrap;gap:16px;padding-block:40px 80px;display:flex}.case-studies .pagination{margin-top:40px}.case-studies .page-numbers{padding:10px 16px;display:inline-block}@media (width<=760px){.case-study__layout{grid-template-columns:1fr;gap:24px;padding-top:40px}.case-study__contents{position:static}.case-study__contents ol{columns:2;column-gap:28px}.case-study__contents li{break-inside:avoid}.case-study__meta{grid-template-columns:1fr;gap:20px}.case-study__cover{height:220px;margin-top:40px}.case-card__media{height:210px}.case-study__section--outcome{padding:24px}}@media (width<=380px){.case-study__contents ol{columns:1}}.case-studies .work-grid{grid-auto-rows:1fr;align-items:stretch}.case-study__story{min-width:0}.case-study__prose .case-editorial__flow,.case-study__prose .case-editorial__workflow,.case-study__prose .case-editorial__evidence,.case-study__prose .case-editorial__comparison,.case-study__prose .case-editorial__principles,.case-study__prose .case-editorial__resource,.case-study__prose .case-editorial__insight{margin:32px 0}.case-study__prose .case-editorial__label{color:var(--text-dim);letter-spacing:.1em;text-transform:uppercase;font-size:12px;font-weight:600}.case-study__prose .case-editorial__flow{counter-reset:case-step;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;list-style:none;display:grid}.case-study__prose .case-editorial__flow>li{border:1px solid var(--glass-border-strong);border-top:2px solid var(--accent-glow);background:var(--surface-alt);min-width:0;color:var(--text);counter-increment:case-step;border-radius:4px;padding:18px;font-size:14px;line-height:1.6;position:relative}.case-study__prose .case-editorial__flow>li:before{content:counter(case-step, decimal-leading-zero);color:var(--accent-glow);font-variant-numeric:tabular-nums;margin-bottom:12px;font-size:12px;display:block}.case-study__prose .case-editorial__flow--pipeline{grid-template-columns:1fr;gap:0;padding-left:12px}.case-study__prose .case-editorial__flow--pipeline>li{border:0;border-left:2px solid var(--accent-glow);border-bottom:1px solid var(--line);background:0 0;border-radius:0;grid-template-columns:28px minmax(0,1fr);gap:16px;padding:14px 20px;display:grid}.case-study__prose .case-editorial__flow--pipeline>li:before{line-height:inherit;margin:0}.case-study__prose .case-editorial__workflow{counter-reset:workflow-step;grid-template-columns:repeat(5,minmax(0,1fr));padding:0;list-style:none;display:grid;position:relative}.case-study__prose .case-editorial__workflow:before{background:var(--glass-border-strong);content:"";height:2px;position:absolute;top:79px;left:10%;right:10%}.case-study__prose .case-editorial__workflow-step{min-width:0;min-height:160px;color:var(--text);text-align:center;counter-increment:workflow-step;flex-direction:column;align-items:center;display:flex;position:relative}.case-study__prose .case-editorial__workflow-step:before{color:var(--accent-glow);font-variant-numeric:tabular-nums;letter-spacing:.08em;content:counter(workflow-step, decimal-leading-zero);font-size:12px}.case-study__prose .case-editorial__workflow-step:after{border:2px solid var(--accent-glow);background:var(--surface-alt);content:"";border-radius:50%;width:14px;height:14px;position:absolute;top:73px;left:calc(50% - 7px)}.case-study__prose .case-editorial__workflow-step--below{padding-top:104px}.case-study__prose .case-editorial__workflow-label{font-size:clamp(14px,1.6vw,18px);font-weight:600;line-height:1.45;display:block}.case-study__prose .case-editorial__insight{border:0;border-left:3px solid var(--accent-glow);color:var(--text);padding:8px 0 8px 24px;font-size:clamp(19px,2vw,24px);line-height:1.6}.case-study__prose .case-editorial__evidence{border-block:1px solid var(--glass-border-strong);grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:24px;padding:28px 0;display:grid}.case-study__prose .case-editorial__evidence dt{color:var(--text);letter-spacing:-.04em;font-size:clamp(32px,4vw,48px);font-weight:500;line-height:1.2}.case-study__prose .case-editorial__evidence dd{margin:12px 0 0;font-size:13px;line-height:1.65}.case-study__prose .case-editorial__comparison,.case-study__prose .case-editorial__principles{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.case-study__prose .case-editorial__comparison>div,.case-study__prose .case-editorial__principles>div{background:var(--surface-alt);border:1px solid var(--glass-border);border-radius:6px;min-width:0;padding:24px}.case-study__prose .case-editorial__comparison h3,.case-study__prose .case-editorial__comparison h4,.case-study__prose .case-editorial__principles h3,.case-study__prose .case-editorial__principles h4{color:var(--text);margin:0 0 16px;font-size:19px;line-height:1.45}.case-study__prose .case-editorial__comparison ul,.case-study__prose .case-editorial__principles ul{margin:0;padding-left:20px}.case-study__prose .case-editorial__comparison li,.case-study__prose .case-editorial__comparison p,.case-study__prose .case-editorial__principles li,.case-study__prose .case-editorial__principles p{font-size:14px;line-height:1.8}.case-study__prose .case-editorial__principles>div:last-child:nth-child(odd){grid-column:1/-1}.case-study__prose .case-editorial__resource{background:var(--surface-alt);border:1px solid var(--glass-border-strong);border-radius:6px;padding:28px}.case-study__prose .case-editorial__resource a{text-underline-offset:5px;padding-block:8px;font-size:21px;display:inline-block}.case-study__prose pre{white-space:pre-wrap;max-width:100%}@media (width>=761px) and (width<=1000px){.case-study__cover{height:300px}.case-card__media{height:220px}.case-study__layout{grid-template-columns:180px minmax(0,1fr);gap:32px}}@media (width<=1000px){.case-study__prose .case-editorial__flow{grid-template-columns:repeat(2,minmax(0,1fr))}.case-study__prose .case-editorial__flow--pipeline,.case-study__prose .case-editorial__comparison,.case-study__prose .case-editorial__principles{grid-template-columns:1fr}}@media (width<=540px){.case-study__prose .case-editorial__flow{grid-template-columns:1fr}}@media (width<=680px){.case-study__prose .case-editorial__workflow{display:block}.case-study__prose .case-editorial__workflow:before{width:2px;height:auto;inset:28px auto 28px 10px}.case-study__prose .case-editorial__workflow-step,.case-study__prose .case-editorial__workflow-step--below{text-align:left;flex-direction:row;justify-content:flex-start;gap:12px;min-height:68px;padding:12px 0 12px 48px}.case-study__prose .case-editorial__workflow-step:after,.case-study__prose .case-editorial__workflow-step--below:after{top:27px;left:4px}.case-study__prose .case-editorial__workflow-label{font-size:17px}}