@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600;700&display=swap');
:root{--paper:#f6f3ec;--cream:#f1ece2;--line:#d8d2c6;--ink:#282721;--muted:#716d65;--accent:#c9674d;--accent-dark:#a94d38;--dark:#242523;--darkline:#4b4a46;--white:#fffdfa;--radius:4px;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:83px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans','Noto Sans SC',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;line-height:1.68;-webkit-font-smoothing:antialiased}
button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}a:hover{color:var(--accent-dark)}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.wrap{width:min(1180px,calc(100% - 72px));margin-inline:auto}.eyebrow{display:flex;align-items:center;gap:10px;color:var(--accent-dark);font-size:12px;letter-spacing:.12em;font-weight:700;text-transform:uppercase}.muted{color:#a19b90}.dot{width:7px;height:7px;border-radius:50%;background:var(--accent)}.skip-link{position:fixed;z-index:9999;top:-100px;left:15px;background:#fff;padding:10px 20px}.skip-link:focus{top:12px}
.notice{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;padding:7px 16px;text-align:center;background:#e8e2d8;color:#48443d;font-size:11px;line-height:1.5;border-bottom:1px solid #d9d3c9}.notice strong{font-weight:600}.notice a{text-decoration:underline;text-underline-offset:3px}.little-star{color:var(--accent-dark)}
.masthead{position:sticky;top:0;background:rgba(246,243,236,.97);backdrop-filter:blur(20px);z-index:80;border-bottom:1px solid var(--line)}.nav-inner{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:26px}.wordmark{font-weight:800;font-size:17px;letter-spacing:-.065em;display:inline-flex;align-items:center;gap:12px;white-space:nowrap}.wordmark em{font-weight:500;font-style:normal}.brand-mark{font-family:Georgia,serif;display:inline-grid;place-items:center;color:var(--accent);font-size:34px;line-height:1;transform:rotate(-10deg)}.desktop-nav,.nav-actions{display:flex;gap:32px;align-items:center}.desktop-nav a{color:#5d5952;font-size:13px;font-weight:600}.desktop-nav a:hover{color:var(--accent-dark)}.nav-actions{gap:18px}.nav-gh{font-size:13px;font-weight:650}.nav-contact{font-size:12px;background:var(--ink);color:var(--paper);padding:10px 15px;font-weight:700;border-radius:2px;white-space:nowrap}.nav-contact:hover{color:#fff;background:var(--accent-dark)}.mobile-menu-toggle{display:none;background:transparent;border:0;font-size:23px}.mobile-nav{display:none}
.hero{padding:94px 0 98px;position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.14fr .86fr;gap:72px;align-items:center}.hero h1{font-family:Georgia,'Songti SC','Noto Serif SC',serif;letter-spacing:-.07em;font-size:clamp(57px,6.2vw,100px);line-height:1.12;font-weight:400;margin:27px 0 30px}.hero h1 em,.section-heading h2 em,.path-section h2 em,.practice-section h2 em,.contact-section h2 em{color:var(--accent);font-style:normal}.hero-serif{font-weight:400}.lead{max-width:520px;font-size:17px;color:#5b574f;line-height:1.95}.lead strong{color:var(--ink);font-weight:650}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:37px}.btn{display:inline-flex;justify-content:space-between;align-items:center;gap:40px;padding:14px 21px;border:1px solid transparent;border-radius:2px;font-size:13px;font-weight:700;transition:transform .18s,background .18s,color .18s}.btn:hover{transform:translateY(-2px)}.btn-primary{color:white;background:var(--accent)}.btn-primary:hover{color:white;background:var(--accent-dark)}.btn-outline{border-color:#a9a397;background:transparent;color:var(--ink)}.btn-outline:hover{background:#e8e2d8}.hero-foot{display:flex;gap:12px;align-items:center;color:#979086;font-size:11px;margin-top:32px}.sep{color:var(--accent)}
.hero-art{background:#ebe5da;min-height:530px;padding:24px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;border:1px solid #dfd9cd}.hero-art:after{content:"";position:absolute;width:380px;height:380px;border:1px solid #d0c7b8;border-radius:50%;right:-184px;top:-182px;pointer-events:none}.hero-art:before{content:"";position:absolute;width:620px;height:620px;border:1px solid #dad2c7;border-radius:50%;right:-310px;top:-240px;pointer-events:none}.art-top{display:flex;justify-content:space-between;align-items:start}.art-kicker,.art-caption{font-size:10px;letter-spacing:.15em;color:#8d857a;font-weight:700}.art-asterisk{font-family:Georgia,serif;color:var(--accent);font-size:74px;line-height:.75}.diagram{z-index:1;padding:8px 18px}.diagram-row{display:flex;justify-content:center;gap:15px}.diagram-box{padding:16px 20px;background:var(--paper);border:1px solid #d3cabd;flex:1;min-width:0;box-shadow:4px 4px 0 #ded7cb}.diagram-box strong{display:block;margin-top:4px;font-family:Georgia,'Songti SC',serif;font-size:19px;font-weight:400;color:#302e29}.diagram-box small{display:block;margin-top:6px;font-size:10px;color:#989083}.d-number{font-size:9px;color:var(--accent-dark);letter-spacing:.15em;font-weight:800}.diagram-user{max-width:255px}.diagram-split .diagram-box{max-width:206px}.diagram-final{max-width:345px;position:relative}.check{position:absolute;right:19px;top:21px;color:#59815e;font-size:17px}.line-arrow{height:47px;position:relative}.line-arrow:before{content:"";height:40px;width:1px;background:#a89e90;position:absolute;top:0;left:50%}.line-arrow:after{content:"";position:absolute;top:31px;left:calc(50% - 4px);width:7px;height:7px;border-bottom:1px solid #a89e90;border-right:1px solid #a89e90;transform:rotate(45deg)}.art-caption{display:flex;justify-content:space-between;letter-spacing:.08em}
.numbers{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#eeebe3}.number-grid{display:grid;grid-template-columns:repeat(4,1fr)}.number-grid>div{padding:28px 30px 32px;border-right:1px solid var(--line)}.number-grid>div:first-child{padding-left:0}.number-grid>div:last-child{border:0}.number-grid strong{font-size:51px;line-height:1;font-family:Georgia,serif;font-weight:400;letter-spacing:-.065em}.number-grid strong span{font-family:'Noto Sans SC',sans-serif;color:var(--accent);font-size:16px;font-weight:400;margin-left:6px}.number-grid p{font-size:12px;color:#69645b;margin:8px 0 0}.number-grid .last-num>span{display:block;margin:10px 0 23px;font-family:Georgia,'Songti SC',serif;font-size:20px}.number-grid .last-num p{margin:0;line-height:1.8}
.editorial-section,.library-section,.path-section{padding:112px 0}.section-heading{display:grid;grid-template-columns:1fr 345px;gap:60px;justify-content:space-between;align-items:end;margin-bottom:40px}.section-heading h2,.practice-section h2,.contact-section h2{font-family:Georgia,'Songti SC','Noto Serif SC',serif;font-size:clamp(46px,5.1vw,69px);font-weight:400;letter-spacing:-.06em;line-height:1.25;margin:17px 0 0}.section-heading>p{font-size:14px;line-height:1.95;color:#777168;margin:0 0 6px}.section-heading>p a{display:inline-block;color:var(--accent-dark);border-bottom:1px solid var(--accent);white-space:nowrap}
.teams-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.team-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:225px;background:transparent;transition:background .2s}.team-card:hover,.team-card.is-open{background:#efebe2}.team-trigger{width:100%;padding:30px;text-align:left;border:0;background:none;color:inherit}.team-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:19px}.team-index{font-size:12px;color:var(--accent-dark);font-weight:700;letter-spacing:.12em}.team-icon{font-size:22px;color:var(--accent);line-height:1}.team-card h3{font-family:Georgia,'Songti SC',serif;font-size:25px;font-weight:400;letter-spacing:-.025em;margin:0 0 11px}.team-card .team-summary{color:#79736a;font-size:13px;line-height:1.8;margin:0}.team-more{color:var(--accent-dark);font-size:12px;display:inline-flex;align-items:center;gap:10px;margin-top:20px;font-weight:700}.team-details{padding:0 30px 28px;display:none;border-top:1px solid #ded7cd}.team-card.is-open .team-details{display:block}.team-details h4{margin:18px 0 6px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-dark)}.team-details p{margin:0;font-size:13px;color:#6b655c;line-height:1.85}.team-details a{display:inline-block;margin-top:14px;border-bottom:1px solid currentColor;font-size:12px;color:var(--accent-dark)}.source-note{margin-top:20px;font-size:12px;color:#91897d}
.ink-section{background:var(--dark);color:var(--paper);padding:105px 0 95px}.section-heading.light>p{color:#b3aea5}.ink-section .eyebrow{color:#e5a18b}.method-layout{display:grid;grid-template-columns:1fr 1fr;gap:44px;border-top:1px solid var(--darkline);padding-top:40px}.method-big{position:relative;min-height:510px;background:#343431;border:1px solid #4c4c46;padding:34px;display:flex;flex-direction:column;justify-content:end;overflow:hidden}.method-counter{position:absolute;top:33px;left:34px;color:#b2aa9f;font-size:11px;letter-spacing:.14em}.big-symbol{font:290px/1 Georgia,serif;position:absolute;right:-45px;top:10px;color:#d27a5c;opacity:.88;pointer-events:none;transform:rotate(10deg)}.method-big h3{font-family:Georgia,'Songti SC',serif;font-weight:400;letter-spacing:-.03em;font-size:35px;line-height:1.4;z-index:1;margin:0 0 13px}.method-big p{max-width:360px;font-size:13px;color:#b5b0aa;z-index:1}.method-big a{font-size:12px;color:#f3a58f;text-decoration:underline;text-underline-offset:5px;z-index:1;margin-top:10px}.methods-list{align-self:center}.method-item{border-bottom:1px solid var(--darkline);padding:16px 0}.method-item:first-child{border-top:1px solid var(--darkline)}.method-title{display:flex;align-items:center;gap:18px;font-size:19px;font-family:Georgia,'Songti SC',serif;line-height:1.45}.method-number{font:12px 'DM Sans',sans-serif;color:#b88c7f;width:24px}.method-item p{margin:8px 0 0 43px;color:#a7a49f;font-size:12px;line-height:1.65}.dark-bottom{border-top:1px solid var(--darkline);margin-top:43px;padding-top:20px;color:#9f9c95;font-size:12px;display:flex;gap:13px;flex-wrap:wrap}.dark-bottom a{color:#e7a18c}
.path-section{background:#eee9df}.path-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.path-tab{padding:12px 18px;border:1px solid #c8c1b5;background:transparent;color:#655e54;font-size:13px;font-weight:600}.path-tab:hover,.path-tab.is-active{background:var(--ink);border-color:var(--ink);color:#fff}.path-panel{display:grid;grid-template-columns:1fr .85fr;gap:0;background:var(--paper);border:1px solid var(--line);min-height:390px}.path-main{padding:42px 48px}.path-stepnum{font-size:10px;letter-spacing:.1em;color:var(--accent-dark)}.path-main h3{font:400 34px/1.3 Georgia,'Songti SC',serif;margin:16px 0}.path-main>p{color:#756e63;font-size:14px;max-width:470px}.steps{padding:0;margin:25px 0 0;list-style:none;display:grid;gap:12px}.steps li{display:flex;gap:14px;font-size:13px;line-height:1.7}.steps li span{color:var(--accent-dark);font-weight:700;font-size:12px}.path-side{background:#ddd6c9;padding:40px 32px;display:flex;flex-direction:column;gap:16px}.path-side .label{font-size:11px;letter-spacing:.11em;color:#6d665d;font-weight:700}.path-code{font-family:monospace;background:#f2eee6;border:1px solid #c7beb0;color:#35332f;padding:20px;white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.75;flex:1;overflow:auto}.path-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.path-actions button{background:var(--ink);color:#fff;border:0;padding:10px 16px;font-size:12px}.path-actions a{font-size:12px;text-decoration:underline;text-underline-offset:4px;color:var(--accent-dark)}
.library-section{background:var(--paper)}.library-toolbar{display:flex;gap:12px}.search-box{display:flex;align-items:center;gap:12px;flex:1;background:#fffdf9;border:1px solid var(--line);padding:0 20px;min-height:55px}.search-box>span{font-size:26px;color:#827c72;line-height:0}.search-box input{width:100%;outline:none;border:none;background:transparent;font-size:14px;color:var(--ink)}.search-box input:focus-visible{outline:none}.search-box:focus-within{border-color:var(--accent)}.search-box kbd{font:11px 'DM Sans',sans-serif;padding:1px 6px;color:#928c82;border:1px solid var(--line);border-radius:3px}.library-toolbar select{min-width:183px;border:1px solid var(--line);background:#fffdf9;padding:0 16px;color:#5b564d;font-size:13px}.topic-bar{display:flex;gap:8px;flex-wrap:wrap;margin:19px 0 26px}.topic-chip{font-size:11px;border:1px solid var(--line);padding:6px 12px;background:transparent;color:#676158}.topic-chip.is-selected,.topic-chip:hover{background:var(--ink);border-color:var(--ink);color:#fff}.library-count{display:flex;justify-content:space-between;font-size:12px;color:#928a7e;border-top:1px solid var(--line);padding:14px 0}.source-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.source-card{background:#fffdfa;border:1px solid var(--line);padding:25px;min-height:236px;display:flex;flex-direction:column;transition:border-color .2s,transform .2s}.source-card:hover{transform:translateY(-2px);border-color:#bd9486}.source-meta{display:flex;justify-content:space-between;gap:8px;font-size:10px;letter-spacing:.03em;color:#9b9389}.source-type{color:var(--accent-dark);font-weight:700}.source-card h3{font-family:Georgia,'Songti SC',serif;font-weight:400;line-height:1.45;font-size:20px;margin:18px 0 9px}.source-card p{font-size:12px;color:#777067;line-height:1.8;margin:0 0 20px}.source-footer{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px}.source-footer span{font-size:10px;color:#978f84}.source-footer a{font-size:12px;font-weight:700;color:var(--accent-dark)}.source-footer a:hover{text-decoration:underline}.more-line{text-align:center;margin:30px 0 0}.more-line .btn{gap:80px;background:transparent}.library-fineprint{font-size:11px;color:#92897d;line-height:1.8;margin-top:26px}.empty-state{padding:70px;text-align:center;border:1px dashed var(--line);color:#776f65}
.practice-section{padding:104px 0;border-top:1px solid var(--line)}.practice-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.practice-section h2{margin:18px 0 20px}.practice-section p{font-size:14px;color:#777169;line-height:1.9;max-width:450px}.practice-links{margin-top:28px;display:flex;flex-direction:column;gap:13px}.text-link{font-size:13px;color:var(--accent-dark);text-decoration:underline;text-underline-offset:4px;width:fit-content}.terminal{background:#242523;color:#ece8e0;border:1px solid #44433f;border-radius:7px;box-shadow:15px 15px 0 #e8e1d6;overflow:hidden}.terminal-head{height:49px;border-bottom:1px solid #3e3f3b;display:flex;align-items:center;gap:12px;padding:0 18px;color:#9e9d95;font-size:11px}.traffic{display:flex;gap:6px}.traffic i{width:8px;height:8px;background:#745f55;border-radius:50%}.traffic i:nth-child(2){background:#847f5b}.traffic i:nth-child(3){background:#5b7568}.terminal-copy{margin-left:auto;background:transparent;border:1px solid #66615b;color:#e9dfd2;font-size:11px;padding:5px 8px}.terminal-content{font:12px/1.9 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;padding:25px 22px 35px;word-wrap:break-word}.terminal-content p{margin:4px 0}.terminal-content .indent{padding-left:18px}.prompt{color:#e0957a}.terminal-ok{color:#91b899;margin-top:13px!important}.terminal-muted{color:#928f87;margin-top:24px!important}
.contact-section{background:#e5dfd4;padding:110px 0}.contact-grid{display:grid;grid-template-columns:1fr .85fr;gap:100px;align-items:center}.contact-section h2{margin:18px 0 26px}.contact-section p{font-size:14px;color:#6e675d;line-height:1.85;max-width:490px}.authorship{margin-top:27px;color:#36332f!important;font-size:13px!important}.authorship small{color:#80796e;font-size:11px}.contact-card{background:#f8f5ef;border:1px solid #c8bfb1;padding:34px 38px;box-shadow:8px 8px 0 #d4ccbf}.small-label{font-size:10px;letter-spacing:.15em;color:var(--accent-dark);font-weight:700}.contact-card .contact-heading{font:400 30px Georgia,'Songti SC',serif;color:var(--ink);margin:18px 0 10px}.wechat-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.wechat-row strong{font:400 27px Georgia,serif;letter-spacing:-.025em}.copy-wechat{background:var(--accent);color:#fff;border:none;padding:10px 13px;font-size:11px;font-weight:700;white-space:nowrap}.copy-wechat:hover{background:var(--accent-dark)}.wechat-sub{margin:6px 0 23px!important;color:#8a8277!important;font-size:12px!important}.contact-divider{border-top:1px solid #d9d1c5;margin-bottom:13px}.contact-card>a{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid #e5ded3;font-size:13px}.contact-card>a span{color:var(--accent-dark)}
.footer{background:#222320;color:#f3eee4;padding:40px 0 24px}.footer-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:38px;border-bottom:1px solid #464540}.footer-links{display:flex;gap:24px;flex-wrap:wrap}.footer-links a{font-size:12px;color:#bcb5ab}.footer-links a:hover{color:#fff}.footer-bottom{display:flex;gap:18px;justify-content:space-between;flex-wrap:wrap;padding-top:25px;font-size:11px;color:#908b82}.toast{position:fixed;z-index:500;bottom:28px;left:50%;transform:translate(-50%,20px);pointer-events:none;opacity:0;background:#292a26;color:white;padding:11px 18px;font-size:12px;border:1px solid #555650;box-shadow:0 10px 26px #0002;transition:opacity .18s,transform .18s}.toast.show{opacity:1;transform:translate(-50%,0)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1050px){.wrap{width:min(100% - 44px,1160px)}.hero-grid{gap:33px}.hero h1{font-size:clamp(49px,6.5vw,78px)}.desktop-nav{gap:15px}.nav-inner{gap:15px}.contact-grid{gap:45px}.section-heading{grid-template-columns:1fr 295px}.source-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:750px){html{scroll-padding-top:65px}.notice{font-size:10px;gap:5px;padding:8px 10px}.wrap{width:calc(100% - 34px)}.nav-inner{min-height:66px}.wordmark{font-size:15px}.brand-mark{font-size:26px}.desktop-nav,.nav-gh,.nav-contact{display:none}.mobile-menu-toggle{display:block}.mobile-nav{display:flex;flex-direction:column;gap:0;background:var(--paper);border-top:1px solid var(--line)}.mobile-nav[hidden]{display:none}.mobile-nav a{padding:12px 20px;border-bottom:1px solid var(--line);font-size:14px}.hero{padding:65px 0 53px}.hero-grid,.section-heading,.method-layout,.path-panel,.practice-grid,.contact-grid{grid-template-columns:1fr}.hero h1{font-size:clamp(49px,11.7vw,81px);margin:22px 0}.hero-art{min-height:420px;margin-top:10px;padding:20px}.diagram{padding:5px 0}.diagram-box{padding:12px}.diagram-box strong{font-size:15px}.diagram-box small{font-size:9px}.diagram-row.diagram-split{gap:8px}.line-arrow{height:33px}.line-arrow:before{height:26px}.line-arrow:after{top:19px}.art-asterisk{font-size:50px}.number-grid{grid-template-columns:1fr 1fr}.number-grid>div{border-bottom:1px solid var(--line);padding:19px!important}.number-grid>div:nth-child(2){border-right:0}.number-grid>div:nth-child(n+3){border-bottom:0}.number-grid strong{font-size:37px}.number-grid .last-num>span{margin:0 0 9px;font-size:17px}.number-grid p{font-size:11px}.editorial-section,.library-section,.path-section,.ink-section,.practice-section,.contact-section{padding:69px 0}.section-heading{gap:12px;margin-bottom:28px}.section-heading h2,.practice-section h2,.contact-section h2{font-size:clamp(39px,9.5vw,56px)}.section-heading>p{font-size:13px}.teams-grid{grid-template-columns:1fr}.team-card{min-height:auto}.team-trigger{padding:23px}.team-card h3{font-size:23px}.team-details{padding:0 23px 24px}.method-layout{gap:24px}.method-big{min-height:400px}.big-symbol{font-size:200px}.method-big h3{font-size:29px}.path-main,.path-side{padding:25px 23px}.path-main h3{font-size:26px}.path-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px}.path-tab{padding:11px 6px;font-size:11px}.library-toolbar{flex-direction:column}.library-toolbar select{min-height:50px}.source-grid{grid-template-columns:1fr}.source-card{min-height:190px;padding:22px}.library-count{gap:12px}.terminal{box-shadow:8px 8px 0 #e8e1d6}.terminal-content{font-size:10px}.contact-grid{gap:30px}.contact-card{padding:28px 22px}.footer-top,.footer-bottom{flex-direction:column;align-items:flex-start;gap:17px}.footer-links{gap:11px 20px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}