/* Specific fragments from the original sheets, composed on open fields. */
.pattern-interlude { position:relative; display:block; padding-bottom:100px; }
.pattern-interlude .hero-figure { width:100%; margin:0; }
.pattern-interlude .hero-image { position:relative; height:620px; background:#fff; }
.pattern-interlude .hero-image::before { inset:0; background:#fff; }
.pattern-interlude .hero-image[data-hero-view=detail] img {
  position:absolute; width:310%; height:auto; max-width:none;
  left:-11%; top:-19%; object-fit:fill; object-position:initial;
  clip-path:inset(0 74% 57% 0);
  transform:rotate(-14deg); transform-origin:13% 22%;
  mix-blend-mode:multiply; filter:contrast(1.18);
}
.pattern-interlude .interlude-note {
  position:absolute; z-index:3; right:3%; top:10%; width:29%;
  padding:35px; background:#e6e6e6;
}
.pattern-interlude .interlude-note>p:not(.eyebrow) { font-size:31px; max-width:none; }
.pattern-interlude .interlude-note .textlink { font-size:17px; }
.pattern-interlude .caption { margin-top:22px; }
.pattern-interlude .hero-image[data-hero-view=whole] img {
  position:absolute; inset:0; width:100%; height:100%; max-width:100%;
  object-fit:contain; object-position:center; transform:none;
  clip-path:none; filter:none; mix-blend-mode:normal;
}
.pattern-interlude:has([data-hero-view=whole]) .interlude-note { visibility:hidden; }

.work#pattern .image-trigger { position:relative; height:600px; background:#fff; }
.work#pattern .image-trigger::before {
  content:""; position:absolute; left:0; bottom:0; width:64%; height:33%; background:#e5e5e5;
}
.work#pattern .image-trigger img {
  position:absolute; width:400%; height:auto; max-width:none; max-height:none;
  left:-147%; top:-10%; object-fit:fill; object-position:initial;
  clip-path:inset(0 34% 80% 32%);
  transform:rotate(12deg); transform-origin:55% 10%;
  mix-blend-mode:multiply; filter:contrast(1.15);
}

