:root{--paper:#f5f3ed;--card:#fffef9;--ink:#252820;--muted:#62695d;--line:#dcded2;--orange:#c34b27;--green:#344b3c;--gold:#e9d5a8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.8 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:5px}img{display:block;max-width:100%;height:auto}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--orange);outline-offset:4px}[hidden]{display:none!important}.container{max-width:1250px;margin:0 auto;padding:0 45px}.skip{position:fixed;top:-90px;left:15px;z-index:50;background:var(--ink);color:white;padding:12px}.skip:focus{top:10px}.site-header{border-bottom:1px solid var(--line);background:var(--paper)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:96px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:21px;font-weight:700;line-height:1.25;letter-spacing:.04em}.brand-glyph{display:grid;place-items:center;width:39px;height:42px;border:1px solid var(--orange);color:var(--orange);border-radius:3px;font:27px/1 "Songti SC",STSong,serif}.brand small{display:block;font-size:8px;letter-spacing:.14em;font-weight:500;color:var(--muted);margin-top:6px}.site-header nav{display:flex;align-items:center;gap:29px}.site-header nav a{text-decoration:none;font-size:13px}.site-header nav [aria-current]{color:var(--orange)}.site-header nav .nav-contact{padding:10px 20px;border:1px solid var(--ink);border-radius:25px;font-weight:600}.site-header nav .nav-contact:hover{background:var(--ink);color:var(--paper)}.eyebrow{font-size:11px;color:var(--orange);letter-spacing:.11em;font-weight:600;margin:0 0 18px}.small-line{width:24px;height:1px;background:var(--orange);display:inline-block;vertical-align:middle;margin-right:10px}h1,h2{font-family:"Songti SC",STSong,"Noto Serif CJK SC",serif;font-weight:500;letter-spacing:-.035em}h1{font-size:clamp(42px,4.5vw,65px);line-height:1.28;margin:0 0 24px}h1 span{color:var(--orange)}h2{font-size:38px;line-height:1.35;margin:0}h3{line-height:1.5}p{margin-top:0}.hero{display:grid;grid-template-columns:1.08fr 1fr;align-items:center;gap:38px;padding:64px 0 62px;min-height:625px}.hero-lead{font-size:15px;line-height:2;color:var(--muted);margin:0 0 26px}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:13px 24px;background:var(--orange);border:1px solid var(--orange);color:white;border-radius:28px;text-decoration:none;font-size:13px;font-weight:650;line-height:1.5}.button:hover{background:#a63e21}.button.secondary{background:transparent;border-color:#bac0b1;color:var(--ink)}.button.secondary:hover{background:#e9eadf}.learning-link{display:inline-block;font-size:12px;color:var(--muted);margin-top:22px}.hero-art{position:relative;height:450px;min-width:0}.art-label{position:absolute;inset:0 0 auto;display:flex;justify-content:space-between;gap:8px;font-size:8px;letter-spacing:.06em;color:var(--muted);border-top:1px solid var(--line);padding-top:11px}.window{position:absolute;display:block;border:1px solid #d3d7c9;background:var(--card);box-shadow:0 14px 28px #303b2810;border-radius:9px;text-decoration:none;overflow:hidden;transition:transform .2s}.window:hover{transform:translateY(-5px)}.window-bar{display:flex;align-items:center;gap:4px;height:27px;padding:0 10px;border-bottom:1px solid var(--line);font-size:8px;color:var(--muted)}.window-bar i{width:4px;height:4px;border-radius:50%;background:#aab3a1}.window-bar span{margin-left:5px}.window-bar b{margin-left:auto;font-size:12px}.window-english{top:43px;right:0;width:91%;z-index:1;transform:rotate(2deg)}.window-book{top:204px;left:0;width:68%;z-index:2;transform:rotate(-3deg)}.window img{width:100%;aspect-ratio:1.6;object-fit:cover;object-position:top}.studio-note{position:absolute;right:2px;bottom:6px;display:flex;align-items:center;gap:9px;font-size:10px;color:var(--muted);z-index:3}.studio-note strong{font-weight:500;color:var(--ink)}.note-dot{height:7px;width:7px;background:var(--orange);border-radius:50%}.route-strip{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line);padding:23px 0;gap:24px}.route-strip a{display:flex;align-items:center;gap:12px;text-decoration:none;border-right:1px solid var(--line);padding-right:23px}.route-strip a:last-child{border:0;padding-right:0}.route-strip span{color:var(--orange);font-size:10px}.route-strip strong{font-size:14px;font-weight:600}.route-strip b{font-size:17px;margin-left:auto;font-weight:400}.section{padding:67px 0;border-bottom:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:31px}.section-heading .eyebrow{margin-bottom:12px}.section-heading>p{font-size:13px;color:var(--muted);margin:0;line-height:1.9}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.project-card{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden;min-width:0}.card-visual{display:block;overflow:hidden;background:#e8eadd;border-bottom:1px solid var(--line);padding:14px;text-decoration:none}.card-visual img{width:100%;aspect-ratio:1.65;object-fit:cover;object-position:top;border-radius:5px;border:1px solid #d8ddcf;transition:transform .25s}.card-visual:hover img{transform:scale(1.025)}.card-copy{padding:23px;display:flex;flex-direction:column;flex:1}.card-meta{display:flex;align-items:center;justify-content:space-between;gap:7px;font-size:10px;color:var(--muted)}.status{background:#edf0e4;border-radius:4px;padding:2px 6px;white-space:nowrap;color:#4d6446}.status.pending{color:#8e6124;background:#f4ead4}.card-copy h3{font-size:21px;letter-spacing:-.02em;margin:13px 0 11px}.card-copy>p{font-size:13px;line-height:1.8;margin:0 0 15px;color:var(--muted)}.card-copy>p.audience{font-size:11px;color:#747a6b;line-height:1.7;margin-bottom:17px}.card-copy>p.credit{font-size:10px;color:var(--orange);line-height:1.7;margin-bottom:15px}.card-action{margin-top:auto;border-top:1px solid var(--line);padding-top:15px}.card-action a{display:flex;justify-content:space-between;gap:10px;text-decoration:none;font-size:12px;font-weight:600}.card-action a:hover{color:var(--orange)}.section-tail{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:28px}.section-tail>span{font-size:12px;color:var(--muted)}.update-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.update-grid article{border-top:2px solid #b6c2a5;padding-top:20px}.update-meta{font-size:10px;color:var(--orange)}.update-meta span{color:var(--muted);margin-left:15px}.update-grid h3{font-size:20px;font-weight:600;margin:16px 0 12px}.update-grid p{font-size:13px;color:var(--muted);line-height:1.9;margin-bottom:20px}.update-grid a{font-size:12px}.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:75px;align-items:center}.portrait{position:relative}.portrait>img{height:480px;width:100%;object-fit:cover;object-position:center 20%;border-radius:140px 140px 8px 8px;background:#181d17}.portrait-label{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:16px}.portrait-label strong{font-size:16px;font-weight:600}.portrait-label span{font-size:10px;color:var(--muted)}.about-copy h2{font-size:43px;margin-bottom:23px}.about-copy>p:not(.eyebrow){font-size:14px;line-height:1.95;color:var(--muted);margin-bottom:15px}.about-links{display:flex;flex-wrap:wrap;gap:10px 24px;margin:20px 0 29px;font-size:12px}.mentorship{border-top:1px solid var(--line);padding-top:23px}.mentorship>span{font-size:10px;color:var(--orange)}.mentorship h3{font-size:20px;margin:9px 0}.mentorship p{font-size:13px;color:var(--muted);line-height:1.9}.mentorship a{font-size:12px;font-weight:600}.contact-band{margin:60px 0;background:var(--green);color:#fffbed;border-radius:16px;padding:44px 50px;display:grid;grid-template-columns:1fr 220px;gap:65px;align-items:center}.contact-band .eyebrow{color:#d6c9a8}.contact-band h2{font-size:40px;margin-bottom:19px}.contact-band p:not(.eyebrow){font-size:14px;max-width:540px;color:#d9e0d0;line-height:1.9}.button.cream{background:var(--gold);border-color:var(--gold);color:var(--ink)}.contact-note{display:block;margin-top:16px;font-size:11px;color:#c9d5bd}.contact-band figure{margin:0;text-align:center}.contact-band img{width:200px;height:200px;border:9px solid white;background:white;border-radius:9px;margin:auto}.contact-band figcaption{font-size:11px;color:#d9e0d0;margin-top:14px}.site-footer{border-top:1px solid var(--line)}.footer-top{display:flex;justify-content:space-between;gap:30px;padding:34px 0}.footer-top .brand{font-size:19px}.footer-top p{font-size:12px;color:var(--muted);margin:15px 0 0}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:10px 28px;align-content:center;font-size:12px}.footer-links a{text-decoration:none}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:18px 0 26px;font-size:10px;color:var(--muted)}.directory-intro{padding:60px 0 34px}.directory-intro h1{font-size:49px}.directory-tools{border-top:1px solid var(--line);padding-top:26px;margin-top:36px}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.filters button{background:transparent;color:var(--muted);padding:8px 19px;border:1px solid #c6cbbb;border-radius:24px;font-size:13px}.filters button[aria-pressed=true]{background:var(--green);border-color:var(--green);color:#fffdf5}.search-wrap{display:flex;align-items:center;gap:15px;max-width:560px}.search-wrap label{font-size:12px;white-space:nowrap}.search-wrap input{min-width:0;width:100%;background:#fffef9;border:1px solid #bec7b6;border-radius:7px;padding:11px 13px;font-size:13px;color:var(--ink)}.search-wrap button{background:none;border:0;font-size:12px;white-space:nowrap;text-decoration:underline}.directory-tools #result-status{font-size:11px;color:var(--muted);margin:16px 0 0}.graphic{aspect-ratio:1.65;background:var(--green);color:#fffdf3;border-radius:5px;display:flex;flex-direction:column;justify-content:center;padding:25px}.graphic span{font-size:11px;color:#d1d9c5}.graphic strong{font:27px/1.6 "Songti SC",serif;margin:13px 0}.graphic small{font-size:9px;color:#d2c5a3}.empty-results{padding:40px;text-align:center;background:#e9eddf;border-radius:10px;font-size:14px}.directory-note{font-size:12px;color:var(--muted);padding:25px 0 0}dialog{border:1px solid var(--line);border-radius:18px;padding:30px;text-align:center;width:min(430px,calc(100vw - 30px));max-height:calc(100dvh - 30px);overflow:auto;color:var(--ink);background:var(--card)}dialog::backdrop{background:#17201899;backdrop-filter:blur(3px)}.dialog-close{position:absolute;right:14px;top:9px;background:none;border:0;font-size:28px;color:var(--muted);width:40px;height:40px}.dialog-close:hover{color:var(--orange)}dialog .eyebrow{margin-top:13px;margin-bottom:12px}dialog h2{font-size:30px;margin-bottom:12px}dialog p{font-size:13px;color:var(--muted)}dialog>img{width:min(260px,100%);height:auto;margin:15px auto}.dialog-note{font-size:12px!important}.dialog-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 20px;font-size:12px}a:hover{color:var(--orange)}.button:hover,.nav-contact:hover{color:white}.button.secondary:hover,.button.cream:hover{color:var(--ink)}
@media(max-width:1080px){.container{padding:0 30px}.hero{gap:25px}.hero h1{font-size:51px}.hero-art{height:390px}.window-book{top:185px}.studio-note{bottom:-7px}.site-header nav{gap:20px}.about{gap:45px}.portrait>img{height:440px}.card-copy{padding:20px}.project-grid{gap:18px}.contact-band{gap:35px;padding:35px}.route-strip{gap:17px}.route-strip a{padding-right:17px}.route-strip strong{font-size:13px}.graphic strong{font-size:23px}.art-label span:first-child{font-size:7px}}
@media(max-width:760px){html{scroll-padding-top:25px}.container{padding:0 22px}.header-inner{min-height:79px;gap:14px}.brand{font-size:18px;gap:9px}.brand-glyph{width:30px;height:34px;font-size:23px}.brand small{font-size:6px;letter-spacing:.08em}.site-header nav{gap:17px}.site-header nav a{font-size:11px}.site-header nav .desktop-nav{display:none}.site-header nav .nav-contact{padding:8px 12px}.hero{grid-template-columns:1fr;gap:32px;min-height:0;padding:38px 0 32px}.hero .eyebrow{font-size:10px;margin-bottom:19px}.hero h1{font-size:43px;line-height:1.27;margin-bottom:20px}.hero-lead{font-size:14px;line-height:1.95;margin-bottom:23px}.desktop-break{display:none}.hero-actions{gap:12px}.button{font-size:12px;padding:12px 20px;gap:15px}.learning-link{font-size:10px;margin-top:18px}.hero-art{height:340px;max-width:440px;width:100%;margin:0 auto}.art-label{font-size:7px}.window-english{top:35px;width:89%}.window-book{top:163px;width:67%}.window-bar{height:22px;font-size:6px}.studio-note{bottom:0;font-size:9px}.route-strip{grid-template-columns:1fr 1fr;padding:20px 0;gap:18px 22px}.route-strip a{border:0;padding:0;gap:10px}.route-strip strong{font-size:12px}.route-strip span{font-size:9px}.route-strip b{font-size:14px}.section{padding:39px 0}.section-heading{display:block;margin-bottom:24px}.section-heading .eyebrow{font-size:10px;margin-bottom:10px}.section-heading>p{font-size:12px;margin-top:15px}.section-heading h2{font-size:29px}.project-grid{grid-template-columns:1fr;gap:21px}.card-visual{padding:13px}.card-visual img{aspect-ratio:1.9}.card-copy{padding:22px}.card-meta{font-size:10px}.card-copy h3{font-size:22px;margin:11px 0}.card-copy>p{font-size:13px}.card-copy>p.audience{font-size:11px}.card-copy>p.credit{font-size:10px}.card-action{padding-top:13px}.card-action a{font-size:12px}.section-tail{display:block;margin-top:24px}.section-tail>span{display:block;font-size:11px;margin-bottom:17px}.update-grid{grid-template-columns:1fr;gap:25px}.update-grid article{padding-top:16px}.update-grid h3{font-size:19px;margin:12px 0 10px}.update-grid p{font-size:13px;margin-bottom:13px}.about{grid-template-columns:1fr;gap:29px}.portrait{max-width:100%}.portrait>img{height:330px;object-position:center 24%;border-radius:12px}.portrait-label{margin-top:13px}.portrait-label strong{font-size:15px}.portrait-label span{font-size:9px}.about-copy .eyebrow{font-size:10px}.about-copy h2{font-size:33px;margin-bottom:20px}.about-copy>p:not(.eyebrow){font-size:13px}.about-links{font-size:11px;margin:19px 0 25px}.mentorship h3{font-size:19px}.mentorship p{font-size:13px}.contact-band{margin:37px 0;grid-template-columns:1fr;gap:30px;padding:28px}.contact-band h2{font-size:31px}.contact-band p:not(.eyebrow){font-size:13px}.contact-band figure{display:flex;align-items:center;gap:20px;text-align:left;border-top:1px solid #ffffff29;padding-top:25px}.contact-band img{width:115px;height:115px;border-width:5px;margin:0}.contact-band figcaption{font-size:11px;margin:0;max-width:100px}.footer-top{padding:28px 0;display:block}.footer-top .brand{font-size:18px}.footer-top p{font-size:11px}.footer-links{font-size:11px;margin-top:25px;gap:12px 20px}.footer-bottom{display:block;font-size:9px;line-height:1.9;padding-bottom:22px}.footer-bottom span{display:block}.directory-intro{padding:37px 0 28px}.directory-intro h1{font-size:36px}.directory-intro .eyebrow{font-size:10px}.directory-tools{padding-top:22px;margin-top:25px}.filters{gap:8px;margin-bottom:20px}.filters button{font-size:11px;padding:7px 13px}.search-wrap{gap:10px}.search-wrap label{font-size:11px}.search-wrap input{font-size:12px;padding:10px}.directory-note{font-size:11px}.graphic strong{font-size:29px}.graphic{aspect-ratio:1.9}.empty-results{padding:25px;font-size:13px}}
@media(max-width:360px){.container{padding:0 17px}.brand-glyph{display:none}.brand{font-size:17px}.site-header nav{gap:12px}.site-header nav .nav-contact{padding:7px 10px}.hero h1{font-size:37px}.hero-actions{gap:10px}.button{padding:11px 16px;font-size:11px}.hero-art{height:287px}.window-book{top:140px}.studio-note{font-size:8px;bottom:-5px}.card-copy{padding:19px}.section-heading h2{font-size:27px}.contact-band{padding:24px}.contact-band h2{font-size:29px}.portrait>img{height:290px}.directory-intro h1{font-size:32px}.filters button{padding:6px 11px}.search-wrap label{display:none}.graphic strong{font-size:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
