.work-study{max-width:1320px;margin:0 auto;padding:70px 80px 100px;color:#1f365b}.work-study__intro{display:flex;justify-content:space-between;align-items:end;padding-bottom:35px;border-bottom:1px dashed #bcc6d3;margin-bottom:45px;gap:30px}.work-study__intro h1{font:400 clamp(44px,6vw,80px)/1.1 'Roboto Slab',serif;margin:0}.work-study__intro p{font-size:18px;line-height:1.5;max-width:330px;margin:0;color:#6c737e}.work-study__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:65px 35px}.work-study__card:first-child{grid-column:1/-1}.work-study__card{color:inherit;display:block;text-decoration:none}.work-study__visual{aspect-ratio:16/9;position:relative;overflow:hidden;background:#e8ebee}.work-study__visual img,.work-study__visual video{width:100%;height:100%;object-fit:cover;display:block}.work-study__visual video{position:absolute;inset:0;opacity:0;transition:opacity .3s}.work-study__card:hover video,.work-study__card:focus-visible video{opacity:1}.work-study__caption{display:flex;justify-content:space-between;gap:20px;padding-top:18px}.work-study__caption h2{font-size:25px;margin:0;line-height:1.3}.work-study__caption p{font:12px/1.6 'IBM Plex Mono',monospace!important;margin:7px 0 0;color:#6c737e}.work-study__arrow{font-size:30px}.work-study__card:focus-visible{outline:2px solid #1f365b;outline-offset:8px}.work-case{position:fixed;inset:0;z-index:2000;background:#f6f6f6;overflow:auto;color:#1f365b}.work-case[hidden]{display:none}.work-case__close{position:fixed;top:20px;right:25px;z-index:2002;background:white;color:#1f365b;border:0;padding:12px 20px;cursor:pointer;font:14px 'IBM Plex Mono',monospace!important;box-shadow:none;text-shadow:none}.work-case__hero{width:100%;height:100svh;background:#101010;position:relative;overflow:hidden}.work-case__hero img,.work-case__hero video{width:100%;height:100%;object-fit:contain;display:block}.work-case__hero video{position:absolute;inset:0}.work-case__body{max-width:1100px;margin:auto;padding:80px 40px 120px}.work-case__body h1{font-size:clamp(36px,6vw,80px);line-height:1.1;margin:10px 0 25px}.work-case__body p{font-size:22px;color:#6c737e;line-height:1.6}.work-case__label{font:13px 'IBM Plex Mono',monospace!important}.work-transition{position:fixed;z-index:2001;object-fit:cover;pointer-events:none}.work-case__body a{text-decoration:underline;text-underline-offset:6px;color:#1f365b}@media(max-width:1100px){.work-study{padding-inline:40px}}@media(max-width:700px){.work-study{padding:40px 20px 70px}.work-study__intro{display:block}.work-study__intro p{margin-top:20px}.work-study__grid{grid-template-columns:1fr;gap:40px}.work-study__caption h2{font-size:23px}.work-case__hero{height:65svh}.work-case__body{padding:45px 20px}.work-case__close{top:12px;right:12px}}@media(prefers-reduced-motion:reduce){.work-study__visual video{transition:none}}

.work-study__year{margin-left:auto;padding-top:5px;font:13px/1.6 'IBM Plex Mono',monospace!important;color:#6c737e}.work-study__caption>div{flex:1}.work-archive{margin-top:110px;border-top:1px dashed #bcc6d3;padding-top:35px}.work-archive__intro{display:flex;justify-content:space-between;align-items:baseline;gap:25px;margin-bottom:70px}.work-archive__intro h2{font-size:35px;font-weight:400;margin:0}.work-archive__intro p{color:#6c737e;font-size:16px}.work-archive__row{display:grid;grid-template-columns:140px 1fr 35px;align-items:center;gap:35px;padding:30px 0;color:#1f365b;text-decoration:none;opacity:.45;transition:opacity .35s,transform .5s;border-bottom:1px dashed #bcc6d3}.work-archive__row.is-active,.work-archive__row:hover,.work-archive__row:focus-visible{opacity:1}.work-archive__row img{width:140px;aspect-ratio:16/10;object-fit:cover;transform:scale(.9);transition:transform .5s}.work-archive__row.is-active img,.work-archive__row:hover img{transform:scale(1)}.work-archive__row>span{font-size:clamp(25px,4vw,55px);line-height:1.2}.work-archive__row .work-archive__exit{font-size:27px}@media(max-width:700px){.work-archive{margin-top:70px}.work-archive__intro{display:block;margin-bottom:30px}.work-archive__row{grid-template-columns:75px 1fr 22px;gap:15px}.work-archive__row img{width:75px}.work-archive__row>span{font-size:24px}}

/* A pinned, scroll-driven index: one active name and one shared thumbnail. */
.work-archive__stage{position:relative}
.work-archive__preview{display:none}
.work-archive__exit svg{display:block;width:23px;height:23px}
.work-archive.is-pinned .work-archive__stage{height:100svh;overflow:hidden;isolation:isolate;background:#f6f6f6}
.work-archive.is-pinned .work-archive__list{position:relative;margin-left:200px;will-change:transform}
.work-archive.is-pinned .work-archive__row{display:flex;justify-content:center;gap:20px;border:0;padding:18px 0;min-height:90px;box-sizing:border-box;opacity:.24;transition:opacity .25s;text-align:center;transform:none}
.work-archive.is-pinned .work-archive__row>span:first-of-type{font-size:clamp(30px,4.3vw,62px);font-weight:400;letter-spacing:-.025em;line-height:1.15}
.work-archive.is-pinned .work-archive__row>img{display:none}
.work-archive.is-pinned .work-archive__row.is-active,.work-archive.is-pinned .work-archive__row:focus-visible{opacity:1}
.work-archive.is-pinned .work-archive__exit{align-self:center;flex:none;opacity:0;transition:opacity .25s}
.work-archive.is-pinned .is-active .work-archive__exit,.work-archive.is-pinned .work-archive__row:focus-visible .work-archive__exit{opacity:1}
.work-archive.is-pinned .work-archive__preview{display:block;position:absolute;top:calc(50% - 60px);left:0;width:180px;height:120px;object-fit:cover;border-radius:3px;pointer-events:none}
@media(max-width:700px){.work-archive.is-pinned .work-archive__list{margin-left:95px}.work-archive.is-pinned .work-archive__preview{width:82px;height:62px;top:calc(50% - 31px)}.work-archive.is-pinned .work-archive__row{min-height:110px;padding:18px 0;gap:8px}.work-archive.is-pinned .work-archive__row>span:first-of-type{font-size:28px}.work-archive__exit svg{width:18px;height:18px}}

.work-archive.is-pinned .work-archive__row{transform-origin:50% 50%;will-change:transform;transition:opacity .25s}

/* Circular positions replace the translated vertical list and per-row tilts. */
.work-archive.is-pinned .work-archive__list{position:absolute;inset:0;margin:0;transform:none}
.work-archive.is-pinned .work-archive__row{position:absolute;left:64%;top:50%;width:calc(100% - 210px);min-height:0;padding:16px 0;white-space:nowrap;transform-origin:center;justify-content:center}
.work-archive.is-pinned .work-archive__row>span:first-of-type{font-size:clamp(27px,3.6vw,54px)}
@media(max-width:700px){.work-archive.is-pinned .work-archive__row{left:66%;width:calc(100% - 100px);white-space:normal}.work-archive.is-pinned .work-archive__row>span:first-of-type{font-size:25px}.work-archive.is-pinned .work-archive__preview{z-index:2}}

/* Left-aligned labels ride the same circular track. */
.work-archive.is-pinned .work-archive__row{left:29%;width:70%;justify-content:flex-start;text-align:left}
.work-archive__preview{overflow:hidden}
.work-archive__preview img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:700px){.work-archive.is-pinned .work-archive__row{left:31%;width:68%}.work-archive.is-pinned .work-archive__row>span:first-of-type{font-size:23px}}
/* Staggered selected-work study: three ascending columns, open space between rows. */
.work-study__intro{align-items:center;border-bottom:0;margin-bottom:75px;padding-bottom:0}
.work-study__intro>p{position:relative;max-width:310px;padding:22px 26px;border:1px dashed #bcc6d3;color:#1f365b}
.work-study__intro>p::before{content:"";position:absolute;top:-5px;left:-5px;width:10px;height:10px;box-sizing:border-box;background:#f6f6f6;border:1px solid #a7b2c2}
.work-study__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:65px 28px;align-items:start}
.work-study__card:first-child{grid-column:auto}
.work-study__card:nth-child(3n+2){margin-top:95px}
.work-study__card:nth-child(3n){margin-top:190px}
.work-study__card:nth-child(4){grid-column:1}
.work-study__card:nth-child(5){grid-column:2}
.work-study__visual{aspect-ratio:16/9}
.work-study__visual img{object-fit:cover}
.work-study__caption{position:relative;gap:12px;border-top:1px dashed #bcc6d3;margin-top:18px;padding-top:15px;align-items:baseline}
.work-study__caption::before{content:"";position:absolute;top:-5px;right:-5px;width:9px;height:9px;box-sizing:border-box;background:#f6f6f6;border:1px solid #a7b2c2}
.work-study__caption h2{font-size:23px}
.work-study__caption p{font-size:11px!important}
.work-study__year{font-size:12px!important;white-space:nowrap}
.work-study__arrow{font-size:24px}
@media(min-width:1500px){.work-study__card:nth-child(3n+2){margin-top:115px}.work-study__card:nth-child(3n){margin-top:230px}}
@media(max-width:1000px) and (min-width:701px){.work-study__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:55px 28px}.work-study__card:nth-child(n){grid-column:auto;margin-top:0}.work-study__card:nth-child(2n){margin-top:95px}}
@media(max-width:700px){.work-study__intro{margin-bottom:45px}.work-study__intro>p{margin-top:28px;padding:20px;max-width:none}.work-study__grid{grid-template-columns:1fr;gap:45px}.work-study__card:nth-child(n){grid-column:auto;margin-top:0}.work-study__visual{aspect-ratio:16/9}.work-study__caption h2{font-size:24px}}

/* Match the shared footer grid; gutters live outside the content width. */
.work-study{box-sizing:border-box;width:calc(100% - 160px);max-width:1320px;margin-inline:auto;padding:65px 0 100px}
header.main nav{box-sizing:border-box;width:calc(100% - 160px);max-width:1320px;margin-inline:auto;padding-left:0;padding-right:0}
.work-study__intro{position:relative;align-items:center;gap:55px;margin-bottom:45px;padding-bottom:35px;border-bottom:1px dashed #bcc6d3}
.work-study__intro>p{box-sizing:border-box;max-width:420px;font-size:19px;line-height:1.55;padding:22px 26px;margin:0}
.work-study__grid{gap:45px 22px}
.work-study__card:nth-child(3n+2){margin-top:65px}
.work-study__card:nth-child(3n){margin-top:130px}
@media(min-width:1500px){.work-study__card:nth-child(3n+2){margin-top:80px}.work-study__card:nth-child(3n){margin-top:160px}}
@media(max-width:1100px){.work-study,header.main nav{width:calc(100% - 80px)}.work-study__intro{gap:30px}.work-study__intro>p{max-width:340px;font-size:18px}}
@media(max-width:1000px) and (min-width:701px){.work-study__card:nth-child(n){margin-top:0}.work-study__card:nth-child(2n){margin-top:65px}}
@media(max-width:700px){.work-study,header.main nav{width:calc(100% - 40px)}.work-study{padding:40px 0 70px}.work-study__intro{margin-bottom:35px;padding-bottom:30px}.work-study__intro>p{margin-top:25px;max-width:none;padding:20px;font-size:17px}.work-study__card:nth-child(n){margin-top:0}.work-study__grid{gap:38px}}
/* Stronger positioning and a restrained glass sweep over project covers. */
.work-study__intro>p{font-weight:500}
.work-study__visual img{transition:transform 650ms cubic-bezier(.22,1,.36,1);transform:scale(1);will-change:transform}
.work-study__visual::after{content:"";position:absolute;top:-25%;left:-65%;width:40%;height:150%;pointer-events:none;background:linear-gradient(105deg,transparent 0%,rgba(255,255,255,.05) 25%,rgba(255,255,255,.24) 50%,rgba(255,255,255,.05) 75%,transparent 100%);transform:skewX(-18deg) translateX(0);opacity:0}
@media(hover:hover){.work-study__card:hover .work-study__visual img{transform:scale(1.045)}.work-study__card:hover .work-study__visual::after{animation:work-glass-sweep 850ms cubic-bezier(.22,1,.36,1) both}}
.work-study__card:focus-visible .work-study__visual img{transform:scale(1.045)}
.work-study__card:focus-visible .work-study__visual::after{animation:work-glass-sweep 850ms cubic-bezier(.22,1,.36,1) both}
@keyframes work-glass-sweep{0%{left:-65%;opacity:0}15%{opacity:1}80%{opacity:1}100%{left:125%;opacity:0}}
@media(prefers-reduced-motion:reduce){.work-study__visual img{transition:none;transform:none!important}.work-study__visual::after{animation:none!important;display:none}}
/* Anchor the blueprint detail directly to the cover, not the caption. */
.work-study__visual{border-radius:2px}
.work-study__caption{border-top:0;margin-top:0;padding-top:18px}
.work-study__caption::before{display:none}
.work-study__card{position:relative}
.work-study__visual{overflow:visible}
.work-study__visual img{border-radius:2px}
/* A separate clipped inner frame keeps zoom and glass inside the rounded cover. */
.work-study__image-frame{position:absolute;inset:0;overflow:hidden;border-radius:2px}
.work-study__visual::before{content:"";position:absolute;left:0;right:0;bottom:0;border-bottom:1px dashed #bcc6d3;z-index:2;pointer-events:none}
.work-study__visual>.work-study__corner{position:absolute;right:-4px;bottom:-4px;width:9px;height:9px;box-sizing:border-box;border:1px solid #a7b2c2;background:#f6f6f6;z-index:3;pointer-events:none}
.work-study__visual::after{display:none}
.work-study__image-frame::after{content:"";position:absolute;top:-25%;left:-65%;width:40%;height:150%;pointer-events:none;background:linear-gradient(105deg,transparent,rgba(255,255,255,.24),transparent);transform:skewX(-18deg);opacity:0}
@media(hover:hover){.work-study__card:hover .work-study__image-frame::after{animation:work-glass-sweep 850ms cubic-bezier(.22,1,.36,1) both}}
.work-study__card:focus-visible .work-study__image-frame::after{animation:work-glass-sweep 850ms cubic-bezier(.22,1,.36,1) both}
@media(prefers-reduced-motion:reduce){.work-study__image-frame::after{display:none}}
/* Restore the caption rule and its original breathing room; contain the marker. */
.work-study__visual::before,.work-study__visual>.work-study__corner{display:none}
.work-study__caption{border-top:1px dashed #bcc6d3;margin-top:18px;padding-top:15px}
.work-study__caption::before{display:block;right:0;top:-5px}

.work-study__eyebrow{font:400 13px/1.5 'IBM Plex Mono',monospace!important;letter-spacing:.09em;text-transform:uppercase;color:#6c737e;margin:0 0 30px}
.work-archive.is-pinned .work-archive__preview{width:240px;height:160px;top:calc(50% - 80px)}
.work-archive.is-pinned .work-archive__row{left:34%;width:65%}
.work-archive.is-pinned .work-archive__row>span:first-of-type{font-size:clamp(26px,3.2vw,48px)}
@media(max-width:1000px) and (min-width:701px){.work-archive.is-pinned .work-archive__preview{width:200px;height:140px;top:calc(50% - 70px)}.work-archive.is-pinned .work-archive__row{left:36%;width:63%}}
@media(max-width:700px){.work-archive.is-pinned .work-archive__preview{width:110px;height:84px;top:calc(50% - 42px)}.work-archive.is-pinned .work-archive__row{left:38%;width:61%}.work-archive.is-pinned .work-archive__row>span:first-of-type{font-size:22px}}

/* Refined line study: solid structure, dashed annotations. */
.work-study__intro{border-bottom-style:dashed}
.work-study__caption{border-top-style:dashed}
.work-archive{border-top-style:dashed}
.work-study__caption::before{display:none}
.work-archive.is-pinned .work-archive__stage::before,
.work-archive.is-pinned .work-archive__stage::after{content:"";position:absolute;left:0;right:0;height:18%;z-index:4;pointer-events:none}
.work-archive.is-pinned .work-archive__stage::before{top:0;background:linear-gradient(to bottom,#f6f6f6 8%,rgba(246,246,246,0))}
.work-archive.is-pinned .work-archive__stage::after{bottom:0;background:linear-gradient(to top,#f6f6f6 8%,rgba(246,246,246,0))}
.work-archive.is-pinned .work-archive__preview{width:280px;height:190px;top:calc(50% - 95px)}
.work-archive.is-pinned .work-archive__row{left:37%;width:62%;white-space:normal}
.work-archive.is-pinned .work-archive__row>span:first-of-type{font-size:clamp(26px,3vw,44px)}
@media(max-width:1000px) and (min-width:701px){.work-archive.is-pinned .work-archive__preview{width:230px;height:160px;top:calc(50% - 80px)}.work-archive.is-pinned .work-archive__row{left:39%;width:60%}}
@media(max-width:700px){.work-archive.is-pinned .work-archive__preview{width:120px;height:94px;top:calc(50% - 47px)}.work-archive.is-pinned .work-archive__row{left:42%;width:57%}.work-archive.is-pinned .work-archive__row>span:first-of-type{font-size:22px}}

/* Unboxed positioning: one quiet annotation rule. */
.work-study__intro>p{border:0;border-top:1px dashed #bcc6d3;padding:20px 0 0}
.work-study__intro>p::before{display:none}
html.work-entrance .work-study__intro h1,
html.work-entrance .work-study__intro>p,
html.work-entrance .work-study__eyebrow,
html.work-entrance .work-study__card{visibility:hidden}
.work-title-char{display:inline-block}
@media(prefers-reduced-motion:reduce){html.work-entrance .work-study__intro h1,html.work-entrance .work-study__intro>p,html.work-entrance .work-study__eyebrow,html.work-entrance .work-study__card{visibility:visible}}

/* Keep the archive introduction inside the pinned viewport. */
.work-archive__stage>.work-archive__intro{margin-bottom:45px}
.work-archive.is-pinned .work-archive__stage>.work-archive__intro{position:absolute;top:25px;left:0;right:0;z-index:6;margin:0;padding:0 0 22px;background:#f6f6f6}
.work-archive.is-pinned .work-archive__intro h2{font-size:30px}
.work-archive.is-pinned .work-archive__intro p{margin:0}
.work-archive.is-pinned .work-archive__stage::before{height:25%;background:linear-gradient(to bottom,#f6f6f6 28%,rgba(246,246,246,0))}
@media(max-width:700px){.work-archive.is-pinned .work-archive__stage>.work-archive__intro{top:20px;padding-bottom:18px}.work-archive.is-pinned .work-archive__intro h2{font-size:25px}.work-archive.is-pinned .work-archive__intro p{margin-top:8px;font-size:14px}}

/* Browser scroll anchoring must not compensate for the moving wheel/pin spacer. */
.work-study,.work-archive,.work-archive__stage,.work-archive__list,.work-archive__row{overflow-anchor:none}
/* Fade the moving content itself, avoiding stacked background panels/seams. */
.work-archive.is-pinned .work-archive__stage::before,
.work-archive.is-pinned .work-archive__stage::after{display:none}
.work-archive.is-pinned .work-archive__stage>.work-archive__intro{background:transparent}
.work-archive.is-pinned .work-archive__list{
  -webkit-mask-image:linear-gradient(to bottom,transparent 0%,transparent 9%,#000 27%,#000 78%,transparent 100%);
  mask-image:linear-gradient(to bottom,transparent 0%,transparent 9%,#000 27%,#000 78%,transparent 100%);
}
@media(max-width:700px){
  .work-archive.is-pinned .work-archive__list{
    -webkit-mask-image:linear-gradient(to bottom,transparent 0%,transparent 15%,#000 32%,#000 78%,transparent 100%);
    mask-image:linear-gradient(to bottom,transparent 0%,transparent 15%,#000 32%,#000 78%,transparent 100%);
  }
}

/* Direction-aware pale-blue wash, kept inside each card's bounds. */
.work-study__card{isolation:isolate;overflow:hidden;border-radius:2px}
.work-study__wash{position:absolute;inset:0;z-index:-1;background:#e5edf6;transform:translateY(105%);pointer-events:none;border-radius:2px}
.work-study__card:focus-visible{background:#e5edf6}
.work-study__caption{padding-bottom:14px}
/* Let the blue wash occupy the column gutter without moving the cover/text. */
.work-study__card{overflow:visible}
.work-study__wash{inset:-12px;border-radius:3px;overflow:hidden;transform:none;background:transparent}
.work-study__wash::before{content:"";position:absolute;inset:0;background:#e5edf6;transform:translate(var(--wash-x,0%),var(--wash-y,105%));transition:none}
.work-study__card:focus-visible{background:transparent}
.work-study__card:focus-visible .work-study__wash::before{transform:translate(0,0)}
@media(max-width:700px){.work-study__wash{inset:-10px}}

.work-study__wash::before{content:none}
.work-study__wash-fill{position:absolute;inset:0;background:#e5edf6;transform:translateY(105%);border-radius:3px}
.work-study__card:focus-visible .work-study__wash-fill{transform:translate(0,0)}

.painting-case{width:calc(100% - 160px);max-width:1120px;margin:65px auto 100px;color:#1f365b}.painting-case h1{font-size:clamp(44px,7vw,90px);line-height:1.08;margin:20px 0 35px}.painting-case__lead{font-size:clamp(23px,3vw,34px)!important;line-height:1.45!important;max-width:850px}.painting-case__facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;border-block:1px dashed #bcc6d3;padding:25px 0;margin:50px 0 70px}.painting-case__facts dt{font:12px/1.6 'IBM Plex Mono',monospace!important;text-transform:uppercase;color:#6c737e;margin-bottom:8px}.painting-case__facts dd{margin:0;font-size:17px;line-height:1.5}.painting-case section,.work-case__body section{max-width:760px;margin:65px 0}.painting-case h2,.work-case__body h2{font-size:clamp(28px,3vw,42px);font-weight:400;line-height:1.2;margin:0 0 24px}.painting-case section p,.work-case__body section p{font-size:20px;line-height:1.75;color:#505965;margin:0 0 20px}.painting-case figure,.work-case__body figure{margin:65px 0}.painting-case figure img,.painting-case figure video,.work-case__body figure img,.work-case__body figure video{display:block;width:100%;border-radius:2px}.painting-case figcaption,.work-case__body figcaption{font-size:13px;color:#6c737e;margin-top:12px}.painting-case__credits{font-size:13px!important;line-height:1.6!important;color:#6c737e}.painting-case__back{display:inline-block;margin-top:20px;color:#1f365b;text-decoration:underline;text-underline-offset:5px}@media(max-width:700px){.painting-case{width:calc(100% - 40px);margin-top:40px}.painting-case__facts{grid-template-columns:1fr;gap:20px}.painting-case section p,.work-case__body section p{font-size:18px}}

.case-back-top{display:inline-block;margin:0 0 38px;color:#1f365b;font-size:15px;line-height:1.6;text-decoration:none;background:linear-gradient(rgba(117,161,210,.2),rgba(117,161,210,.2)) left bottom/100% 5% no-repeat;transition:background-size .2s}
.case-back-top:hover,.case-back-top:focus-visible{background-size:100% 100%}
.painting-case .case-cover{margin:45px 0 0}
.painting-case .case-cover img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:2px}
.painting-case .case-cover+.painting-case__facts{margin-top:30px}
/* Case-study shells share the exact header/footer grid. */
.painting-case{box-sizing:border-box;width:calc(100% - 160px);max-width:1320px;margin:65px auto 100px}
@media(max-width:1100px){.painting-case{width:calc(100% - 80px)}}
@media(max-width:700px){.painting-case{width:calc(100% - 40px);margin-top:40px}}

.painting-case .case-primary-cta{display:inline-block;margin-top:16px;padding:12px 0;color:#1f365b;font-size:clamp(25px,3vw,36px);line-height:1.4;text-decoration:none;background:linear-gradient(rgba(117,161,210,.2),rgba(117,161,210,.2)) left bottom/100% 5% no-repeat;transition:background-size 220ms ease,color 220ms ease}
.painting-case .case-primary-cta:hover,.painting-case .case-primary-cta:focus-visible{background-size:100% 100%;color:#111}
.painting-case .case-primary-cta:focus-visible{outline:2px solid #1f365b;outline-offset:5px}
@media(prefers-reduced-motion:reduce){.painting-case .case-primary-cta{transition:none}}

/* A calm blue fade replaces the direction-aware card sweep. */
.work-study__wash-fill{transform:none;opacity:0;transition:opacity 380ms cubic-bezier(.2,.65,.3,1)}
@media(hover:hover){.work-study__card:hover .work-study__wash-fill{opacity:1}}
.work-study__card:focus-visible .work-study__wash-fill{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.work-study__wash-fill{transition:none}}

.case-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:65px 0}
.painting-case .case-comparison figure{margin:0}
.painting-case .case-comparison img{width:100%;height:auto;display:block;border-radius:2px}
.painting-case .case-comparison figcaption{font-size:13px;line-height:1.6;margin-top:14px;color:#6c737e}
@media(max-width:700px){.case-comparison{grid-template-columns:1fr;gap:30px;margin:40px 0}}

/* Compact live-site buttons are distinct from internal text navigation. */
.painting-case .case-primary-cta{display:inline-flex;align-items:center;gap:10px;margin-top:12px;padding:11px 17px;border:1px solid #a7b2c2;border-radius:3px;font-size:16px;line-height:1.5;font-weight:400;color:#1f365b;text-decoration:none;background:transparent;transition:background-color 200ms ease,border-color 200ms ease,color 200ms ease}
.painting-case .case-primary-cta svg{flex:none;width:17px;height:17px}
.painting-case .case-primary-cta:hover,.painting-case .case-primary-cta:focus-visible{background:#e5edf6;border-color:#1f365b;color:#1f365b}
@media(prefers-reduced-motion:reduce){.painting-case .case-primary-cta{transition:none}}

/* CNN: two editorial motion studies and a dedicated closing invitation. */
.cnn-motion-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(24px,5vw,72px);align-items:start;margin:75px 0 100px}
.cnn-case .cnn-motion{margin:0;min-width:0}
.cnn-case .cnn-motion:nth-child(2){margin-top:100px}
.cnn-motion__toggle{display:block;position:relative;width:100%;padding:0;border:0;border-radius:2px;overflow:hidden;background:#101114;cursor:pointer;color:#fff;text-align:left}
.cnn-case .cnn-motion video{aspect-ratio:16/9;object-fit:cover;width:100%}
.cnn-motion__hint{position:absolute;bottom:15px;left:15px;right:15px;display:flex;justify-content:space-between;font:12px/1.4 'IBM Plex Mono',monospace;text-transform:uppercase;text-shadow:0 1px 8px #000;transition:opacity .25s}
.cnn-motion__toggle[aria-pressed=true] .cnn-motion__hint{opacity:0}
.cnn-motion__toggle:focus-visible{outline:2px solid #1f365b;outline-offset:5px}
.cnn-motion figcaption span{margin-right:14px;font-family:'IBM Plex Mono',monospace}
.cnn-case .painting-case__closing{max-width:none;border-top:1px dashed #bcc6d3;padding-top:55px}
.cnn-case .painting-case__closing>p:not(:last-child){max-width:760px}
@media(max-width:700px){.cnn-motion-grid{grid-template-columns:1fr;gap:32px;margin:45px 0}.cnn-case .cnn-motion:nth-child(2){margin-top:0}}
@media(prefers-reduced-motion:reduce){.cnn-motion__hint{transition:none}}

/* A quiet next step after the project archive. */
.work-invitation{position:relative;padding:clamp(70px,10vw,140px) 0 clamp(65px,8vw,110px);border-top:1px dashed #bcc6d3;color:#1f365b}
.work-invitation__label{margin:0 0 24px;font:13px/1.5 'IBM Plex Mono',monospace;text-transform:uppercase;color:#6c737e;letter-spacing:.04em}
.work-invitation h2{margin:0 0 22px;font-size:clamp(38px,5.5vw,72px);line-height:1.12;font-weight:400;letter-spacing:-.025em}
.work-invitation>p:not(.work-invitation__label){margin:0 0 35px;font-size:clamp(19px,2vw,25px);line-height:1.5;color:#6c737e;max-width:680px}
.work-invitation__link{display:inline-block;padding:5px 0;color:#1f365b;font-size:clamp(24px,3vw,36px);line-height:1.4;text-decoration:none;background:linear-gradient(rgba(117,161,210,.2),rgba(117,161,210,.2)) left bottom/100% 5% no-repeat;transition:background-size 220ms ease}
.work-invitation__link:hover,.work-invitation__link:focus-visible{background-size:100% 100%;color:#1f365b}
.work-invitation__link:focus-visible{outline:2px solid #1f365b;outline-offset:5px}
@media(prefers-reduced-motion:reduce){.work-invitation__link{transition:none}}

/* Work adopts the established serif/sans type system; annotations stay mono. */
body.work-type-system .work-study,body.work-type-system .work-study *{font-family:Roboto,Arial,sans-serif!important}
body.work-type-system .work-study__intro h1,body.work-type-system .work-study__intro h1 *,body.work-type-system .work-study__caption h2,body.work-type-system .work-archive__intro h2,body.work-type-system .work-archive__row>span:first-of-type,body.work-type-system .work-invitation h2{font-family:'Roboto Slab',Georgia,serif!important;font-weight:400}
body.work-type-system .work-study__eyebrow,body.work-type-system .work-study__caption p,body.work-type-system .work-study__year,body.work-type-system .work-invitation__label{font-family:'IBM Plex Mono',monospace!important;font-weight:400}
.work-archive.is-pinned .work-archive__row{opacity:1;color:#6c737e;transition:color .25s;top:42%}
.work-archive.is-pinned .work-archive__row.is-active,.work-archive.is-pinned .work-archive__row:focus-visible{color:#1f365b}
.work-archive.is-pinned .work-archive__preview{top:calc(42% - 95px)}
.work-archive.is-pinned .work-archive__list{-webkit-mask-image:linear-gradient(to bottom,transparent 0,transparent 100px,#000 190px,#000 76%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,transparent 100px,#000 190px,#000 76%,transparent 100%)}
@media(max-width:1000px) and (min-width:768px){.work-archive.is-pinned .work-archive__preview{top:calc(42% - 80px)}}
/* Ordinary readable links for phones and reduced-motion visitors. */
@media(max-width:767px),(prefers-reduced-motion:reduce){
 .work-archive__stage{height:auto;overflow:visible;background:transparent}
 .work-archive__stage>.work-archive__intro{position:static;margin:0 0 24px;padding:0}
 .work-archive__list{position:static;display:block;height:auto;margin:0;mask-image:none;-webkit-mask-image:none}
 .work-archive__row{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;padding:20px 0;border-top:1px dashed #bcc6d3;opacity:1;color:#1f365b;transform:none;text-align:left}
 .work-archive__row>img,.work-archive__preview{display:none}
 .work-archive__row>span:first-of-type{font-size:clamp(20px,4vw,28px);line-height:1.35;overflow-wrap:anywhere}
 .work-archive__exit{flex:none;opacity:1}
 .work-archive__exit svg{width:20px;height:20px}
}