.case-pattern .image-trigger { position:relative; height:620px; background:#fff; }
.case-pattern .image-trigger::before {
  content:""; position:absolute; right:0; top:30%; width:24%; height:48%; background:#ececec;
}
.case-pattern .image-trigger img {
  position:absolute; width:114%; height:auto; max-width:none; max-height:none;
  left:38%; top:52%; object-fit:fill; object-position:initial;
  clip-path:inset(0 19% 0 0);
  transform:translate(-50%,-50%); transform-origin:center;
  mix-blend-mode:multiply; filter:contrast(1.2);
}
.case-gallery figure:has(img[src*="pattern-congjiang"]) .image-trigger { position:relative; background:#fff; }
.case-gallery figure:has(img[src*="pattern-congjiang"]) .image-trigger::before {
  content:""; position:absolute; left:0; top:4%; width:38%; height:47%; background:#e6e6e6;
}
.case-gallery img[src*="pattern-congjiang"] {
  position:absolute; width:420%; height:auto; max-width:none; max-height:none;
  left:-260%; top:-24%; object-fit:fill; object-position:initial;
  clip-path:inset(0 0 56% 72%);
  transform:rotate(16deg); transform-origin:85% 22%;
  mix-blend-mode:multiply; filter:contrast(1.18);
}
.exhibition-images figure:first-child img {
  object-position:72% 74%; transform:scale(1.55); transform-origin:72% 74%;
}
.exhibition-images figure:nth-child(2) img {
  object-position:90% 45%; transform:scale(1.65); transform-origin:90% 45%;
}

@media (min-width:761px) and (max-width:1100px) {
  .pattern-interlude .hero-image { height:550px; }
  .pattern-interlude .interlude-note { padding:27px; width:31%; right:1%; }
  .pattern-interlude .interlude-note>p:not(.eyebrow) { font-size:26px; }
  .pattern-interlude .interlude-note .textlink { font-size:16px; }
  .work#pattern .image-trigger { height:530px; }
}
@media (max-width:760px) {
  .pattern-interlude { padding-bottom:55px; }
  .pattern-interlude .hero-image { height:440px; }
  .pattern-interlude .hero-image[data-hero-view=detail] img {
    width:440%; left:-22%; top:-8%; transform:rotate(-14deg); transform-origin:13% 22%;
  }
  .pattern-interlude .interlude-note {
    position:relative; right:auto; top:auto; width:85%; margin:0 0 22px auto; padding:25px 27px;
  }
  .pattern-interlude .interlude-note>p:not(.eyebrow) { font-size:28px; }
  .pattern-interlude:has([data-hero-view=whole]) .interlude-note { visibility:visible; }
  .pattern-interlude .caption { gap:12px; margin-top:18px; }
  .work#pattern .image-trigger { height:450px; }
  .work#pattern .image-trigger img { width:450%; left:-170%; top:-4%; }
  .case-pattern .image-trigger { height:420px; }
  .case-pattern .image-trigger img { width:210%; left:50%; top:50%; clip-path:none; }
  .case-pattern .image-trigger::before { width:30%; height:44%; top:45%; }
  .case-gallery img[src*="pattern-congjiang"] { width:500%; left:-325%; top:-15%; }
}
@media print { .pattern-interlude { display:none; } }

/* One colour encounter and one deliberate pause within the white page. */
.pattern-interlude .interlude-note { background:#cfcfcf; }
.work#pattern .image-trigger::before { background:#d9d9d9; }
.exhibition { margin-bottom:45px; }
.exhibition-images { grid-template-columns:.78fr 1.22fr; gap:7%; }
.exhibition-images figure:first-child .image-trigger { height:590px; }
.exhibition-images figure:nth-child(2) { padding-top:110px; }
.exhibition-images figure:nth-child(2) .image-trigger { height:590px; }
.exhibition-images figure:nth-child(2) img {
  object-position:78% 48%; transform:scale(1.25); transform-origin:78% 48%;
}
.idea-pause {
  margin:30px 0 105px 12%; padding:50px 6% 48px;
  background:#e0e0e0; color:#171717;
}
.idea-pause>.eyebrow { margin:0 0 30px; color:#484848; }
.idea-pause blockquote {
  font:400 clamp(40px,4.1vw,64px)/1.25 Georgia,"Songti SC",serif;
  letter-spacing:-.025em; white-space:pre-line; margin:0;
}
.idea-pause .statement-credit { margin:28px 0 0; font-size:16px; color:#484848; }
.zh .idea-pause blockquote {
  font-size:clamp(35px,3.7vw,56px); line-height:1.6; letter-spacing:0;
}
.about { padding-top:55px; }
@media (min-width:761px) and (max-width:1100px) {
  .exhibition-images figure:first-child .image-trigger { height:510px; }
  .exhibition-images figure:nth-child(2) { padding-top:90px; }
  .exhibition-images figure:nth-child(2) .image-trigger { height:510px; }
  .idea-pause { margin-left:6%; padding:40px 5%; }
  .idea-pause blockquote { font-size:40px; }
  .zh .idea-pause blockquote { font-size:37px; }
}
@media (max-width:760px) {
  .exhibition { margin-bottom:25px; }
  .exhibition-images { grid-template-columns:1fr; gap:30px; }
  .exhibition-images figure:first-child { width:83%; }
  .exhibition-images figure:first-child .image-trigger { height:420px; }
  .exhibition-images figure:nth-child(2) { width:100%; padding-top:0; }
  .exhibition-images figure:nth-child(2) .image-trigger { height:430px; }
  .idea-pause { margin:25px 0 60px; padding:30px 25px; }
  .idea-pause>.eyebrow { margin-bottom:22px; }
  .idea-pause blockquote { font-size:clamp(29px,7.8vw,39px); line-height:1.35; letter-spacing:-.02em; }
  .zh .idea-pause blockquote { font-size:clamp(27px,7.2vw,36px); line-height:1.65; }
  .idea-pause .statement-credit { font-size:15px; margin-top:24px; }
}

/* The original portrait blue and newly supplied exhibition photography. */
.hero-portrait img { filter:none; }
.hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px 28px; margin-top:26px; }
.hero .hero-actions .textlink { display:inline-flex; align-items:center; min-height:44px; margin-top:0; padding:0 0 6px; }
.exhibition-images figure img[src*="threads-covenant-panel"] {
  object-position:46% 42%; transform:scale(1.06); transform-origin:46% 42%;
}
.exhibition-images figure img[src*="threads-light-detail"] {
  object-position:45% 40%; transform:scale(1.06); transform-origin:45% 40%;
}
.about-visual h2 { font-size:23px; line-height:1.5; margin:0 0 28px; }
.about-visual figure { margin:0; }
.about-visual .image-trigger { height:450px; }
.about-visual img { width:100%; height:100%; object-fit:cover; object-position:60% 35%; }
.about-visual .caption { font-size:14px; }
.portrait-in-context img[src*="zeng-li-threads"] { filter:none; object-position:60% 35%; }
.case-threads .image-trigger { height:630px; background:#171717; }
.case-threads img[src*="threads-projection"] { object-position:50% 42%; transform:none; }
.gallery-threads { grid-template-columns:.78fr 1.22fr; gap:65px 7%; }
.gallery-threads figure:nth-child(2) { margin-top:100px; }
.gallery-threads figure:first-child .image-trigger { height:620px; }
.gallery-threads figure:nth-child(2) .image-trigger { height:570px; }
.gallery-threads figure:nth-child(3) .image-trigger { height:410px; }
.gallery-threads figure:nth-child(4) .image-trigger { height:440px; }
.gallery-threads img { transform:none; }
.gallery-threads img[src*="covenant-panel"] { object-position:50% 45%; }
.gallery-threads img[src*="light-detail"] { object-position:45% 40%; }
.gallery-threads img[src*="threads-viewer"] { object-position:30% 50%; }
.gallery-threads img[src*="conversation"] { object-position:50% 43%; }
@media (min-width:761px) and (max-width:1100px) {
  .about-visual .image-trigger { height:380px; }
  .gallery-threads figure:first-child .image-trigger { height:540px; }
  .gallery-threads figure:nth-child(2) .image-trigger { height:510px; }
}
@media (max-width:760px) {
  .about-visual { width:85%; max-width:430px; }
  .about-visual h2 { font-size:21px; margin-bottom:24px; }
  .about-visual .image-trigger { height:430px; }
  .about-visual .caption { font-size:13px; }
  .case-threads .image-trigger { height:430px; }
  .gallery-threads { grid-template-columns:1fr; gap:35px; }
  .gallery-threads figure:nth-child(2) { margin-top:0; }
  .gallery-threads figure:first-child .image-trigger { height:480px; }
  .gallery-threads figure:nth-child(2) .image-trigger { height:430px; }
  .gallery-threads figure:nth-child(3) .image-trigger { height:330px; }
  .gallery-threads figure:nth-child(4) .image-trigger { height:330px; }
}
@media print { .about-visual { display:none; } }

/* Houston: the shared encounter, the act of making, and individual systems. */
#houston > figure .image-trigger { height:570px; }
#houston > figure img[src*="looking-together"] { object-position:50% 24%; }
#houston .workshop-bottom .image-trigger { height:500px; }
#houston .workshop-bottom img[src*="houston-making"] { object-position:52% 57%; }
.case-houston .image-trigger { height:640px; }
.case-houston img[src*="looking-together"] { object-position:50% 27%; }
.gallery-houston { grid-template-columns:1fr 1fr; gap:65px 7%; }
.gallery-houston figure:nth-child(2) { margin-top:100px; }
.gallery-houston figure:first-child .image-trigger { height:620px; }
.gallery-houston figure:nth-child(2) .image-trigger { height:620px; }
.gallery-houston figure:nth-child(3) { grid-column:1 / -1; width:66%; margin:0 auto; }
.gallery-houston figure:nth-child(3) .image-trigger { height:780px; background:#eee; }
.gallery-houston img[src*="houston-making"] { object-position:52% 56%; }
.gallery-houston img[src*="symbol-studies"] { object-position:50% 49%; }
.gallery-houston img[src*="pattern-redacted"] { object-fit:contain; object-position:50% 50%; }
@media (min-width:761px) and (max-width:1100px) {
  #houston > figure .image-trigger { height:480px; }
  .case-houston .image-trigger { height:520px; }
  .gallery-houston figure:nth-child(3) { width:80%; }
  .gallery-houston figure:nth-child(3) .image-trigger { height:720px; }
}
@media (max-width:760px) {
  #houston > figure .image-trigger { height:400px; }
  #houston > figure img[src*="looking-together"] { object-position:50% 30%; }
  #houston .workshop-bottom .image-trigger { height:420px; }
  .case-houston .image-trigger { height:420px; }
  .gallery-houston { grid-template-columns:1fr; gap:35px; }
  .gallery-houston figure:nth-child(2) { margin-top:0; }
  .gallery-houston figure:first-child .image-trigger,
  .gallery-houston figure:nth-child(2) .image-trigger { height:460px; }
  .gallery-houston figure:nth-child(3) { grid-column:auto; width:100%; }
  .gallery-houston figure:nth-child(3) .image-trigger { height:530px; }
}

/* The textile itself joins the drawing, without implying an unverified source pairing. */
.work#pattern figure.textile-original .image-trigger { background:#e7e7e7; }
.work#pattern figure.textile-original .image-trigger img {
  position:absolute; inset:0; width:100%; height:100%; max-width:100%;
  object-fit:cover; object-position:47% 43%; clip-path:none;
  transform:scale(1.28); transform-origin:47% 43%; filter:none; mix-blend-mode:normal;
}
.research-grounding {
  display:grid; grid-template-columns:.8fr 1.4fr; gap:8%;
  align-items:start; margin:12px 0 65px;
}
.research-grounding figure { margin:0; }
.research-grounding .image-trigger { height:auto; aspect-ratio:762 / 1032; background:#eee; }
.research-grounding img { width:100%; height:100%; object-fit:cover; object-position:48% 52%; }
.research-grounding .reading-prose { max-width:none; padding:0; margin:0; }
.research-grounding .reading-prose p { max-width:30em; text-wrap:pretty; }
.research-grounding .reading-prose p:first-child { margin-top:0; }
.research-materials { border-top:1px solid #ccc; padding:35px 0 60px; }
.research-materials>.eyebrow { margin:0 0 18px; }
.research-materials h2 {
  font:400 36px/1.4 Georgia,"Songti SC",serif; letter-spacing:0; margin:0 0 24px;
}
.materials-intro { font-size:var(--type-body,22px); line-height:1.8; max-width:900px; margin:0 0 35px; }
.textile-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:38px 4%; }
.textile-gallery figure { margin:0; min-width:0; }
.textile-gallery .image-trigger { height:360px; background:#151515; }
.textile-gallery img { width:100%; height:100%; object-fit:cover; }
.textile-gallery [data-asset="textile-garment"] img { object-fit:contain; }
.textile-gallery [data-asset="textile-loop-detail"] img { object-position:50% 43%; }
.textile-gallery [data-asset="textile-geometric-detail"] img { object-position:55% 45%; }
.textile-gallery [data-asset="textile-curves-detail"] img { object-position:50% 50%; }
.textile-gallery [data-asset="textile-figurative-detail"] img { object-position:45% 40%; }
.textile-gallery [data-asset="textile-geometric-field"] img { object-position:50% 42%; }
.textile-gallery .caption { margin-top:14px; }
.textile-gallery [data-asset^="symbol-textile-"] img { filter:none; }
.textile-gallery [data-asset="symbol-textile-cross-close"] img { object-position:50% 30%; }
.textile-gallery [data-asset="symbol-textile-hui"] img { object-position:50% 40%; }
.textile-gallery [data-asset="symbol-textile-combination"] img { object-position:50% 18%; filter:saturate(.82) brightness(.96) contrast(1.02); }
.textile-gallery [data-asset="symbol-textile-interwoven"] img { object-position:50% 72%; }
.living-patterns { margin-top:56px; }
.village-images { display:grid; grid-template-columns:.8fr 1.2fr; gap:7%; align-items:start; }
.village-images figure { margin:0; }
.village-images figure:first-child .image-trigger { height:auto; aspect-ratio:785 / 1000; }
.village-images figure:first-child img { width:100%; height:100%; object-fit:cover; object-position:50% 52%; }
.village-images figure:nth-child(2) { padding-top:65px; }
.village-images figure:nth-child(2) .image-trigger { height:auto; }
.village-images figure:nth-child(2) img { width:100%; height:auto; }
.materials-credit { font-size:var(--type-small,18px); line-height:1.7; color:#555; margin-top:30px; max-width:900px; }
.research-path { display:flex; justify-content:space-between; align-items:center; gap:28px; border-top:1px solid #ccc; padding:26px 0 42px; }
.research-path p { font-size:var(--type-body,22px); line-height:1.8; margin:0; max-width:700px; }
.research-path .textlink { flex-shrink:0; margin:0; }
@media (min-width:761px) and (max-width:1100px) {
  .research-grounding { grid-template-columns:.85fr 1.25fr; gap:6%; }
  .textile-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); gap:34px 5%; }
  .textile-gallery .image-trigger { height:390px; }
}
@media (max-width:760px) {
  .research-grounding { grid-template-columns:1fr; gap:28px; margin:5px 0 40px; }
  .research-grounding figure { width:85%; max-width:420px; }
  .research-materials { padding:28px 0 40px; }
  .research-materials h2 { font-size:29px; margin-bottom:20px; }
  .textile-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); gap:27px 6%; }
  .textile-gallery .image-trigger { height:clamp(195px,51vw,300px); }
  .textile-gallery .caption { font-size:var(--type-small,17px); line-height:1.7; }
  .living-patterns { margin-top:36px; }
  .village-images { grid-template-columns:1fr; gap:30px; }
  .village-images figure:first-child { width:85%; max-width:430px; }
  .village-images figure:nth-child(2) { padding-top:0; }
  .research-path { display:block; padding-bottom:32px; }
  .research-path .textlink { margin-top:18px; }
}

/* Talks are a distinct invitation path, supported by a concise public archive. */
.talks-home-intro {
  display:grid; grid-template-columns:1fr 1.3fr; gap:8%;
  padding:35px 0 26px; margin-top:45px; border-top:1px solid #ccc;
}
.talks-home-intro h2 { font:400 var(--type-section,44px)/1.4 Georgia,"Songti SC",serif; margin:18px 0; white-space:pre-line; }
.talks-home-intro p:not(.eyebrow) { font-size:var(--type-body,22px); line-height:1.8; margin:0 0 15px; }
.talks-home-intro .textlink { margin-right:25px; }
.talks-document .page-intro { padding-top:36px; padding-bottom:28px; }
.talks-document .page-intro .back-link { margin-bottom:26px; }
.talks-quick-actions { display:flex; flex-wrap:wrap; gap:18px 25px; align-items:center; padding:0 0 45px; }
.talks-action {
  display:inline-flex; justify-content:center; align-items:center; min-height:52px;
  padding:12px 25px; border:1px solid #171717; background:#171717; color:white;
  font:400 var(--type-small,18px)/1.6 Arial,"PingFang SC",sans-serif; cursor:pointer; text-align:center;
}
.talks-action.secondary { background:white; color:#171717; }
.talks-action:hover { background:#444; color:white; }
.talks-quick-actions .textlink { margin:0; }
.talks-perspective {
  display:grid; grid-template-columns:1fr 1.4fr; gap:8%; background:#eee;
  padding:36px 38px; margin:0 0 40px;
}
.talks-perspective h2,.talks-formats h2,.talks-archive h2,.talks-featured h2,.talks-invitation h2 {
  font:400 35px/1.5 Georgia,"Songti SC",serif; margin:0 0 18px;
}
.talks-perspective p,.talks-formats p,.talks-featured aside>p:not(.eyebrow),.talks-archive-heading p,.talks-invitation>div>p:not(.eyebrow) {
  font-size:var(--type-body,22px); line-height:1.8; margin:0 0 20px;
}
.talks-topics { list-style:none; margin:22px 0 0; padding:0; }
.talks-topics li { border-top:1px solid #c7c7c7; padding:12px 0; font-size:var(--type-small,18px); line-height:1.7; }
.talks-topics li:last-child { padding-bottom:0; }
.talks-formats { display:grid; grid-template-columns:1fr 1fr; gap:8%; padding:0 0 55px; }
.talks-formats article { padding:23px 0 0; border-top:1px solid #ccc; }
.talks-formats article .textlink { margin-top:0; }
.talks-featured { display:grid; grid-template-columns:1.4fr 1fr; gap:6%; margin:0 0 60px; align-items:start; }
.talks-featured>figure { min-width:0; margin:0; }
.talks-featured .image-trigger { height:490px; overflow:hidden; }
.talks-featured img { width:100%; height:100%; object-fit:cover; object-position:50% 30%; }
.talks-featured aside { padding-top:8px; min-width:0; }
.talks-featured h2 { margin-top:18px; }
.talks-archive { padding:35px 0 60px; border-top:1px solid #ccc; }
.talks-archive-heading { display:grid; grid-template-columns:1fr 1.4fr; gap:8%; margin-bottom:20px; }
.talks-filter { display:flex; flex-wrap:wrap; align-items:center; gap:10px 24px; margin:0 0 35px; }
.talks-filter button { padding:9px 0; border:0; border-bottom:1px solid transparent; background:none; font-size:var(--type-small,18px); line-height:1.7; color:#555; cursor:pointer; }
.talks-filter button[aria-pressed=true] { color:#171717; border-bottom-color:#171717; }
.talks-filter [data-talks-count] { margin-left:auto; font-size:var(--type-small,18px); line-height:1.7; color:#666; }
.talks-records { display:grid; grid-template-columns:1fr 1fr; gap:45px 7%; align-items:start; }
.talks-records article { min-width:0; }
.talks-records figure { margin:0 0 24px; }
.talks-records .image-trigger img { width:100%; height:auto; object-fit:contain; filter:none; }
.talks-records .eyebrow { margin:0 0 9px; }
.talks-records h3 { font:400 28px/1.5 Georgia,"Songti SC",serif; margin:0; }
.talks-session-detail { border-top:1px solid #ccc; margin-top:22px; padding-top:7px; }
.talks-session-detail summary { font-size:var(--type-small,18px); line-height:1.7; }
.talks-session-detail figure { margin-top:20px; }
.talks-invitation { display:grid; grid-template-columns:1fr 1.45fr; gap:8%; padding:40px 0 60px; border-top:1px solid #ccc; }
.talks-invitation h2 { white-space:pre-line; margin:18px 0 24px; }
.talks-invitation .textlink { overflow-wrap:anywhere; }
.talks-invitation .copy-email { display:block; margin:18px 0; padding:0; border:0; border-bottom:1px solid #888; background:none; font-size:var(--type-small,18px); line-height:1.7; cursor:pointer; }
.talks-request { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:23px 26px; margin:0; min-width:0; }
.talks-request label { display:flex; flex-direction:column; gap:9px; min-width:0; }
.talks-request label>span { font-size:var(--type-small,18px); line-height:1.7; color:#555; }
.talks-request input,.talks-request select,.talks-request textarea {
  box-sizing:border-box; width:100%; min-width:0; max-width:100%; margin:0; padding:11px 13px;
  border:1px solid #aaa; border-radius:0; background:white; color:#171717;
  font:400 20px/1.6 Arial,"PingFang SC",sans-serif;
}
.talks-request input,.talks-request select { min-height:54px; }
.talks-request textarea { resize:vertical; }
.talks-request-message { grid-column:1/-1; }
.talks-request-note { font-size:var(--type-small,18px); line-height:1.7; color:#555; margin:17px 0 0; }
.talks-request :is(input,select,textarea,button):focus-visible,.talks-filter button:focus-visible,.talks-action:focus-visible { outline:2px solid #171717; outline-offset:4px; }
@media (min-width:761px) and (max-width:1100px) {
  .talks-featured { grid-template-columns:1.2fr 1fr; gap:5%; }
  .talks-featured .image-trigger { height:450px; }
  .talks-perspective,.talks-invitation { column-gap:5%; }
}
@media (max-width:760px) {
  .talks-home-intro,.talks-perspective,.talks-formats,.talks-featured,.talks-archive-heading,.talks-records,.talks-invitation,.talks-request { grid-template-columns:1fr; }
  .talks-home-intro { gap:15px; padding-top:28px; margin-top:30px; }
  .talks-home-intro h2 { margin-top:12px; }
  .talks-quick-actions { gap:15px; padding-bottom:30px; }
  .talks-action { min-height:50px; padding:11px 21px; }
  .talks-perspective { gap:15px; padding:26px 24px; margin-bottom:28px; }
  .talks-perspective h2,.talks-formats h2,.talks-archive h2,.talks-featured h2,.talks-invitation h2 { font-size:29px; }
  .talks-formats { gap:28px; padding-bottom:40px; }
  .talks-featured { gap:25px; margin-bottom:38px; }
  .talks-featured .image-trigger { height:clamp(320px,100vw,480px); }
  .talks-featured aside { padding:0; }
  .talks-archive { padding:28px 0 40px; }
  .talks-archive-heading { gap:0; }
  .talks-filter { gap:8px 20px; margin-bottom:28px; }
  .talks-filter [data-talks-count] { flex-basis:100%; margin:0; }
  .talks-records { gap:34px; }
  .talks-records h3 { font-size:26px; }
  .talks-invitation { gap:28px; padding:30px 0 40px; }
  .talks-request { gap:20px; }
  .talks-request-message { grid-column:auto; }
}

/* A museum presented as an authored work, with an independent institutional site. */
.museum-feature {
  display:grid; grid-template-columns:1fr 1.15fr; gap:34px 7%;
  margin:5px 0 80px; padding-top:35px; border-top:1px solid #c8c8c8;
}
.museum-heading .eyebrow { margin:0 0 22px; }
.museum-heading h2 {
  font:400 var(--type-section,48px)/1.4 Georgia,"Songti SC",serif;
  white-space:pre-line; margin:0; letter-spacing:0;
}
.museum-summary { padding-top:4px; }
.museum-summary>p { font-size:var(--type-body,22px); line-height:1.8; margin:0 0 18px; max-width:36em; }
.museum-summary .museum-attribution,.museum-attribution { font-size:var(--type-small,18px); line-height:1.7; color:#555; }
.museum-stage { grid-column:1/-1; display:grid; grid-template-columns:minmax(0,1.6fr) minmax(320px,1fr); gap:0; align-items:stretch; }
.museum-stage>figure { min-width:0; margin:0; display:flex; flex-direction:column; }
.museum-stage .image-trigger { min-height:480px; flex:1; background:#eaeaea; }
.museum-stage img { width:100%; height:100%; object-fit:cover; object-position:50% 64%; }
.museum-stage .caption { padding-right:24px; }
.museum-card { background:#eee; padding:30px 32px 34px; }
.museum-card>h3 { font:400 27px/1.55 Georgia,"Songti SC",serif; margin:0 0 26px; }
.museum-recognition article+article { border-top:1px solid #c7c7c7; margin-top:23px; padding-top:22px; }
.museum-first { font-size:24px; line-height:1.6; margin:0 0 9px; }
.museum-years { font-size:var(--type-small,18px); color:#555; margin:0 0 5px; letter-spacing:.04em; }
.museum-recognition h3 { font:400 23px/1.55 Arial,"PingFang SC",sans-serif; margin:0 0 8px; }
.museum-ranking { font-size:var(--type-small,18px); line-height:1.7; color:#555; margin:0 0 8px; }
.museum-source { display:inline-block; font-size:var(--type-small,18px); line-height:1.7; color:#555; text-decoration:underline; text-underline-offset:5px; }
.museum-actions { margin-top:27px; display:flex; flex-direction:column; align-items:flex-start; gap:15px; }
.museum-actions .textlink { margin:0; }
.museum-website { display:inline-block; border-bottom:1px solid #222; }
.museum-document .page-intro h1 { white-space:pre-line; }
.museum-document .page-intro { max-width:none; }
.museum-document .page-lead { max-width:39em; }
.museum-artwork-lead { margin-bottom:58px; }
.museum-artwork-lead figure { margin:0; }
.museum-artwork-lead .image-trigger { height:clamp(420px,44vw,620px); background:#eee; }
.museum-artwork-lead img { width:100%; height:100%; object-fit:cover; object-position:50% 63%; }
.museum-essay { display:grid; grid-template-columns:1fr 1.4fr; gap:8%; padding:12px 0 55px; }
.museum-essay h2 { font:400 35px/1.5 Georgia,"Songti SC",serif; margin:21px 0 12px; }
.museum-essay .prose p:first-child { margin-top:0; }
.museum-record { background:#eee; padding:34px 38px 38px; margin-bottom:60px; }
.museum-record .museum-recognition { display:grid; grid-template-columns:1fr 1.25fr; gap:8%; }
.museum-record .museum-recognition article+article { border-top:0; border-left:1px solid #c7c7c7; margin:0; padding:0 0 0 9%; }
.museum-record .museum-first { font-size:30px; line-height:1.6; max-width:15em; }
.museum-record .museum-recognition h3 { font-size:28px; }
.museum-encounters { display:grid; grid-template-columns:1.2fr 1fr; gap:45px 7%; padding-bottom:60px; }
.museum-encounters figure { margin:0; }
.museum-visit .image-trigger { height:430px; }
.museum-visit img { width:100%; height:100%; object-fit:cover; object-position:58% 48%; }
.museum-public-screen { padding-top:70px; }
.museum-public-screen .image-trigger { aspect-ratio:1182/665; height:auto; background:#eee; }
.museum-public-screen img { width:100%; height:100%; object-fit:contain; }
.museum-panorama { grid-column:1/-1; }
.museum-panorama .image-trigger { height:auto; aspect-ratio:1706/460; }
.museum-panorama img { width:100%; height:100%; object-fit:contain; }
.museum-offsite { padding:36px 0 50px; border-top:1px solid #ccc; }
.museum-offsite h2 { font:400 35px/1.5 Georgia,"Songti SC",serif; margin:0 0 18px; }
.museum-offsite p { font-size:var(--type-body,22px); margin:0; }
.museum-local-nav {
  display:flex; flex-wrap:wrap; gap:12px 34px;
  position:static; box-shadow:none; border:0; border-top:1px solid #ccc;
  padding:16px 0 26px; margin:0;
  width:100%; justify-content:flex-start;
}
.museum-local-nav .textlink { margin:0; font-size:var(--type-small,18px); line-height:1.7; }
.museum-story,.museum-exchange {
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);
  gap:8%; padding:38px 0 62px; border-top:1px solid #ccc;
}
.museum-story h2,.museum-exchange h2 {
  font:400 35px/1.5 Georgia,"Songti SC",serif; margin:18px 0 0; max-width:12em;
}
.museum-story .eyebrow,.museum-exchange .eyebrow { margin:0; }
.museum-story .prose>p:first-child,.museum-exchange .prose>p:first-child { margin-top:0; }
.museum-father-quote {
  margin:10px 0 30px; padding:24px 28px; background:#eee;
  font:400 30px/1.65 Georgia,"Songti SC",serif; letter-spacing:0;
}
.museum-exchange { padding-bottom:26px; }
.museum-exchange { column-gap:8%; row-gap:30px; }
.museum-community-images {
  grid-column:1/-1; display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);
  gap:35px 7%; margin-top:10px;
}
.museum-community-images figure,.museum-documentary figure { margin:0; min-width:0; }
.museum-community-images .image-trigger,.museum-documentary .image-trigger { width:100%; height:auto; }
.museum-community-images img,.museum-documentary img {
  display:block; width:100%; height:auto; max-height:none; object-fit:contain; filter:none;
}
.museum-community-images [data-asset="museum-village-exchange"] { padding-top:74px; }
.museum-documentary {
  grid-column:1/-1; display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);
  gap:7%; background:#f0f0f0; padding:30px; margin:10px 0 4px;
}
.museum-documentary aside { min-width:0; }
.museum-documentary h3 { font:400 32px/1.5 Georgia,"Songti SC",serif; margin:12px 0 18px; }
.museum-documentary aside>p:not(.eyebrow) { font-size:var(--type-body,22px); line-height:1.8; margin:0; }
.museum-documentary details { border-top:1px solid #bbb; margin-top:25px; padding-top:16px; }
.museum-documentary summary { cursor:pointer; font-size:var(--type-small,18px); line-height:1.7; }
.museum-documentary details figure { margin-top:20px; }
.museum-exchange-continuation { grid-column:2; }
.museum-exchange-continuation .textlink { margin-top:0; }
.museum-local-nav a:focus-visible { outline:2px solid #222; outline-offset:5px; }
@media (max-width:760px) {
  .museum-local-nav { gap:10px 22px; padding:14px 0 23px; }
  .museum-story,.museum-exchange { grid-template-columns:1fr; gap:25px; padding:28px 0 34px; }
  .museum-story h2,.museum-exchange h2 { font-size:29px; max-width:none; margin-top:12px; }
  .museum-father-quote { margin:7px 0 24px; padding:21px 22px; font-size:25px; }
  .museum-exchange { padding-bottom:8px; }
  .museum-community-images,.museum-documentary { grid-column:auto; grid-template-columns:1fr; }
  .museum-community-images { margin:0; gap:30px; }
  .museum-community-images [data-asset="museum-village-exchange"] { padding-top:0; }
  .museum-documentary { padding:22px; gap:25px; margin:0; }
  .museum-documentary h3 { font-size:28px; }
  .museum-exchange-continuation { grid-column:auto; }
}
@media (min-width:761px) and (max-width:1100px) {
  .museum-feature { gap:28px 5%; }
  .museum-stage { grid-template-columns:minmax(0,1.2fr) minmax(300px,1fr); }
  .museum-card { padding:26px; }
  .museum-essay { grid-template-columns:1fr 1.3fr; gap:6%; }
  .museum-visit .image-trigger { height:360px; }
}
@media (max-width:760px) {
  .museum-feature { grid-template-columns:1fr; gap:24px; padding-top:26px; margin-bottom:48px; }
  .museum-heading .eyebrow { margin-bottom:15px; }
  .museum-heading h2 { font-size:var(--type-section,36px); }
  .museum-summary { padding:0; }
  .museum-stage { grid-column:auto; grid-template-columns:1fr; gap:22px; }
  .museum-stage .image-trigger { min-height:0; height:clamp(300px,85vw,480px); flex:auto; }
  .museum-stage .caption { padding:0; }
  .museum-card { padding:26px 24px 30px; }
  .museum-card>h3 { font-size:26px; margin-bottom:22px; }
  .museum-first { font-size:23px; }
  .museum-recognition h3 { font-size:22px; }
  .museum-artwork-lead { margin-bottom:35px; }
  .museum-artwork-lead .image-trigger { height:clamp(300px,86vw,450px); }
  .museum-essay { grid-template-columns:1fr; gap:30px; padding-bottom:32px; }
  .museum-essay h2 { font-size:29px; margin-top:15px; }
  .museum-essay .textlink { margin-top:12px; }
  .museum-record { padding:25px 24px; margin-bottom:36px; }
  .museum-record .museum-recognition { grid-template-columns:1fr; gap:24px; }
  .museum-record .museum-recognition article+article { border-left:0; border-top:1px solid #c7c7c7; padding:22px 0 0; }
  .museum-record .museum-first { font-size:25px; }
  .museum-record .museum-recognition h3 { font-size:24px; }
  .museum-encounters { grid-template-columns:1fr; gap:30px; padding-bottom:38px; }
  .museum-public-screen { padding:0; }
  .museum-visit .image-trigger { height:clamp(280px,78vw,420px); }
  .museum-panorama { grid-column:auto; }
  .museum-offsite { padding:28px 0 36px; }
  .museum-offsite h2 { font-size:29px; }
}

/* Existing media links now reveal the connections before opening a project. */
.practice-explorer { margin-top:28px; }
.practice-explorer h2 { font:400 16px/1.6 Arial,sans-serif; margin:0 0 9px; color:#555; }
.practice-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 20px; margin-bottom:0; }
.practice-tabs a { display:block; padding:12px 0; border-bottom:2px solid #d5d5d5; font-size:17px; line-height:1.5; color:#666; }
.practice-tabs a[aria-selected="true"] { border-bottom-color:#171717; color:#171717; }
.practice-tabs a:focus-visible,.practice-panel a:focus-visible,.connection-card:focus-visible { outline:2px solid #171717; outline-offset:5px; }
.practice-panel { min-height:230px; padding:25px 28px; background:#efefef; }
.practice-panel h3 { font:400 25px/1.4 Georgia,"Songti SC",serif; margin:0 0 12px; }
.intro .practice-panel p { font-size:20px; line-height:1.75; margin:0; }
.practice-panel .textlink { font-size:16px; margin-top:18px; padding-bottom:4px; }
.practice-actions { display:flex; flex-wrap:wrap; gap:0 28px; align-items:baseline; }
.practice-actions .textlink { min-height:44px; }
#threads .exhibition-head h3 { white-space:pre-line; }
#threads .exhibition-case-context { font-size:17px; line-height:1.8; color:#555; margin:0 0 16px; }
.exhibition-case-actions { display:flex; flex-wrap:wrap; gap:0 28px; margin-top:18px; }
#threads .exhibition-case-actions .textlink { min-height:44px; margin-top:0; font-size:17px; }

/* Four active collaboration directions, followed by projects in development. */
.collab-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:42px 5%; }
.collab-grid article { display:flex; flex-direction:column; align-items:flex-start; }
.collab-grid article>.eyebrow { margin-bottom:14px; }
.collab-grid h3 { font-size:30px; line-height:1.3; margin:0 0 18px; }
.collab-grid p { font-size:20px; line-height:1.8; margin:0 0 18px; flex:1; }
.collab-grid .collab-link { margin-top:auto; }
.collab-grid .collaboration-in-development { display:grid; grid-column:1 / -1; grid-template-columns:1fr auto; gap:10px 28px; padding:28px 32px; background:#f2f2f2; align-items:center; }
.collab-grid .collaboration-in-development>.eyebrow { grid-column:1 / -1; margin:0; }
.collab-grid .collaboration-in-development h3 { grid-column:1; margin:0; }
.collab-grid .collaboration-status { grid-column:2; margin:0; font-size:18px; line-height:1.8; color:#555; }

/* Related work explains a connection instead of repeating an image. */
.connected-practice>div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; }
.connection-card { position:relative; display:block; padding:25px 45px 26px 24px; border-top:1px solid #c8c8c8; background:#f3f3f3; }
.connection-card:hover { background:#e7e7e7; }
.connection-medium { display:block; font-size:14px; line-height:1.6; color:#555; }
.connection-card h3 { font:400 32px/1.3 Georgia,"Songti SC",serif; margin:17px 0; }
.connection-card p { font-size:18px; line-height:1.8; margin:0; max-width:50ch; }
.connection-arrow { position:absolute; right:20px; top:23px; font-size:23px; line-height:1; }
.creative-directions .connection-card { display:flex; flex-direction:column; }
.creative-directions .connection-card:hover { background:#f3f3f3; }
.creative-directions .connection-card p { flex:1; font-size:20px; line-height:1.7; }
.connection-actions { display:flex; flex-wrap:wrap; gap:5px 22px; margin-top:18px; }
.connection-action { display:inline-flex; align-items:center; min-height:44px; font-size:18px; line-height:1.6; text-decoration:underline; text-underline-offset:5px; }
.connection-action:focus-visible { outline:2px solid #171717; outline-offset:5px; }
@media (min-width:761px) and (max-width:1100px) {
  .practice-panel { min-height:270px; }
  .collab-grid h3 { font-size:27px; }
}
@media (max-width:760px) {
  .practice-explorer { margin-top:25px; }
  .practice-explorer h2 { font-size:15px; }
  .practice-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 24px; }
  .practice-tabs a { font-size:16px; padding:11px 0; }
  .practice-panel { min-height:260px; padding:23px 22px; }
  .practice-panel h3 { font-size:24px; }
  .intro .practice-panel p { font-size:19px; line-height:1.75; }
  .practice-panel .textlink { font-size:16px; }
  .collab-grid { grid-template-columns:1fr; gap:30px; }
  .collab-grid h3 { font-size:29px; }
  .collab-grid .collaboration-in-development { grid-template-columns:1fr; padding:24px; }
  .collab-grid .collaboration-status { grid-column:1; }
  .connected-practice>div { grid-template-columns:1fr; gap:25px; }
  .connection-card { padding:24px 44px 24px 22px; }
  .connection-card h3 { font-size:29px; }
}
/* Book photography stays intact; rotation is presentation only. */
.image-trigger.turned-image { position:relative; height:auto; aspect-ratio:var(--view-ratio); }
.image-trigger.turned-image img { position:absolute; left:50%; top:50%; width:var(--image-width); height:var(--image-height); max-width:none; max-height:none; object-fit:contain; transform:translate(-50%,-50%) rotate(var(--turn)); }
.origins-evidence { padding:55px 0 70px; border-top:1px solid #d4d4d4; }
.origins-evidence h2,.book-feature h2,.book-pages h2 { font:400 var(--type-section)/1.35 Georgia,"Songti SC",serif; letter-spacing:0; text-wrap:balance; margin:17px 0 24px; }
.evidence-intro,.book-pages-intro { max-width:42em; margin:0 0 36px; font-size:var(--type-body); line-height:1.8; }
.evidence-pair { display:grid; grid-template-columns:1fr 1fr; align-items:start; gap:6%; margin-top:36px; }
.evidence-pair figure:first-child .image-trigger { height:580px; background:#151515; }
.evidence-pair figure:first-child img { height:100%; object-fit:cover; object-position:50% 51%; transform:scale(1.13); }
.evidence-pair figure:nth-child(2) { margin-top:90px; padding:32px; background:#ededed; }
.evidence-pair figure:nth-child(2) .image-trigger { aspect-ratio:1; background:#fff; }
.evidence-pair figure:nth-child(2) img { height:100%; object-fit:cover; transform:scale(1.34); transform-origin:51% 49%; }
.origins-evidence>.textlink { margin-top:32px; }
.book-feature { display:grid; grid-template-columns:.75fr 1.25fr; align-items:center; gap:8%; padding:16px 0 75px; }
.book-feature>figure { max-width:390px; }
.book-feature>div { padding:40px; background:#efefef; }
.book-feature p { font-size:var(--type-body); line-height:1.8; margin:0 0 22px; }
.book-feature .eyebrow,.book-feature .book-byline { font-size:var(--type-small); color:#555; }
.book-pages { padding:55px 0 65px; border-top:1px solid #d4d4d4; }
.book-spreads { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:45px 5%; }
.book-spreads figure:first-child { grid-column:1 / -1; }
.book-spreads .image-trigger { background:#ededed; }
.book-spreads .image-trigger img { object-fit:contain; }
.book-spreads figure:first-child .image-trigger { max-width:100%; }
#viewer .viewer-image-space { display:grid; place-items:center; flex:1; width:100%; min-height:0; overflow:auto; overscroll-behavior:contain; }
#viewer .viewer-image-frame { position:relative; width:min(100%,calc((100dvh - 260px) * var(--display-ratio,1.33))); height:auto; aspect-ratio:var(--display-ratio,1.33); flex-shrink:0; }
#viewer .viewer-image-frame #viewer-image { position:absolute; left:50%; top:50%; width:var(--image-width,100%); height:var(--image-height,100%); max-width:none; max-height:none; transform:translate(-50%,-50%) rotate(var(--turn,0deg)); object-fit:contain; }
#viewer .viewer-image-space.actual-size { display:block; place-items:normal; }
#viewer .actual-size .viewer-image-frame { width:var(--natural-width); min-width:0; margin:0; }
.viewer-bottom { flex-wrap:wrap; gap:8px 20px; }
.viewer-bottom [aria-pressed="true"] { text-decoration:underline; text-underline-offset:5px; }
.viewer-image-space:focus-visible { outline:2px solid #555; outline-offset:2px; }
@media(max-width:1100px) {
 .evidence-pair figure:first-child .image-trigger { height:490px; }
 .evidence-pair figure:nth-child(2) { padding:22px; }
 .book-feature { grid-template-columns:.8fr 1.2fr; gap:5%; }
 .book-feature>div { padding:28px; }
}
@media(max-width:760px) {
 .origins-evidence,.book-pages { padding:35px 0 45px; }
 .origins-evidence h2,.book-feature h2,.book-pages h2 { font-size:32px; line-height:1.45; }
 .evidence-pair { grid-template-columns:1fr; gap:30px; }
 .evidence-pair figure:first-child .image-trigger { height:clamp(360px,110vw,550px); }
 .evidence-pair figure:nth-child(2) { width:92%; margin:0 0 0 auto; padding:22px; }
 .book-feature { grid-template-columns:1fr; gap:32px; padding-bottom:45px; }
 .book-feature>figure { width:78%; max-width:340px; }
 .book-feature>div { padding:25px; }
 .book-spreads { grid-template-columns:1fr; gap:32px; }
 .book-spreads figure:first-child { grid-column:auto; }
 #viewer .viewer-image-frame { width:min(100%,calc((100dvh - 300px) * var(--display-ratio,1.33))); }
 .viewer-bottom { gap:6px 12px; }
 .viewer-bottom button { padding:8px 10px; }
}
.origins-continuity { padding:45px 0 65px; border-top:1px solid #d4d4d4; }
.origins-continuity h2 { font:400 var(--type-section)/1.35 Georgia,"Songti SC",serif; letter-spacing:0; text-wrap:balance; margin:17px 0 32px; }
.origins-use-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; }
.origins-use-grid article { padding:32px; background:#efefef; }
.origins-use-grid h3 { font:400 30px/1.45 Georgia,"Songti SC",serif; margin:0 0 20px; text-wrap:balance; }
.origins-use-grid p { font-size:var(--type-body); line-height:1.8; margin:0; }
.origins-continuity>.textlink { margin-top:28px; }
.book-feature .textlink { display:block; width:fit-content; }
@media(max-width:760px) {
 .origins-continuity { padding:35px 0 45px; }
 .origins-continuity h2 { font-size:32px; line-height:1.45; }
 .origins-use-grid { grid-template-columns:1fr; gap:22px; }
 .origins-use-grid article { padding:25px; }
 .origins-use-grid h3 { font-size:28px; }
}
.origins-method .evidence-intro { max-width:44em; }
.method-images { display:grid; grid-template-columns:1.22fr .88fr; gap:6%; align-items:start; margin-top:42px; }
.method-images figure { margin:0; }
.scarf-record .image-trigger { position:relative; height:auto; aspect-ratio:700 / 520; overflow:hidden; background:#000; }
.scarf-record .image-trigger img { position:absolute; width:149.714286%; height:auto; max-width:none; left:-15.714286%; top:-36.538462%; }
.pattern-study { padding:25px; margin-top:58px; background:#eaeaea; }
.pattern-study .image-trigger { position:relative; height:450px; overflow:hidden; background:#fff; }
.pattern-study[data-pattern-view="detail"] .image-trigger img { position:absolute; width:240%; height:auto; max-width:none; left:-69%; top:-9%; }
.pattern-study[data-pattern-view="whole"] .image-trigger img { position:static; width:100%; height:100%; object-fit:contain; }
.pattern-study-controls { display:flex; flex-wrap:wrap; gap:12px 24px; padding-top:22px; }
.pattern-study-controls button { border:0; border-bottom:1px solid transparent; padding:6px 0; background:transparent; font-size:var(--type-small); line-height:1.6; cursor:pointer; color:#555; }
.pattern-study-controls button[aria-pressed="true"] { color:#171717; border-bottom-color:#171717; }
.pattern-study-controls button:focus-visible { outline:2px solid #171717; outline-offset:5px; }
.method-reading { display:grid; grid-template-columns:.9fr 1.1fr; gap:6%; padding-top:55px; align-items:start; }
.method-reading>div:first-child { padding:32px; background:#efefef; }
.method-reading blockquote { font:400 32px/1.6 Georgia,"Songti SC",serif; margin:20px 0 0; text-wrap:pretty; }
.method-reading>div:last-child>p { font-size:var(--type-body); line-height:1.8; margin:0 0 25px; }
@media(max-width:1100px) {
 .method-images { gap:4%; }
 .pattern-study { padding:20px; }
 .pattern-study .image-trigger { height:390px; }
 .method-reading blockquote { font-size:29px; }
}
@media(max-width:760px) {
 .method-images { grid-template-columns:1fr; gap:32px; margin-top:30px; }
 .pattern-study { width:92%; margin:0 0 0 auto; padding:22px; }
 .pattern-study .image-trigger { height:clamp(320px,96vw,460px); }
 .pattern-study-controls { justify-content:space-between; gap:12px; }
 .method-reading { grid-template-columns:1fr; gap:30px; padding-top:35px; }
 .method-reading>div:first-child { padding:25px; }
 .method-reading blockquote { font-size:28px; }
}
.silk-feature { display:grid; grid-template-columns:.85fr 1.15fr; gap:10%; align-items:center; padding:65px 0 90px; border-top:1px solid #d4d4d4; }
.silk-feature figure { margin:0; }
.silk-feature .image-trigger { height:auto; aspect-ratio:723 / 1086; background:#050505; }
.silk-feature .image-trigger img { height:100%; object-fit:contain; }
.silk-feature>div { padding:34px 0; }
.silk-feature h2 { font:400 var(--type-section)/1.4 Georgia,"Songti SC",serif; letter-spacing:0; text-wrap:balance; margin:20px 0 27px; }
.silk-feature>div>p:not(.eyebrow) { font-size:var(--type-body); line-height:1.8; max-width:27em; margin:0; }
.case-silk { display:grid; grid-template-columns:.9fr 1.1fr; gap:8%; align-items:center; }
.case-silk figure { margin:0; }
.case-silk .image-trigger { height:auto; aspect-ratio:723 / 1086; background:#050505; }
.case-silk .image-trigger img { height:100%; max-height:none; object-fit:contain; }
.case-silk aside { padding:36px; background:#efefef; }
.case-silk h2 { font:400 var(--type-section)/1.4 Georgia,"Songti SC",serif; letter-spacing:0; text-wrap:balance; margin:20px 0 24px; }
.case-silk aside>p:not(.eyebrow) { font-size:var(--type-body); line-height:1.8; margin:0; }
.gallery-silk { grid-template-columns:repeat(2,minmax(0,1fr)); gap:50px 5%; max-width:1080px; margin:0 auto; }
.gallery-silk figure:nth-child(n) { width:100%; margin:0; }
.gallery-silk figure:nth-child(n+3) { grid-column:1 / -1; }
.gallery-silk .image-trigger { height:auto; aspect-ratio:1 / 1.1; background:#050505; }
.gallery-silk .image-trigger img { height:100%; max-height:none; object-fit:cover; }
.gallery-silk [data-asset="silk-gold-back"] img { object-position:64% 50%; }
.gallery-silk [data-asset="silk-ivory-back"] img { object-position:85% 50%; }
.gallery-silk [data-asset="silk-blue-wing"] .image-trigger { height:auto; aspect-ratio:2.34; position:relative; overflow:hidden; }
.gallery-silk [data-asset="silk-blue-wing"] img { position:absolute; top:-24.1%; width:100%; height:auto; }
.gallery-silk [data-asset="silk-object-study"] .image-trigger { height:auto; aspect-ratio:2.31; position:relative; overflow:hidden; }
.gallery-silk [data-asset="silk-object-study"] img { position:absolute; top:-23.5%; width:100%; height:auto; }
.gallery-silk [data-asset="silk-red-dialogue"] .image-trigger { height:auto; aspect-ratio:1086 / 723; }
.method-reading .textlink { display:block; width:fit-content; }
@media(max-width:1100px) {
 .silk-feature { gap:7%; }
 .case-silk { gap:6%; }
 .case-silk aside { padding:28px; }
 .gallery-silk { gap:35px 4%; }
}
@media(max-width:760px) {
 .silk-feature { grid-template-columns:1fr; gap:28px; padding:40px 0 50px; }
 .silk-feature figure { width:86%; max-width:440px; }
 .silk-feature>div { padding:0; }
 .silk-feature h2,.case-silk h2 { font-size:32px; line-height:1.45; }
 .case-silk { grid-template-columns:1fr; gap:30px; }
 .case-silk figure { width:90%; max-width:440px; }
 .case-silk aside { padding:25px; }
 .gallery-silk { grid-template-columns:1fr; gap:35px; }
 .gallery-silk figure:nth-child(n+3) { grid-column:auto; }
 .gallery-silk .image-trigger { height:auto; aspect-ratio:1 / 1.1; }
}
.method-example { padding-top:28px; }
.method-example+.method-example { margin-top:55px; padding-top:45px; border-top:1px solid #d4d4d4; }
.method-example>h3 { font:400 28px/1.5 Georgia,"Songti SC",serif; letter-spacing:0; margin:0; text-wrap:balance; }
.method-example .method-images { margin-top:28px; }
.monochrome-record { width:100%; max-width:400px; margin-left:auto; }
.monochrome-record .image-trigger { aspect-ratio:490 / 701; }
.monochrome-record .image-trigger img { width:228.571429%; left:-55.102041%; top:0; }
.example-yueliangshan .pattern-study[data-pattern-view="detail"] .image-trigger img { width:200%; left:-50%; top:-50%; }
@media(max-width:760px) {
 .method-example+.method-example { margin-top:35px; padding-top:30px; }
 .method-example>h3 { font-size:25px; }
 .monochrome-record { max-width:340px; width:86%; margin:0; }
}

/* Pattern 268, Zhijin: approved off-centre crop from the full, unaltered vector export. */
.work#pattern figure.origins-colour-study { position:relative; max-width:520px; padding:0 0 42px 32px; isolation:isolate; }
.work#pattern figure.origins-colour-study::before { content:""; position:absolute; z-index:-1; left:0; right:42px; top:56px; bottom:28px; background:#dedede; }
.work#pattern figure.origins-colour-study .image-trigger { height:auto; aspect-ratio:255 / 286; width:100%; position:relative; overflow:hidden; background:#fff; }
.work#pattern figure.origins-colour-study .image-trigger::before { content:none; }
.work#pattern figure.origins-colour-study .image-trigger img { position:absolute; inset:auto; left:-86.2745098%; top:-52.4475524%; width:233.4431373%; height:auto; max-width:none; max-height:none; object-fit:fill; object-position:initial; clip-path:none; transform:none; filter:none; mix-blend-mode:normal; }
.work#pattern figure.origins-colour-study figcaption { margin-top:17px; }
@media(max-width:900px) { .work#pattern figure.origins-colour-study { padding-left:28px; } }
@media(max-width:600px) { .work#pattern figure.origins-colour-study { width:100%; max-width:430px; padding:0 0 30px 24px; box-sizing:border-box; } .work#pattern figure.origins-colour-study::before { top:40px; right:32px; bottom:18px; } }

/* Symbol photographs: retain the selected grid, use a stable crop at every width. */
.textile-gallery.symbol-gallery .image-trigger { height:auto; aspect-ratio:1; }
.textile-gallery.symbol-gallery img { transform:none; }
.research-materials .materials-intro { max-width:43em; text-wrap:pretty; }

/* Keep the participant and their drawing together in the portrait photograph. */
#session-secret-garden-family > figure { max-width:390px; }

/* Homepage overview: preserve the worldview, then let the work speak. */
body[data-page="home"] .worldview-origin { padding:40px; margin-bottom:55px; }
body[data-page="home"] #research { padding-top:40px; padding-bottom:40px; }
body[data-page="home"] #works > .practice-explorer { margin:48px 0; }
body[data-page="home"] .workshop-compact { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
body[data-page="home"] .workshop-compact > figure { margin:0; }
body[data-page="home"] .workshop-compact > figure img { width:100%; height:auto; }
body[data-page="home"] .workshop-compact .workshop-body { display:block; padding:0; }
body[data-page="home"] .workshop-compact .workshop-body > div + div { margin-top:24px; }
@media(max-width:760px) {
 body[data-page="home"] .worldview-origin { padding:24px; }
 body[data-page="home"] .workshop-compact { grid-template-columns:1fr; gap:28px; }
}

/* Alternate images and short readings rather than consecutive text panels. */
body[data-page="home"] .worldview-origin { display:grid; grid-template-columns:1.05fr 1fr; gap:48px; padding:0; background:#f2f2f0; }
.worldview-visual { overflow:hidden; min-width:0; }
.worldview-visual figure { margin:0; height:100%; }
.worldview-visual .image-trigger { width:100%; height:100%; display:block; overflow:hidden; }
.worldview-visual img { width:100%; height:100%; min-height:540px; object-fit:cover; object-position:50% 35%; transform:scale(1.12); }
.worldview-visual-caption { padding:36px 36px 36px 0; min-width:0; }
.worldview-visual-caption .worldview-heading { display:block; }
.worldview-visual-caption .worldview-principles { grid-template-columns:1fr; gap:12px; margin:24px 0; }
.worldview-visual-caption .worldview-principles article { display:grid; grid-template-columns:65px 1fr; gap:14px; padding:12px 0; border-top:1px solid #ccc; }
.worldview-visual-caption .worldview-principles h3 { font-size:21px; margin:0; }
.worldview-visual-caption .worldview-principles blockquote { font-size:20px; line-height:1.65; margin:0; }
body[data-page="home"] .writing-visual-overview { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.home-book-image { background:#f1f1ef; padding:28px; }
.home-book-image figure { margin:0; }
.home-book-image img { width:100%; max-height:500px; object-fit:contain; }
body[data-page="home"] #collaborate .collab-grid { margin-top:28px; }
@media(max-width:760px) {
 body[data-page="home"] .worldview-origin { grid-template-columns:1fr; gap:0; }
 .worldview-visual img { min-height:0; height:340px; }
 .worldview-visual-caption { padding:26px 24px; }
 body[data-page="home"] .writing-visual-overview { grid-template-columns:1fr; gap:24px; }
 .writing-visual-overview .home-book-image { grid-row:1; padding:22px; }
 .home-book-image img { max-height:340px; }
}

/* Quiet the book jacket's yellow beside the homepage's white and grey palette. */
body[data-page="home"] .home-book-image img { filter:saturate(.48) brightness(1.025); }

body[data-page="home"] .worldview-origin.worldview-mosaic { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; background:white; padding:0; }
.worldview-mosaic > figure { margin:0; min-width:0; aspect-ratio:1; overflow:hidden; }
.worldview-mosaic > figure .image-trigger { display:block; width:100%; height:100%; overflow:hidden; }
.worldview-mosaic > figure img { display:block; width:100%; height:100%; object-fit:cover; transform:scale(1.14); filter:saturate(.8); }
.worldview-mosaic > figure:first-child img { object-position:50% 38%; transform:scale(1.22); }
.mosaic-reading { background:#f0f0ee; padding:30px; display:flex; align-items:center; min-width:0; }
.worldview-mosaic .worldview-heading { display:block; }
.worldview-mosaic .worldview-title { font-size:clamp(28px,2.7vw,40px); line-height:1.3; margin:20px 0; }
.worldview-mosaic .worldview-caption { font-size:20px; }
.worldview-mosaic .eyebrow { font-size:16px; }
.worldview-mosaic .worldview-principles { display:block; margin:0; width:100%; }
.worldview-mosaic .worldview-principles article { padding:14px 0; border-top:1px solid #ccc; }
.worldview-mosaic .worldview-principles h3 { font-size:18px; margin:0 0 8px; }
.worldview-mosaic .worldview-principles blockquote { font-size:19px; line-height:1.6; margin:0; }
.worldview-mosaic .worldview-footer { margin:0; padding:0; border:0; }
.worldview-mosaic .worldview-actions { display:flex; flex-direction:column; align-items:flex-start; gap:18px; }
@media(max-width:760px) {
 body[data-page="home"] .worldview-origin.worldview-mosaic { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
 .worldview-mosaic .mosaic-reading { grid-column:1/-1; padding:24px; }
 .worldview-mosaic .mosaic-reading-0 { grid-row:1; }
 .worldview-mosaic .worldview-principles article { display:grid; grid-template-columns:52px 1fr; gap:12px; }
 .worldview-mosaic .worldview-principles h3 { margin:0; }
 .worldview-mosaic .worldview-actions { flex-direction:row; flex-wrap:wrap; }
}
.worldview-mosaic > figure:nth-child(6) img { object-position:45% 48%; transform:scale(1.16); }
.worldview-mosaic > figure:nth-child(6) img { object-position:57% 60%; transform:scale(1.14); }
.worldview-mosaic > figure:first-child img { object-position:50% 42%; transform:scale(1.5); }
.worldview-mosaic > figure:nth-child(6) img { object-position:50% 74%; transform:scale(1.06); }
.worldview-mosaic > figure:nth-child(9) img { object-position:68% 24%; transform:scale(1.16); }

.worldview-mosaic > figure:nth-child(7) img { object-position:0% 50%; transform:scale(1.55); transform-origin:left center; }

.worldview-mosaic > figure:nth-child(7) img { object-position:50% 48%; transform:scale(1.12); transform-origin:center; }

/* Quiet the important second-row textile without changing the original. */
.worldview-mosaic > figure:nth-child(4) img { filter:saturate(.46) brightness(.94) contrast(.98); }

/* Bring the contemporary colour study into the homepage palette. */
body[data-page="home"] .work#pattern figure.origins-colour-study .image-trigger img { filter:saturate(.82) brightness(1.08) contrast(1.02); }
body[data-page="home"] .practice-explorer .practice-panel { min-height:0; }
body[data-page="home"] .collab-grid .collab-evidence { display:block; width:fit-content; margin-top:18px; font-size:18px; }
/* Keep the visiting-artist notice and the person in the same frame. */
.hero-portrait .image-trigger { height:auto; aspect-ratio:1.08; overflow:hidden; }
.hero-portrait img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 50%; transform:none; }
/* A softer, subtly warm monochrome portrait beside the historic textiles. */
.hero-portrait img { filter:sepia(.08) saturate(.8) brightness(1.035) contrast(.94); }

figure[data-asset="zeng-li-miao-fashion-2016"] .image-trigger { height:auto; aspect-ratio:1; }
figure[data-asset="zeng-li-miao-fashion-2016"] img { width:100%; height:100%; object-fit:contain; object-position:center; transform:none; filter:saturate(.62) brightness(1.025); }
/* Semantic type hierarchy: concept → practice → case; body text stays readable. */
@media screen {
 body[data-page="home"] #research .inquiry-identity h2 { font-size:clamp(42px,3.8vw,52px); line-height:1.3; }
 body[data-page="home"] #research .inquiry-copy h3 { font-size:clamp(30px,2.7vw,38px); line-height:1.5; }
 body[data-page="home"] .work#pattern h3,
 body[data-page="home"] .exhibition-head h3 { font-size:clamp(32px,2.8vw,38px); line-height:1.4; }
 body[data-page="home"] .talks-home h2,
 body[data-page="home"] #talks h2,
 body[data-page="home"] #writing h2,
 body[data-page="home"] .museum-heading h2,
 body[data-page="home"] #collaborate > h2 { font-size:clamp(36px,3.2vw,44px); line-height:1.4; }
 body[data-page="home"] .workshop-body h3 { font-size:clamp(28px,2.5vw,34px); line-height:1.4; }
 body[data-page="home"] .practice-panel h3,
 body[data-page="home"] .collab-grid h3,
 body[data-page="home"] .museum-card h3 { font-size:clamp(25px,2.2vw,30px); line-height:1.5; }
 .document-page .page-intro h1 { font-size:clamp(44px,4.8vw,64px); line-height:1.3; }
 .document-page main h2 { font-size:clamp(30px,2.8vw,38px); line-height:1.45; }
 .document-page main h3 { font-size:clamp(24px,2.2vw,30px); line-height:1.5; }
 .document-page .project-credits h2,
 .document-page .source-credits h2 { font-size:var(--type-small,18px); }
 .document-page .publication-list h2,
 .document-page .book-feature h2 { font-size:clamp(28px,2.5vw,34px); }
}
@media screen and (max-width:760px) {
 body[data-page="home"] #research .inquiry-identity h2 { font-size:36px; }
 body[data-page="home"] #research .inquiry-copy h3 { font-size:28px; }
 body[data-page="home"] .work#pattern h3,
 body[data-page="home"] .exhibition-head h3 { font-size:30px; }
 body[data-page="home"] .workshop-body h3 { font-size:27px; }
 body[data-page="home"] #talks h2,
 body[data-page="home"] #writing h2,
 body[data-page="home"] .museum-heading h2,
 body[data-page="home"] #collaborate > h2 { font-size:32px; }
 .document-page .page-intro h1 { font-size:38px; }
 .document-page main h2 { font-size:30px; }
 .document-page main h3 { font-size:25px; }
 .document-page .project-credits h2,
 .document-page .source-credits h2 { font-size:var(--type-small,17px); }
}
/* Dividers express transitions, without severing concept from practice. */
@media screen {
 body[data-page="home"] #research { border-top:0; }
 body[data-page="home"] #works > .sectionhead { border-top:0; }
 body[data-page="home"] #threads .exhibition-head { border-top:1px solid #dededb; }
 body[data-page="home"] #talks,
 body[data-page="home"] #writing,
 body[data-page="home"] #museum,
 body[data-page="home"] #about,
 body[data-page="home"] #collaborate { border-top:1px solid #c9c9c5; }
 body[data-page="home"] #houston { border-top:0; }
 .document-page .related-reading,
 .document-page .reading-contact,
 .document-page .chronology,
 .document-page .talks-archive,
 .document-page .talks-invitation,
 .document-page .museum-story,
 .document-page .museum-exchange,
 .document-page .three-forms-reading { border-top-color:#c9c9c5; }
 .document-page .chronology > div:not(.reading-section-head),
 .document-page .three-forms-chapters article,
 .document-page .talks-session-detail,
 .document-page .talks-formats article { border-top-color:#e0e0dc; }
}

/* Keep deliberate text lines and expanded source images intact. */
.invitation-notes h2 { white-space:pre-line; text-wrap:balance; }
figure[data-asset="zeng-li-miao-fashion-2016"] figcaption { white-space:pre-line; text-wrap:pretty; }
body[data-page="home"] #pattern .details { max-width:100%; min-width:0; }
body[data-page="home"] #pattern .details > .image-trigger { width:100%; height:auto; aspect-ratio:auto; overflow:visible; margin-top:16px; background:#fff; }
body[data-page="home"] #pattern .details > .image-trigger img { position:static; display:block; inset:auto; width:100%; height:auto; max-height:none; max-width:100%; object-fit:contain; transform:none; clip-path:none; filter:none; }
body[data-page="home"] #pattern .details > .image-trigger { max-width:320px; width:100%; margin:16px 0 20px; }
body[data-page="home"] #pattern .details > .image-trigger img { max-height:220px; width:100%; height:auto; object-fit:contain; }
body[data-page="home"] #pattern .details > .image-trigger::before { content:none; }

/* Mobile composition: paired photographs, followed by a complete reading block. */
@media screen and (max-width:760px) {
 body[data-page="home"] .worldview-mosaic > :nth-child(1) { grid-column:1; grid-row:2; }
 body[data-page="home"] .worldview-mosaic > :nth-child(3) { grid-column:2; grid-row:2; }
 body[data-page="home"] .worldview-mosaic > .mosaic-reading-0 { grid-row:1; }
 body[data-page="home"] .worldview-mosaic > .mosaic-reading-1 { grid-row:3; }
 body[data-page="home"] .worldview-mosaic > :nth-child(4) { grid-column:1; grid-row:4; }
 body[data-page="home"] .worldview-mosaic > :nth-child(6) { grid-column:2; grid-row:4; }
 body[data-page="home"] .worldview-mosaic > :nth-child(7) { grid-column:1; grid-row:5; }
 body[data-page="home"] .worldview-mosaic > :nth-child(9) { grid-column:2; grid-row:5; }
 body[data-page="home"] .worldview-mosaic > .mosaic-reading-2 { grid-row:6; }
 body[data-page="home"] #practice-statement { padding:26px 20px; margin:24px 0 40px; }
 body[data-page="home"] #practice-statement blockquote {
  white-space:normal; font-size:clamp(22px,5.5vw,26px); line-height:1.65;
  letter-spacing:0; text-wrap:balance;
 }
 body[data-page="home"] #practice-statement > .eyebrow { margin-bottom:18px; }
 .worldview-mosaic .worldview-actions { gap:14px 20px; }
}

/* Two reversible visual review options; default presentation is unchanged. */
body[data-review-style] .hero-portrait::before { content:""; background:#faf5f5; }

body[data-review-style] .hero-portrait img { filter:sepia(.06) saturate(1.65) brightness(1.085) contrast(.91); }
body[data-review-style="gold"] * { border-color:#b4a17d !important; text-decoration-color:#a58c60; }
@media screen and (max-width:760px) {
 body[data-review-style] .hero .role { font-size:18px; line-height:1.55; margin-bottom:18px; }
 body[data-review-style] .hero .hero-statement { font-size:20px; line-height:1.65; margin:0 0 18px; }
 body[data-review-style] .hero-actions { margin-top:18px; gap:10px 22px; }
 body[data-review-style] .hero { row-gap:26px; }
}

/* Accepted palette: a pale rose anchor, with restrained echoes across documents. */
:root { --rose-panel:#faf5f5; --rose-wash:#fefcfc; --rose-ink:#856568; }
.document-page .page-intro > .eyebrow { color:var(--rose-ink); }
.document-page .talks-perspective,
.document-page .museum-record,
.document-page .mother-forms { background:var(--rose-wash); }
.document-page .page-intro .back-link:hover,
.document-page .textlink:hover { text-decoration-color:var(--rose-ink); }

/* Repeated rose accents connect the full reading sequence. */
:root { --rose-secondary:#fcf8f8; --rose-wash:#fefcfc; }
body[data-page="home"] .worldview-mosaic .mosaic-reading-0,
body[data-page="home"] #practice-statement { background:var(--rose-secondary); }
body[data-page="home"] .work#pattern figure.origins-colour-study::before { background:var(--rose-secondary); }
body[data-page="home"] .home-book-image,
body[data-page="home"] .museum-card { background:var(--rose-wash); }
.document-page .book-feature > div,
.document-page .case-silk aside,
.document-page .method-reading > div:first-child,
.document-page .evidence-pair figure:nth-child(2),
.document-page .pattern-study { background:var(--rose-wash); }
.document-page .reading-contact,
.document-page .invitation-notes { background:var(--rose-wash); padding:28px; }
body[data-page="home"] #collaborate > .eyebrow { color:var(--rose-ink); }
@media screen and (max-width:760px) {
 .document-page .reading-contact,
 .document-page .invitation-notes { padding:24px 20px; }
}

/* Supporting-page palette, including narrow screens. */
.document-page .case-lead > figure > .image-trigger,
.document-page .portrait-in-context figure > .image-trigger,
.document-page .research-grounding figure > .image-trigger,
.document-page .museum-artwork-lead figure > .image-trigger {
 box-shadow:12px 12px 0 var(--rose-secondary);
}
.document-page .talks-invitation,
.document-page .three-forms-return { background:var(--rose-wash); padding:30px; }
@media screen and (max-width:760px) {
 .document-page .case-lead > figure > .image-trigger,
 .document-page .portrait-in-context figure > .image-trigger,
 .document-page .research-grounding figure > .image-trigger,
 .document-page .museum-artwork-lead figure > .image-trigger {
  box-shadow:8px 8px 0 var(--rose-secondary);
 }
 .document-page .talks-invitation,
 .document-page .three-forms-return { padding:24px 20px; }
 .document-page .reading-contact,
 .document-page .invitation-notes,
 .document-page .talks-invitation { min-width:0; box-sizing:border-box; }
}

/* Smaller screens need a quieter rose: more white, less chroma. */
@media screen and (max-width:760px) {
 :root { --rose-panel:#fcf8f8; --rose-secondary:#fdfafa; --rose-wash:#fefdfd; }
 body[data-review-style] .hero-portrait::before { background:var(--rose-panel); }
}

/* Editorial hierarchy: optional depth, concise invitation, evidenced outcomes. */
.practice-disclosure { margin:28px 0 42px; border-top:1px solid #d8cecf; border-bottom:1px solid #d8cecf; }
.practice-disclosure > summary { display:flex; align-items:center; justify-content:space-between; cursor:pointer; padding:22px 0; list-style:none; }
.practice-disclosure > summary::-webkit-details-marker { display:none; }
.practice-disclosure > summary::after { content:'+'; font:400 28px/1 Arial,sans-serif; }
.practice-disclosure[open] > summary::after { content:'−'; }
.practice-disclosure > summary h2 { font:400 28px/1.45 Georgia,'Songti SC',serif; margin:0; }
.practice-disclosure .practice-explorer { margin:0 0 24px; padding-top:0; border-top:0; }
.museum-record-disclosure { margin:24px 0; }
.museum-record-disclosure > summary { cursor:pointer; font-size:18px; line-height:1.7; }
.museum-record-disclosure .museum-recognition { margin-top:20px; }
body[data-page="home"] #practice-statement { padding-top:32px; padding-bottom:32px; margin-bottom:52px; }
body[data-page="home"] #practice-statement blockquote { font-size:clamp(28px,2.7vw,38px); line-height:1.6; }
body[data-page="home"] #practice-statement > .eyebrow { margin-bottom:18px; }
.collaboration-compact .collab-grid article:not(.collaboration-in-development) { padding-top:22px; padding-bottom:24px; }
.collaboration-compact .collab-grid h3 { margin-bottom:12px; }
.workshop-outcome { border-left:2px solid #d8bec1; padding-left:20px; font-size:18px; line-height:1.75; color:#555; }
.document-page .creative-directions .connection-card { padding:22px 24px; }
.document-page .creative-directions .connection-actions { margin-top:16px; }
summary:focus-visible { outline:2px solid #856568; outline-offset:6px; }
@media screen and (max-width:760px) {
 .practice-disclosure { margin:20px 0 30px; }
 .practice-disclosure > summary h2 { font-size:24px; }
 body[data-page="home"] #practice-statement { padding:24px 20px; margin-bottom:36px; }
 body[data-page="home"] #practice-statement blockquote { font-size:clamp(22px,5.5vw,26px); }
 .workshop-outcome { font-size:17px; padding-left:14px; }
}

/* An explicit artistic method gives the homepage portrait a purpose. */
body[data-page="home"] #about { grid-template-columns:minmax(240px,340px) minmax(0,1fr); gap:6%; align-items:center; }
body[data-page="home"] #about .about-method { max-width:650px; }
body[data-page="home"] #about .about-method-title { font:400 clamp(28px,2.7vw,38px)/1.5 Georgia,'Songti SC',serif; white-space:pre-line; text-wrap:balance; margin:0 0 22px; }
body[data-page="home"] #about .about-method p { max-width:30em; margin:0 0 12px; }
body[data-page="home"] #about .about-method .textlink { margin-top:18px; }
@media screen and (max-width:760px) {
 body[data-page="home"] #about { grid-template-columns:1fr; gap:28px; }
 body[data-page="home"] #about .about-method-title { font-size:28px; margin-bottom:18px; }
}

/* Cool grey balances the faint warm origin panel. */
body[data-page="home"] .worldview-mosaic .mosaic-reading-1,
body[data-page="home"] .worldview-mosaic .mosaic-reading-2 { background:#f1f3f4; }

/* A relaxed portrait introduces the artist; the original remains intact. */
body[data-review-style] .hero-portrait .image-trigger { aspect-ratio:.92; height:auto; }
body[data-review-style] .hero-portrait img { object-position:50% 65%; filter:saturate(.82) brightness(1.025) contrast(.97); }
@media screen and (max-width:760px) {
 body[data-review-style] .hero-portrait .image-trigger { aspect-ratio:.9; }
}

/* A visible cool-grey offset supports the vivid pattern study. */
body[data-page="home"] .work#pattern figure.origins-colour-study::before { background:#e3e7e9; }

/* The homepage portrait uses the same cool-grey offset as the pattern study. */
body[data-review-style] .hero-portrait::before { background:#e3e7e9; }

/* Newly supplied records: keep the exhibition poster and lecture scene legible. */
.gallery-threads figure[data-asset="threads-poster"] .image-trigger { height:auto; aspect-ratio:3/4; background:#f1f3f4; }
.gallery-threads figure[data-asset="threads-poster"] img { object-fit:contain; transform:none; filter:none; }
#session-lecture-audience .image-trigger img { object-fit:cover; object-position:center; transform:none; filter:none; }

/* Artist identity precedes the creative statement. */
body[data-page="home"] #about .about-method-identity { font-size:20px; line-height:1.65; color:#555; margin:0 0 14px; max-width:none; }
body[data-page="home"] #about .about-method-title { margin-bottom:22px; }
@media screen and (max-width:760px) {
 body[data-page="home"] #about .about-method-identity { font-size:18px; margin-bottom:12px; }
}

/* Balance the invitation sentence without a stranded final character. */
body[data-page="about"] .reading-contact p {
  text-wrap: balance;
  min-width: 0;
}

.museum-story h2 { text-wrap: balance; white-space: pre-line; }

/* Artist working base, secondary to identity and contact. */
.artist-location { font-size: 1rem; line-height: 1.6; color: #62676b; margin-top: 1rem; }

.symbol-creations { margin: 5rem 0; padding: 3rem 0; border-top: 1px solid #d9dde0; }
.creation-heading { max-width: 44rem; margin-bottom: 2rem; }
.pattern-frames { position: relative; aspect-ratio: 1888 / 1334; background: #eceeef; overflow: hidden; }
.pattern-frames figure { position: absolute; inset: 0; margin: 0; opacity: 0; visibility: hidden; transition: opacity 1.2s ease, visibility 1.2s; }
.pattern-frames figure:first-child, .pattern-frames figure.is-current { opacity: 1; visibility: visible; }
.pattern-frames.is-ready figure:not(.is-current) { opacity: 0; visibility: hidden; }
.pattern-frames .image-trigger, .pattern-frames img { width: 100%; height: 100%; }
.pattern-frames img, .creation-static-gallery img { object-fit: contain; filter: none; }
.pattern-controls { display: flex; justify-content: flex-end; align-items: center; flex-wrap: wrap; gap: 1.25rem; padding: 1rem 0; }
.pattern-controls button { background: transparent; border: 0; color: #444; font: inherit; padding: .5rem; cursor: pointer; min-height: 44px; }
.pattern-controls button:focus-visible { outline: 2px solid #856568; outline-offset: 2px; }
.creation-static-gallery { display: grid; gap: 2rem; }
.creation-static-gallery figure { margin: 0; }
.creation-static-gallery .image-trigger { width: 100%; }
.creation-static-gallery img { width: 100%; height: auto; max-height: 80vh; }
@media(max-width: 640px) { .symbol-creations { margin: 3rem 0; padding: 2rem 0; } .pattern-controls { gap: .5rem; justify-content: space-between; } }
@media(prefers-reduced-motion: reduce) { .pattern-frames figure { transition: none; } }
/* Selected details make the individual symbols legible. */
.pattern-player { width: min(100%, 720px); margin-inline: auto; }
.pattern-frames { aspect-ratio: 1.8; }
.pattern-frames .image-trigger { overflow: hidden; }
.pattern-frames img { object-fit: cover; transform: scale(3.4); transform-origin: 50% 50%; }
.creation-static-gallery { max-width: 720px; margin-inline: auto; }
.creation-static-gallery .image-trigger { overflow: hidden; aspect-ratio: 1.8; }
.creation-static-gallery img { width: 100%; height: 100%; max-height: none; object-fit: cover; transform: scale(3.4); }
@media(max-width:640px) { .pattern-frames, .creation-static-gallery .image-trigger { aspect-ratio: 1.4; } .pattern-frames img, .creation-static-gallery img { transform: scale(3); } }
/* A more intimate window, with fewer and larger pattern units. */
.pattern-player { width: min(100%, 560px); }
.pattern-frames { aspect-ratio: 1.75; }
.pattern-frames img { transform: scale(5.2); }
.creation-static-gallery { max-width: 560px; }
.creation-static-gallery .image-trigger { aspect-ratio: 1.75; }
.creation-static-gallery img { transform: scale(5.2); }
@media(max-width:640px) { .pattern-player, .creation-static-gallery { width: 88%; } .pattern-frames, .creation-static-gallery .image-trigger { aspect-ratio: 1.4; } .pattern-frames img, .creation-static-gallery img { transform: scale(4.6); } }

/* Show the artist's own visual correspondence, not an inferred diagram. */
.pattern-frames { background: #fff; aspect-ratio: 1.75; }
.pattern-frames img, .creation-static-gallery img { transform: none; }
.pattern-frames figure[data-asset="symbol-evolution-0"] img { object-fit: contain; }
.pattern-frames figure:not([data-asset="symbol-evolution-0"]) img,
.creation-static-gallery figure:not([data-asset="symbol-evolution-0"]) img { position: absolute; width: 170.5%; height: auto; max-width: none; max-height: none; left: -16.9%; top: -51.5%; object-fit: initial; }
.pattern-frames .image-trigger, .creation-static-gallery .image-trigger { position: relative; display: block; }
.creation-static-gallery figure[data-asset="symbol-evolution-0"] img { object-fit: contain; }
.creation-heading h2 { font-size: clamp(1.65rem, 3vw, 2.4rem); line-height: 1.3; }
@media(max-width:640px) { .pattern-frames, .creation-static-gallery .image-trigger { aspect-ratio: 1.75; } }

.pattern-frames figure { transition: opacity .6s ease, visibility .6s; }
@media(prefers-reduced-motion: reduce) { .pattern-frames figure { transition: none; } }

/* New artist-supplied expressions, aligned within a quiet fixed window. */
.pattern-frames, .creation-static-gallery .image-trigger { aspect-ratio: 1.5; background: #f7f7f7; }
.pattern-frames figure { transition: opacity .22s ease, visibility .22s; }
.pattern-frames figure[data-asset^="symbol-expression-"] img,
.creation-static-gallery figure[data-asset^="symbol-expression-"] img { position: absolute; max-width: none; max-height: none; object-fit: initial; transform: none; }
figure[data-asset="symbol-expression-1"] .image-trigger img { width: 280%; height: auto; left: -137%; top: -50%; }
figure[data-asset="symbol-expression-2"] .image-trigger img,
figure[data-asset="symbol-expression-3"] .image-trigger img { width: 100%; height: auto; left: 0; top: -130%; }
figure[data-asset="symbol-expression-4"] .image-trigger img { width: 240%; height: auto; left: -139%; top: -25%; }
figure[data-asset="symbol-expression-5"] .image-trigger img { width: 240%; height: auto; left: -99%; top: -62%; }
@media(prefers-reduced-motion: reduce) { .pattern-frames figure { transition: none; } }
.pattern-frames figure[data-asset="symbol-expression-1"] .image-trigger img,
.creation-static-gallery figure[data-asset="symbol-expression-1"] .image-trigger img { width: 280%; left: -137%; top: -50%; }
.pattern-frames figure[data-asset="symbol-expression-2"] .image-trigger img,
.pattern-frames figure[data-asset="symbol-expression-3"] .image-trigger img,
.creation-static-gallery figure[data-asset="symbol-expression-2"] .image-trigger img,
.creation-static-gallery figure[data-asset="symbol-expression-3"] .image-trigger img { width: 200%; left: 0; top: -435%; }
.pattern-frames figure[data-asset="symbol-expression-4"] .image-trigger img,
.creation-static-gallery figure[data-asset="symbol-expression-4"] .image-trigger img { width: 240%; left: -139%; top: -25%; }
.pattern-frames figure[data-asset="symbol-expression-5"] .image-trigger img,
.creation-static-gallery figure[data-asset="symbol-expression-5"] .image-trigger img { width: 240%; left: -99%; top: -62%; }
/* Full artwork presentation: no selected-detail crop. */
.pattern-frames figure[data-asset^="symbol-expression-"] .image-trigger img,
.creation-static-gallery figure[data-asset^="symbol-expression-"] .image-trigger img { position: static; width: 100%; height: 100%; max-width: 100%; max-height: 100%; left: auto; top: auto; object-fit: contain; transform: none; }
.pattern-frames figure[data-asset^="symbol-expression-"] .image-trigger,
.creation-static-gallery figure[data-asset^="symbol-expression-"] .image-trigger { width: 100%; height: 100%; background: #f7f7f7; }
.creation-static-gallery figure { aspect-ratio: 1.5; }
/* Individual compositions: each source has its own focal point and breathing room. */
.pattern-frames figure[data-asset^="symbol-expression-"] .image-trigger,
.creation-static-gallery figure[data-asset^="symbol-expression-"] .image-trigger { position: absolute; overflow: hidden; padding: 0; margin: 0; background: #f7f7f7; }
.pattern-frames figure[data-asset^="symbol-expression-"] .image-trigger img,
.creation-static-gallery figure[data-asset^="symbol-expression-"] .image-trigger img { position: absolute; max-width: none; max-height: none; height: auto; object-fit: initial; }
.pattern-frames figure[data-asset="symbol-expression-1"] .image-trigger,
.creation-static-gallery figure[data-asset="symbol-expression-1"] .image-trigger { width: 64%; height: 96%; left: 18%; top: 2%; }
.pattern-frames figure[data-asset="symbol-expression-1"] .image-trigger img,
.creation-static-gallery figure[data-asset="symbol-expression-1"] .image-trigger img { width: 365%; left: -195%; top: -56%; }
.pattern-frames figure[data-asset="symbol-expression-2"] .image-trigger,
.pattern-frames figure[data-asset="symbol-expression-3"] .image-trigger,
.creation-static-gallery figure[data-asset="symbol-expression-2"] .image-trigger,
.creation-static-gallery figure[data-asset="symbol-expression-3"] .image-trigger { width: 100%; height: 85%; left: 0; top: 7.5%; }
.pattern-frames figure[data-asset="symbol-expression-2"] .image-trigger img,
.pattern-frames figure[data-asset="symbol-expression-3"] .image-trigger img,
.creation-static-gallery figure[data-asset="symbol-expression-2"] .image-trigger img,
.creation-static-gallery figure[data-asset="symbol-expression-3"] .image-trigger img { width: 115%; left: 0; top: -260%; }
.pattern-frames figure[data-asset="symbol-expression-4"] .image-trigger,
.creation-static-gallery figure[data-asset="symbol-expression-4"] .image-trigger { width: 44%; height: 98%; left: 28%; top: 1%; }
.pattern-frames figure[data-asset="symbol-expression-4"] .image-trigger img,
.creation-static-gallery figure[data-asset="symbol-expression-4"] .image-trigger img { width: 335%; left: -198%; top: -13%; }
.pattern-frames figure[data-asset="symbol-expression-5"] .image-trigger,
.creation-static-gallery figure[data-asset="symbol-expression-5"] .image-trigger { width: 92%; height: 88%; left: 4%; top: 6%; }
.pattern-frames figure[data-asset="symbol-expression-5"] .image-trigger img,
.creation-static-gallery figure[data-asset="symbol-expression-5"] .image-trigger img { width: 365%; left: -162%; top: -61%; }
.creation-static-gallery figure { position: relative; overflow: hidden; }
.pattern-frames figure[data-asset="symbol-expression-5"] .image-trigger img,
.creation-static-gallery figure[data-asset="symbol-expression-5"] .image-trigger img { top: -104%; }
/* Fifth frame: isolate the complete black square, including all three symbols. */
.pattern-frames figure[data-asset="symbol-expression-5"] .image-trigger,
.creation-static-gallery figure[data-asset="symbol-expression-5"] .image-trigger { width: 64%; height: 96%; left: 18%; top: 2%; }
.pattern-frames figure[data-asset="symbol-expression-5"] .image-trigger img,
.creation-static-gallery figure[data-asset="symbol-expression-5"] .image-trigger img { width: 391.59%; height: auto; left: -174.19%; top: -70.94%; }

.pattern-frames figure[data-asset^="three-forms-creation-"] .image-trigger, .creation-static-gallery figure[data-asset^="three-forms-creation-"] .image-trigger { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; }
.pattern-frames figure[data-asset^="three-forms-creation-"] img, .creation-static-gallery figure[data-asset^="three-forms-creation-"] img { position: static; width: 100%; height: 100%; max-height: 100%; object-fit: contain; transform: none; }
/* Finished patterns: selected details, with distinct scales and focal positions. */
.pattern-frames figure[data-asset^="three-forms-creation-"] .image-trigger img,
.creation-static-gallery figure[data-asset^="three-forms-creation-"] .image-trigger img { object-fit: cover; transform-origin: center; }
.pattern-frames figure[data-asset="three-forms-creation-1"] img,
.creation-static-gallery figure[data-asset="three-forms-creation-1"] img { transform: scale(4.2); object-position: 48% 46%; }
.pattern-frames figure[data-asset="three-forms-creation-2"] img,
.creation-static-gallery figure[data-asset="three-forms-creation-2"] img { transform: scale(3.6); object-position: 52% 50%; }
.pattern-frames figure[data-asset="three-forms-creation-3"] img,
.creation-static-gallery figure[data-asset="three-forms-creation-3"] img { transform: scale(4.5); object-position: 50% 48%; }
/* Let the artwork sit directly on the white page. */
.pattern-frames,
.pattern-frames figure,
.pattern-frames figure .image-trigger,
.pattern-frames figure[data-asset] .image-trigger,
.creation-static-gallery figure,
.creation-static-gallery figure[data-asset] .image-trigger { background: #fff; }
/* Unify the near-white source canvas with the page without rebuilding the artwork. */
.pattern-frames figure[data-asset^="symbol-expression-"]:not([data-asset="symbol-expression-5"]) img,
.creation-static-gallery figure[data-asset^="symbol-expression-"]:not([data-asset="symbol-expression-5"]) img { filter: brightness(1.045); }
.pattern-frames figure[data-asset="symbol-expression-5"] img,
.creation-static-gallery figure[data-asset="symbol-expression-5"] img { filter: none; }

/* Film archive: restrained, click-to-play, with room for the story. */
.museum-film{margin:clamp(56px,8vw,112px) 0;max-width:960px}
.museum-film-heading{max-width:620px;margin-bottom:26px}
.museum-film-heading h2{font-size:clamp(26px,3vw,40px);margin:12px 0}
.museum-film-heading>p:last-child{font-size:17px;line-height:1.7;color:#575757}
.museum-film video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#111}
.museum-film video::cue{color:white;background:rgba(0,0,0,.76);font-size:clamp(14px,2vw,22px)}
@media(max-width:600px){.museum-film-heading>p:last-child{font-size:16px}.museum-film video::cue{font-size:14px}}
