:root{--paper:#f4f3ed;--ink:#111;--blue:#2457ff;--acid:#d9f24f;--line:#cbc9c0;--muted:#696962}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
.cn-site{font-family:"Arial Black","PingFang SC","Microsoft YaHei",sans-serif;background:var(--paper);color:var(--ink)}
.cn-site a{color:inherit;text-decoration:none}.cn-site p,.cn-site dd,.cn-site span{font-family:"PingFang SC","Microsoft YaHei",sans-serif}
.cn-nav{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:20px 5vw;background:#f4f3edf2;border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}
.cn-nav>a{font-size:20px;font-weight:900}.cn-nav div{display:flex;gap:30px;font-size:16px;font-weight:800}.cn-nav div a{transition:color .2s ease,transform .2s ease}.cn-nav div a:hover{color:var(--blue);transform:translateY(-2px)}
.cn-section{padding:110px 5vw;scroll-margin-top:76px}.section-label{margin:0;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.intro-kicker{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:46px}.intro-kicker>span{font-size:12px;letter-spacing:.1em;text-transform:uppercase}
.intro-layout{display:grid;grid-template-columns:minmax(300px,.85fr) 1.15fr;gap:8vw;align-items:start}.portrait-card{position:relative;margin:0;background:var(--blue);padding:46px 24px 20px;transform:rotate(-1.2deg);box-shadow:12px 12px 0 var(--ink)}
.portrait-photo{display:block;width:100%;height:auto;aspect-ratio:1098/1433;object-fit:contain;object-position:center;filter:none}.portrait-avatar{position:absolute;z-index:3;right:-17%;bottom:-7%;display:block;width:69%;height:auto;filter:drop-shadow(10px 12px 0 #8d4bff);pointer-events:none}.portrait-card figcaption{position:relative;z-index:4;color:white;font-size:12px;margin-top:16px}.portrait-name{position:absolute;z-index:4;top:15px;right:18px;color:white;font-size:12px;letter-spacing:.18em}
.intro-copy h2{font-size:clamp(54px,7vw,112px);line-height:.96;letter-spacing:-.08em;margin:0 0 44px}.intro-copy h2 strong{color:var(--blue);font-weight:950}.intro-statement{font-size:clamp(24px,2.5vw,42px);line-height:1.35;letter-spacing:-.03em;margin:0 0 34px}.intro-statement strong{font-family:inherit;background:var(--acid);padding:0 .12em}.bio-copy{font-size:17px;line-height:1.9;max-width:700px}.intro-copy dl{margin:38px 0}.intro-copy dl>div{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:17px 0;border-top:1px solid var(--line);font-size:14px}.intro-copy dt{color:var(--muted)}.intro-copy dd{margin:0;line-height:1.7}.text-link{display:inline-block;border-bottom:3px solid var(--ink);padding:10px 0;font-size:15px;font-weight:800}
.skills{display:flex;flex-wrap:wrap;gap:10px;margin-top:64px}.skills span{border:1px solid var(--ink);border-radius:999px;padding:10px 18px;font-size:13px;background:transparent}
.experiences{background:#fff;border-top:1px solid var(--ink)}.experience-intro{display:block}.experience-intro h2{max-width:1200px;font-size:clamp(44px,6vw,96px);line-height:1.02;letter-spacing:-.065em;margin:24px 0 0}.experience-intro h2 strong{font-weight:950}.experience-intro>p:last-child{max-width:650px;font-size:18px;line-height:1.8;margin:30px 0 0 auto}
.experience-chapter{--chapter-bg:var(--acid);padding:76px 5vw 96px;background:var(--chapter-bg);border-top:2px solid var(--ink);overflow:hidden}.experience-guizhou{--chapter-bg:#bdccff}.experience-shaowu{--chapter-bg:#ffb48a}
.experience-title{position:relative;margin:0 0 54px}.experience-marker{display:flex;justify-content:space-between;gap:24px;padding-bottom:14px;border-bottom:1px solid color-mix(in srgb,var(--ink) 42%,transparent);font-size:11px;letter-spacing:.14em}.experience-marker span{font-family:Arial,Helvetica,sans-serif}.experience-title h3{max-width:1100px;font-size:clamp(45px,5.5vw,88px);line-height:.99;letter-spacing:-.065em;margin:24px 0 42px}.experience-role{display:block;font-size:clamp(27px,3.2vw,50px);line-height:1.05;letter-spacing:-.045em;margin-bottom:16px}.experience-title h3 strong{font-weight:950}.experience-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.experience-facts>div{min-height:92px;padding:16px 18px 14px 0;border-right:1px solid color-mix(in srgb,var(--ink) 32%,transparent)}.experience-facts>div:not(:first-child){padding-left:18px}.experience-facts>div:last-child{border-right:0}.experience-facts dt{font:11px/1.2 Arial,Helvetica,sans-serif;letter-spacing:.12em;color:color-mix(in srgb,var(--ink) 62%,transparent)}.experience-facts dd{font:700 14px/1.55 "PingFang SC","Microsoft YaHei",sans-serif;margin:12px 0 0}
.experience-body{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:5vw;align-items:start}.experience-guizhou .experience-body{grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr)}.experience-reverse .experience-gallery{order:2}.experience-reverse .experience-copy{order:1}.experience-gallery{position:relative;min-height:620px}.experience-gallery img{display:block;width:80%;max-height:500px;object-fit:cover;border:2px solid var(--ink);box-shadow:10px 10px 0 var(--ink)}
.swap-gallery .swap-card{position:absolute;appearance:none;padding:0;border:0;background:transparent;cursor:pointer;transition:transform .35s ease}.swap-gallery .swap-card:first-of-type{z-index:2;left:0;top:0;width:87%;transform:rotate(-1deg)}.swap-gallery .swap-card:nth-of-type(2){z-index:3;right:0;bottom:52px;width:69%;transform:rotate(2deg)}.swap-gallery .swap-card img{width:100%;max-height:none;height:auto}.swap-gallery.is-swapped .swap-card:first-of-type{z-index:4;transform:translate(6%,10%) rotate(1deg)}.swap-gallery.is-swapped .swap-card:nth-of-type(2){z-index:2;transform:translate(-14%,-8%) rotate(-1deg)}.swap-hint{position:absolute;z-index:6;left:0;bottom:24px;background:var(--ink);color:white;padding:9px 13px;font-size:12px}.gallery-caption{position:absolute;z-index:7;left:0;bottom:0;font:10px/1.2 Arial,Helvetica,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.gallery-portrait{min-height:660px}.gallery-portrait img:first-child{width:56%;height:610px}.gallery-portrait img:nth-child(2){position:absolute;right:0;top:58px;width:49%;height:405px;transform:rotate(1.4deg)}.gallery-portrait img:nth-child(3){position:absolute;right:8%;bottom:14px;width:31%;height:230px;transform:rotate(-2.5deg)}.gallery-shaowu{min-height:650px}.gallery-shaowu img:first-child{width:59%;height:590px}.gallery-shaowu img:nth-child(2){position:absolute;right:0;top:28px;width:48%;height:315px;object-fit:contain;background:#111;transform:rotate(1.5deg)}.gallery-shaowu img:nth-child(3){position:absolute;right:4%;bottom:17px;width:52%;height:275px;transform:rotate(-1.5deg)}
.experience-copy{padding-top:4px}.experience-copy>p:first-child{font-size:18px;line-height:1.85;margin:0 0 44px;max-width:620px}.ability-conclusion{border-top:4px solid var(--ink);padding-top:15px}.ability-label{font:700 10px/1.2 Arial,Helvetica,sans-serif!important;letter-spacing:.15em;margin:0 0 25px!important}.ability-conclusion>p:last-child{font-size:clamp(20px,2vw,31px);font-weight:900;line-height:1.48;letter-spacing:-.03em;margin:24px 0 0}.chain-steps{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px 0 20px;border-bottom:1px solid var(--ink)}.chain-steps strong{font-size:clamp(17px,1.6vw,25px);white-space:nowrap}.chain-steps i{font:normal 22px/1 Arial,Helvetica,sans-serif}.field-statement{font-size:clamp(28px,3.15vw,52px)!important;font-weight:900;line-height:1.24!important;letter-spacing:-.045em;margin:0!important}.field-statement strong{background:#fff;padding:0 .08em}.field-notes{display:grid;grid-template-columns:repeat(3,1fr);margin-top:34px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.field-notes span{font-size:13px;font-weight:800;padding:14px 8px 14px 0}.field-notes span+span{border-left:1px solid var(--ink);padding-left:12px}.ability-process ol{padding:0;margin:0;list-style:none;border-top:1px solid var(--ink)}.ability-process li{display:grid;grid-template-columns:46px 1fr;align-items:center;padding:13px 0;border-bottom:1px solid var(--ink);font-size:clamp(19px,1.8vw,28px);font-weight:900}.ability-process li span{font:11px/1 Arial,Helvetica,sans-serif;letter-spacing:.12em}
.experience-wild .experience-title h3{font-size:clamp(42px,4.9vw,78px)}.experience-wild .experience-body{grid-template-columns:minmax(0,1fr) minmax(390px,1fr)}
.experience-switcher{display:grid;grid-template-columns:repeat(3,1fr);padding:0 5vw;background:#fff;border-top:1px solid var(--ink);border-bottom:2px solid var(--ink)}.experience-switcher button{display:grid;grid-template-columns:48px 1fr;grid-template-rows:auto auto;column-gap:14px;text-align:left;appearance:none;border:0;border-right:1px solid var(--ink);background:transparent;padding:20px 22px;cursor:pointer;color:var(--ink);transition:background-color .25s ease,color .25s ease}.experience-switcher button:first-child{border-left:1px solid var(--ink)}.experience-switcher button>span{grid-row:1/3;align-self:center;font:700 30px/1 Arial,sans-serif}.experience-switcher button b{font-size:18px;line-height:1.2}.experience-switcher button small{font-size:13px;line-height:1.4;margin-top:4px}.experience-switcher button:nth-child(1).is-active{background:var(--acid)}.experience-switcher button:nth-child(2).is-active{background:#bdccff}.experience-switcher button:nth-child(3).is-active{background:#ffb48a}.experience-switcher button:focus-visible{outline:4px solid #2558ff;outline-offset:-4px}.experience-chapter.is-active{animation:experience-in .38s cubic-bezier(.2,.75,.25,1)}@keyframes experience-in{from{opacity:.35;transform:translateY(16px)}to{opacity:1;transform:none}}
.experience-slider{min-height:0}.slider-stage{position:relative;height:590px}.experience-slide{position:absolute;top:0;left:0;width:86%;height:540px;appearance:none;padding:0;border:2px solid var(--ink);background:#f7f6f0;box-shadow:10px 10px 0 var(--ink);opacity:0;transform:translate(16%,7%) rotate(2deg) scale(.94);pointer-events:none;transition:transform .42s cubic-bezier(.2,.75,.25,1),opacity .3s ease;overflow:hidden}.experience-slide img{width:100%;height:100%;max-height:none;border:0;box-shadow:none;object-fit:cover}.experience-slide.is-current{z-index:4;opacity:1;transform:translate(0,0) rotate(-.6deg) scale(1);pointer-events:auto;cursor:pointer}.experience-slide.is-next{z-index:3;opacity:.72;transform:translate(8%,4%) rotate(1.2deg) scale(.97)}.experience-slide.is-after-next{z-index:2;opacity:.34;transform:translate(14%,7%) rotate(2.2deg) scale(.94)}.slider-wild .experience-slide img{object-fit:contain}.slider-wild .post-slide{background:#f4f3ed}.slider-wild .post-slide img{width:auto;max-width:100%;margin:auto;object-fit:contain;padding:20px}.experience-guizhou .slider-stage{height:680px}.experience-guizhou .experience-slide{width:68%;height:630px;left:9%}.experience-guizhou .experience-slide img{object-position:center;object-fit:cover}.experience-guizhou .slider-controls,.experience-guizhou .slider-caption{width:68%;margin-left:9%}.slider-controls{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;width:86%;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.slider-controls button{appearance:none;border:0;background:transparent;height:46px;font:700 22px/1 Arial,sans-serif;cursor:pointer}.slider-controls button:first-child{border-right:1px solid var(--ink)}.slider-controls button:last-child{border-left:1px solid var(--ink)}.slider-controls span{text-align:center;font:12px/1 Arial,sans-serif;letter-spacing:.14em}.slider-caption{width:86%;font-size:14px;line-height:1.55;margin:12px 0 0}.slider-controls button:hover{background:var(--ink);color:var(--chapter-bg)}
.salon-stats{display:grid;grid-template-columns:repeat(2,1fr);margin:-12px 0 34px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.salon-stats>div{display:flex;align-items:end;gap:12px;padding:15px 0}.salon-stats>div+div{border-left:1px solid var(--ink);padding-left:18px}.salon-stats strong{font-size:clamp(30px,3vw,48px);line-height:1}.salon-stats span{font-size:11px;padding-bottom:3px}.salon-flow{display:grid;grid-template-columns:repeat(2,1fr);margin-bottom:42px;border-top:1px solid var(--ink)}.salon-flow>div{display:grid;grid-template-columns:35px 1fr;padding:15px 12px 16px 0;border-bottom:1px solid var(--ink)}.salon-flow>div:nth-child(even){border-left:1px solid var(--ink);padding-left:16px}.salon-flow span{font:10px/1.4 Arial,sans-serif;letter-spacing:.12em}.salon-flow strong{font-size:15px}.salon-flow p{grid-column:2;font-size:12px;line-height:1.65;margin:7px 0 0}.business-note{font-size:15px!important;font-weight:400!important;line-height:1.8!important;letter-spacing:0!important;margin:24px 0 0!important}.business-note strong{font-weight:900}.marker-highlight{position:relative;z-index:0;box-decoration-break:clone;-webkit-box-decoration-break:clone;background:linear-gradient(transparent 55%,#fff16a 55%,#fff16a 93%,transparent 93%);padding:0 .08em}
.works{background:#fff}.works-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:52px}.works-heading h2{font-size:clamp(44px,5.5vw,86px);line-height:1.05;letter-spacing:-.06em;margin:18px 0 0}.works-heading>p{font-size:15px;line-height:1.8;color:var(--muted);margin:0}.project-filters{display:flex;gap:10px;flex-wrap:wrap;padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.project-filters button{appearance:none;border:1px solid var(--ink);border-radius:999px;background:white;padding:11px 20px;font:700 14px "PingFang SC","Microsoft YaHei",sans-serif;cursor:pointer}.project-filters button[aria-pressed="true"]{background:var(--ink);color:white}.project-count{font-size:12px;color:var(--muted);margin:20px 0 36px}.project-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:72px 28px}.project{min-width:0}.project-cover{position:relative;display:block;width:100%;padding:0;border:0;background:#ededed;overflow:hidden;cursor:pointer;text-align:left}.project-cover img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .5s ease}.project-cover>span{position:absolute;right:16px;bottom:16px;background:var(--acid);border:2px solid var(--ink);padding:10px 14px;font-size:13px;font-weight:800;box-shadow:4px 4px 0 var(--ink)}.project-cover i{font-style:normal}.project-cover:hover img,.project-cover[aria-expanded="true"] img{transform:scale(1.025)}.project-meta{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}.project-meta h3{font-size:clamp(24px,2.2vw,36px);line-height:1.1;letter-spacing:-.04em;margin:9px 0 0}.project-meta p{font-size:14px;line-height:1.75;margin:0}.project-type{font-size:11px;color:var(--muted)}.project-detail{grid-column:1/-1;background:var(--paper);padding:24px;margin-top:18px;border:1px solid var(--ink)}.project-detail>p{font-size:15px;line-height:1.8;max-width:760px;margin:0 0 24px}.project-detail img{display:block;width:100%;height:auto;margin:14px 0}.project-close{border:0;border-bottom:2px solid var(--ink);background:transparent;padding:8px 0;font-weight:800;cursor:pointer}
.abilities{background:var(--paper)}.ability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:48px;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}.ability-grid>div{padding:38px 28px;min-height:290px;border-right:1px solid var(--ink)}.ability-grid>div:last-child{border-right:0}.ability-grid span{font-size:11px;letter-spacing:.16em;color:var(--blue)}.ability-grid h3{font-size:27px;line-height:1.2;margin:54px 0 18px}.ability-grid p{font-size:15px;line-height:1.8;margin:0}
.contact{position:relative;min-height:830px;overflow:hidden;isolation:isolate;background:var(--ink);color:var(--paper)}.contact-copy{position:relative;z-index:3;width:52%;pointer-events:auto}.contact .section-label{color:#aaa}.contact h2{font-size:clamp(42px,5vw,78px);line-height:1.05;letter-spacing:-.06em;margin:46px 0}.contact h2 strong{color:var(--acid)}.contact-actions{display:flex;flex-wrap:wrap;gap:14px}.contact-actions a,.lanyard-trigger{display:inline-block;border:0;background:var(--acid);color:var(--ink);padding:15px 25px;border-radius:999px;font:900 16px "Arial Black","PingFang SC","Microsoft YaHei",sans-serif;cursor:pointer}.lanyard-trigger{background:var(--blue);color:#fff}.contact-actions a:hover,.lanyard-trigger:hover{transform:translateY(-3px)}.contact-copy>p:not(.section-label){font-size:16px;overflow-wrap:anywhere}.footer-line{position:relative;z-index:4;display:flex;justify-content:space-between;gap:20px;border-top:1px solid #555;padding-top:24px;margin-top:110px;font-size:12px}
.lanyard-modal[hidden]{display:none}.lanyard-modal{position:absolute;z-index:2;top:0;right:0;bottom:0;width:51%;display:block;border-left:1px solid #393939;background:radial-gradient(circle at 56% 43%,#282828 0,#111 62%);pointer-events:none}.lanyard-modal-stage{position:absolute;inset:0;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;contain:strict;pointer-events:auto}.lanyard-modal-copy{position:absolute;z-index:2;top:36px;left:36px;color:#fff;pointer-events:none}.lanyard-modal-copy span{font:800 13px/1 Arial,sans-serif;letter-spacing:.16em}.lanyard-modal-copy p{font-size:15px}.lanyard-close{position:absolute;z-index:3;top:28px;right:30px;width:52px;height:52px;border:1px solid #fff;background:#111;color:#fff;font:300 40px/1 Arial,sans-serif;cursor:pointer;pointer-events:auto}.lanyard-close:hover{background:var(--acid);border-color:var(--acid);color:var(--ink)}.lanyard-error{padding:20px;background:#fff;color:#111;font-weight:700}
.cn-site a:focus-visible,.cn-site button:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
@media(max-width:850px){.cn-section{padding:76px 22px}.cn-nav{padding:17px 22px}.cn-nav div{gap:15px}.intro-kicker>span{display:none}.intro-layout,.experience-intro,.experience-body,.experience-guizhou .experience-body,.experience-wild .experience-body{grid-template-columns:1fr}.portrait-card{max-width:520px;margin-bottom:38px}.experience-intro>p:last-child{grid-column:1}.experience-chapter{padding:64px 22px 80px}.experience-title h3{margin-bottom:32px}.experience-facts{grid-template-columns:repeat(2,1fr)}.experience-facts>div:nth-child(2){border-right:0}.experience-facts>div:nth-child(-n+2){border-bottom:1px solid color-mix(in srgb,var(--ink) 32%,transparent)}.experience-gallery{min-height:0}.experience-reverse .experience-gallery,.experience-reverse .experience-copy{order:initial}.experience-copy{margin-top:38px}.project-list{grid-template-columns:1fr}.project-meta{grid-template-columns:1fr}.ability-grid{grid-template-columns:1fr}.ability-grid>div{border-right:0;border-bottom:1px solid var(--ink);min-height:230px}.ability-grid>div:last-child{border-bottom:0}}
@media(max-width:520px){.cn-nav div a:nth-child(2){display:none}.intro-copy h2{font-size:56px}.intro-copy dl>div{grid-template-columns:1fr;gap:8px}.experience-marker span:last-child{display:none}.experience-title h3,.experience-wild .experience-title h3{font-size:39px}.experience-role{font-size:25px}.experience-facts{grid-template-columns:1fr}.experience-facts>div,.experience-facts>div:not(:first-child){min-height:0;padding:13px 0;border-right:0;border-bottom:1px solid color-mix(in srgb,var(--ink) 30%,transparent)}.experience-facts>div:last-child{border-bottom:0}.experience-facts dt,.experience-facts dd{display:inline}.experience-facts dd{margin-left:18px}.slider-stage{height:430px}.experience-slide{height:390px;width:90%}.slider-controls,.slider-caption{width:90%}.salon-flow{grid-template-columns:1fr}.salon-flow>div:nth-child(even){border-left:0;padding-left:0}.salon-stats strong{font-size:32px}.chain-steps{gap:5px}.chain-steps strong{font-size:15px}.field-statement{font-size:31px!important}.field-notes span{font-size:11px}.works-heading{display:block}.works-heading>p{margin-top:24px}.project-filters{position:sticky;top:58px;z-index:9;background:#fff;overflow-x:auto;flex-wrap:nowrap}.project-filters button{white-space:nowrap}.footer-line{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.project-cover img{transition:none}.project-close{scroll-behavior:auto}}

/* Keep the footer rule within the copy column so it never crosses the badge. */
.contact .footer-line{width:46%}
@media(max-width:850px){.contact .footer-line{width:auto}}

/* Experience switcher readability and responsive refinements */
.experience-marker{font-size:13px}.experience-facts dt{font-size:13px}.experience-facts dd{font-size:16px}.experience-copy>p:first-child{font-size:19px;max-width:680px}.ability-label{font-size:13px!important}.salon-stats span{font-size:13px}
@media(max-width:850px){.experience-switcher{padding:0 22px;grid-template-columns:repeat(3,minmax(160px,1fr));overflow-x:auto}.experience-switcher button{padding:16px;grid-template-columns:34px 1fr}.experience-switcher button>span{font-size:23px}}
@media(max-width:520px){.experience-switcher{grid-template-columns:repeat(3,160px)}.experience-switcher button b{font-size:16px}.experience-switcher button small{font-size:12px}.experience-copy>p:first-child{font-size:17px}.experience-guizhou .slider-stage{height:530px}.experience-guizhou .experience-slide{width:82%;height:480px;left:0}.experience-guizhou .slider-controls,.experience-guizhou .slider-caption{width:82%;margin-left:0}}
@media(prefers-reduced-motion:reduce){.experience-chapter.is-active{animation:none}.experience-switcher button{transition:none}}

/* Confirmed type scale and compact ability chain */
.experience-marker{font-size:15px}.experience-facts dt{font-size:16px}.experience-facts dd{font-size:19px}.experience-copy>p:first-child{font-size:21px;max-width:720px}.ability-label{font-size:15px!important}.salon-stats span{font-size:16px}.slider-controls span{font-size:15px}.slider-caption{font-size:16px}.chain-steps{justify-content:flex-start;gap:24px}.chain-steps strong{font-size:clamp(23px,2vw,30px)}.chain-steps i{font-size:24px}.works-heading{margin-bottom:72px}.project-cover{display:block}.project-cover>span{font-size:15px}
@media(max-width:520px){.experience-copy>p:first-child{font-size:18px}.experience-facts dt{font-size:14px}.experience-facts dd{font-size:16px}.chain-steps{gap:10px;flex-wrap:wrap}.chain-steps strong{font-size:18px}.slider-caption{font-size:14px}}

/* About section readability */
.bio-copy{font-size:20px;line-height:1.9}.intro-copy dl>div{grid-template-columns:125px 1fr;gap:24px;padding:21px 0;font-size:17px}.text-link{font-size:19px;padding:13px 0}.intro-copy dl{margin:42px 0}.project-cover img{object-position:center}
.about-jumps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:36px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.about-jumps a{display:flex;align-items:center;gap:12px;padding:20px 12px 20px 0;font-size:17px;font-weight:900;transition:background-color .2s ease,padding-left .2s ease}
.about-jumps a+a{border-left:1px solid var(--line);padding-left:18px}.about-jumps a:hover{background:var(--acid);padding-left:12px}.about-jumps a+a:hover{padding-left:24px}.about-jumps span{font:11px/1 Arial,sans-serif;color:var(--blue)}
@media(max-width:520px){.bio-copy{font-size:18px}.intro-copy dl>div{grid-template-columns:1fr;gap:9px;font-size:16px}.text-link{font-size:17px}}
@media(max-width:850px){.contact{min-height:1220px;padding-bottom:720px}.contact-copy{width:100%}.contact h2{font-size:clamp(42px,9vw,72px)}.lanyard-modal{top:auto;left:0;width:100%;height:680px;border-top:1px solid #393939;border-left:0}.footer-line{position:absolute;right:22px;bottom:28px;left:22px;margin:0}}
@media(max-width:520px){.contact{min-height:1120px;padding-bottom:650px}.lanyard-modal{height:620px}.lanyard-modal-copy{top:18px;left:20px}.lanyard-close{top:17px;right:20px}.contact-actions{gap:10px}.contact-actions a,.lanyard-trigger{font-size:14px;padding:13px 17px}}

/* Commercial work: original-ratio editorial gallery */
.commercial-work{background:#fff;border-top:1px solid var(--ink)}
.commercial-heading{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:7vw;align-items:end;margin-bottom:60px}
.commercial-heading h2{font-size:clamp(48px,6vw,92px);line-height:1;letter-spacing:-.07em;margin:18px 0 0}
.commercial-heading h2 strong{color:var(--blue)}
.commercial-heading>p{max-width:440px;font-size:17px;line-height:1.8;margin:0;color:var(--muted)}
.commercial-switcher{display:grid;grid-template-columns:repeat(2,1fr);margin-bottom:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.commercial-switcher button{position:relative;appearance:none;border:0;border-right:1px solid var(--ink);background:#fff;color:var(--ink);padding:24px 28px;text-align:left;font:900 clamp(25px,3vw,46px)/1 "Arial Black","PingFang SC",sans-serif;cursor:pointer}
.commercial-switcher button:last-child{border-right:0}
.commercial-switcher button span{display:block;margin-top:10px;font-size:13px;font-weight:500;line-height:1.4;color:var(--muted)}
.commercial-switcher button[aria-selected="true"]{background:#e8f1df}
.commercial-switcher button:nth-child(2)[aria-selected="true"]{background:#ffd629}
.commercial-switcher button[aria-selected="true"]::after{position:absolute;right:28px;bottom:-2px;left:28px;height:5px;background:var(--ink);content:""}
.commercial-case{padding-top:46px}
.commercial-case[hidden]{display:none}
.commercial-case-header{display:grid;grid-template-columns:minmax(330px,.85fr) minmax(0,1.15fr);gap:6vw;align-items:start;padding-bottom:40px;border-bottom:1px solid var(--ink)}
.commercial-case-header p{font-size:17px;line-height:1.75;margin:0}
.commercial-case-header .commercial-case-kicker{font-size:18px;font-weight:800}
.commercial-case-header h3{font-size:clamp(38px,4.3vw,66px);line-height:.96;letter-spacing:-.06em;margin:10px 0 0;white-space:nowrap}
.commercial-job{display:flex;align-items:center;gap:22px;margin-top:24px!important}.commercial-job strong,.commercial-job time{font-size:20px;font-style:normal}.commercial-job strong{padding:8px 13px;background:var(--ink);color:#fff}.commercial-job time{font-weight:800}
.commercial-case-header h4{max-width:780px;font-size:clamp(28px,3.5vw,54px);line-height:1.13;letter-spacing:-.05em;margin:0 0 22px}
.commercial-gallery{columns:3 285px;column-gap:18px;padding:42px 0 20px}
.commercial-image{position:relative;display:inline-block;width:100%;height:auto;margin:0 0 18px;vertical-align:top;break-inside:avoid;background:transparent}
.commercial-image img{display:block;width:100%;height:auto;object-fit:contain;transition:filter .25s ease}
.commercial-image figcaption{margin-top:8px;font-size:12px;line-height:1.45;color:var(--muted)}
.commercial-campaign button{position:absolute;z-index:3;right:10px;bottom:34px;appearance:none;border:1px solid var(--ink);background:var(--ink);color:#fff;padding:10px 13px;font:800 12px/1.2 "PingFang SC","Microsoft YaHei",sans-serif;cursor:pointer}
.commercial-campaign button:hover{background:#ffd629;color:var(--ink)}
.commercial-slices{scroll-margin-top:78px;margin-top:46px;padding-top:40px;border-top:4px solid var(--ink)}
.commercial-slices[hidden]{display:none}
.commercial-slices>header{display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw;margin-bottom:50px}
.commercial-slices>header p{font-size:13px;letter-spacing:.08em;margin:0}
.commercial-slices>header h4{font-size:clamp(30px,4vw,60px);line-height:1.08;letter-spacing:-.055em;margin:0}
.slice-run{max-width:980px;margin:0 auto 80px}
.slice-run h5{position:sticky;top:68px;z-index:4;width:max-content;margin:0 0 14px;background:#ffd629;border:1px solid var(--ink);padding:10px 14px;font-size:16px}
.slice-run div{border:1px solid var(--ink);background:#fff}
.slice-run img{display:block;width:100%;height:auto;margin:0}
.commercial-switcher button:focus-visible,.commercial-campaign button:focus-visible{outline:4px solid var(--blue);outline-offset:-4px}

@media(max-width:850px){
  .commercial-heading,.commercial-case-header,.commercial-slices>header{grid-template-columns:1fr}
  .commercial-case-header{gap:24px}
  .commercial-case-header h3{white-space:normal}
  .commercial-gallery{columns:2 240px}
}
@media(max-width:520px){
  .cn-nav div{gap:12px;font-size:12px}.cn-nav div a:nth-child(2){display:inline}.cn-nav>a{font-size:17px}
  .about-jumps{grid-template-columns:1fr}.about-jumps a+a{border-left:0;border-top:1px solid var(--line);padding-left:0}.about-jumps a+a:hover{padding-left:12px}
  .commercial-heading{display:block}
  .commercial-heading>p{margin-top:24px}
  .commercial-switcher button{padding:18px 14px;font-size:22px}
  .commercial-switcher button span{font-size:11px}
  .commercial-switcher button[aria-selected="true"]::after{right:14px;left:14px}
  .commercial-case{padding-top:36px}
  .commercial-gallery{columns:1;column-gap:0;padding-top:30px}
  .commercial-image{margin-bottom:28px}
  .commercial-slices{margin-top:22px}
  .slice-run{margin-bottom:54px}
}
@media(hover:hover){
  .commercial-image{overflow:hidden}
  .commercial-image figcaption{position:absolute;z-index:2;inset:0;display:grid;place-items:center;margin:0;padding:24px;background:rgba(0,0,0,.08);color:#fff;font-size:clamp(15px,1.35vw,22px);font-weight:900;line-height:1.35;text-align:center;opacity:0;pointer-events:none;transition:opacity .25s ease}
  .commercial-image:hover img{filter:brightness(.35)}
  .commercial-image:hover figcaption{opacity:1}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.commercial-image img,.commercial-image figcaption,.cn-nav div a{transition:none}}

/* Collapsible commercial galleries */
.commercial-gallery-preview{padding-bottom:10px}
.commercial-gallery-toggle{display:flex;align-items:center;justify-content:space-between;gap:28px;width:100%;margin:16px 0 0;padding:17px 0;border:0;border-top:2px solid var(--ink);border-bottom:1px solid var(--ink);background:transparent;color:var(--ink);font:900 17px/1 "Arial Black","PingFang SC","Microsoft YaHei",sans-serif;cursor:pointer;text-align:left}
.commercial-gallery-toggle span{font:900 24px/1 Arial,sans-serif;transition:transform .35s ease}.commercial-gallery-toggle[aria-expanded="true"] span{transform:rotate(180deg)}
.commercial-gallery-more{max-height:0;overflow:hidden;opacity:0;transition:max-height .72s cubic-bezier(.2,.75,.25,1),opacity .35s ease}.commercial-gallery-more[aria-hidden="false"]{opacity:1}.commercial-gallery-extra{padding-top:34px}

@media(max-width:520px){.commercial-gallery-toggle{font-size:15px}}

/* One continuous, internally scrollable work gallery. */
.commercial-gallery-shell{height:min(72vh,760px);margin-top:42px;overflow-y:auto;overscroll-behavior-y:contain;border:2px solid var(--ink);background:#ecece7;scrollbar-gutter:stable;outline:none}
.commercial-gallery-shell:focus-visible{outline:4px solid var(--blue);outline-offset:4px}
.commercial-gallery-shell>header{position:sticky;z-index:8;top:0;display:flex;justify-content:space-between;gap:24px;padding:14px 18px;border-bottom:2px solid var(--ink);background:#fff}
.commercial-gallery-shell>header strong{font-size:15px}.commercial-gallery-shell>header span{font-size:13px;color:var(--muted)}
.commercial-gallery-shell .commercial-gallery{columns:3 260px;column-gap:12px;padding:12px}
.commercial-gallery-shell .commercial-image{margin-bottom:12px;background:#fff}
.commercial-gallery-shell::-webkit-scrollbar{width:12px}.commercial-gallery-shell::-webkit-scrollbar-track{background:#deded8}.commercial-gallery-shell::-webkit-scrollbar-thumb{background:var(--ink);border:3px solid #deded8}

@media(max-width:850px){.commercial-gallery-shell .commercial-gallery{columns:2 220px}}
@media(max-width:520px){.commercial-gallery-shell{height:68vh;margin-top:30px}.commercial-gallery-shell>header{align-items:center}.commercial-gallery-shell>header span{max-width:150px;text-align:right}.commercial-gallery-shell .commercial-gallery{columns:1;padding:10px}.commercial-gallery-shell .commercial-image{margin-bottom:10px}}
@media(prefers-reduced-motion:reduce){.commercial-gallery-shell{scroll-behavior:auto}}
