@charset "UTF-8";
:root{--paper:#f3f3ec;--ink:#20221c;--muted:#686b60;--line:#d1d3c7;--night:#10120f;--lime:#d5ef83;--sans:Arial,"PingFang SC","Microsoft YaHei",sans-serif;--serif:Georgia,"Songti SC","Noto Serif CJK SC",serif;--pad:clamp(24px,5vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #689315;outline-offset:6px}::selection{background:var(--lime);color:var(--ink)}img{display:block;max-width:100%}button{cursor:pointer}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500}ul{padding-left:1.25em}main{overflow:clip}.wrap{max-width:1440px;margin-inline:auto;padding-inline:var(--pad)}.eyebrow{font-size:12px;line-height:1.5;letter-spacing:.16em;text-transform:uppercase;font-weight:500}.overline{display:flex;align-items:center;gap:14px}.overline:before{content:"";width:27px;height:1px;background:currentColor}.serif{font-family:var(--serif)}.skip-link{position:fixed;top:-100px;left:20px;background:var(--lime);color:var(--ink);padding:12px;z-index:100}.skip-link:focus{top:12px}
.header{height:88px;position:absolute;top:0;left:0;width:100%;z-index:20;color:var(--paper)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.wordmark{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:600;letter-spacing:-.04em}.brand-symbol{display:inline-grid;place-items:center;width:27px;height:27px;border:1px solid currentColor;border-radius:50%;font-family:var(--serif);font-size:20px;font-style:italic}.header nav{display:flex;gap:38px;align-items:center;font-size:14px}.header nav a{position:relative;padding-block:8px}.header nav a:after{content:"";position:absolute;bottom:4px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s}.header nav a:hover:after,.header nav a[aria-current="page"]:after{transform:scaleX(1)}.header .contact-link{border:1px solid #ffffff45;padding:8px 17px;border-radius:2px}.header .contact-link:after{display:none}.header .contact-link:hover{background:var(--lime);border-color:var(--lime);color:var(--ink)}.inner-page .header{color:var(--ink);position:relative;border-bottom:1px solid var(--line)}.inner-page .header .contact-link{border-color:var(--line)}
.hero{position:relative;isolation:isolate;min-height:780px;height:min(960px,100svh);background:var(--night);color:var(--paper);display:flex;align-items:center}.hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-3;will-change:transform}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,8,6,.5),rgba(6,8,6,.1) 52%,transparent 75%);z-index:-2}.hero:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#10120fd9);z-index:-1;pointer-events:none}.hero-inner{width:100%;padding-top:85px;padding-bottom:94px;position:relative}.hero-kicker{color:#c8cdbd;letter-spacing:.14em;margin-bottom:28px}.hero h1{font-size:clamp(84px,10.8vw,164px);line-height:.91;letter-spacing:-.045em;font-weight:500;max-width:770px}.hero h1 .han{display:block;font-size:.83em;line-height:1.18;letter-spacing:-.065em;margin-top:10px;font-weight:450}.hero h1 .period{color:var(--lime)}.hero-tagline{font-family:var(--serif);font-size:clamp(24px,2.65vw,39px);line-height:1.18;font-weight:400;letter-spacing:-.025em;margin-top:31px}.hero-tagline em{font-style:italic;color:var(--lime)}.hero-description{font-size:15px;color:#c5c9be;line-height:1.85;margin-top:20px;max-width:385px}.hero-bottom{position:absolute;bottom:34px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;align-items:flex-end;font-size:12px;letter-spacing:.09em;color:#bac0af}.scroll-link{display:flex;gap:24px;align-items:center;color:var(--paper);font-size:14px;letter-spacing:.02em}.scroll-link span{display:inline-grid;place-items:center;border:1px solid #ffffff55;width:35px;height:35px;border-radius:50%;font-size:18px;transition:background .3s,transform .3s}.scroll-link:hover span{background:var(--lime);color:var(--ink);transform:translateY(4px)}.hero-coordinate{text-align:right;line-height:1.7}.hero-coordinate b{font-weight:400;color:var(--paper)}.hero .intro-animate{animation:riseIn 1s both cubic-bezier(.2,.7,.3,1)}.hero h1{animation-delay:.08s}.hero-tagline{animation-delay:.17s!important}.hero-description{animation-delay:.25s!important}@keyframes riseIn{from{opacity:0;transform:translateY(26px);filter:blur(5px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
.intro-band{padding-block:50px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr;gap:60px}.intro-band .eyebrow{color:var(--muted);padding-top:5px}.intro-band p{font-size:clamp(18px,1.7vw,23px);line-height:1.8;max-width:790px}.intro-band .soft{color:var(--muted)}.writing{padding-block:112px 92px}.section-head{display:grid;grid-template-columns:1fr 2fr;gap:60px;margin-bottom:66px}.section-head .eyebrow{padding-top:12px;color:var(--muted)}.section-title{font-size:clamp(36px,4.5vw,66px);line-height:1.22;letter-spacing:-.05em}.section-head-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:28px}.text-link{font-size:14px;border-bottom:1px solid currentColor;padding-bottom:5px;white-space:nowrap;transition:color .2s}.text-link:hover{color:#647c27}.article-row{display:grid;grid-template-columns:72px 190px 1fr 46px;gap:24px;border-top:1px solid var(--line);padding:34px 0 37px;align-items:start;position:relative;transition:padding .3s}.article-row:last-child{border-bottom:1px solid var(--line)}.article-row .num{font:italic 22px var(--serif);color:#8b8e7f;padding-top:5px}.article-row .meta{font-size:13px;line-height:1.8;color:var(--muted);padding-top:5px}.article-row .meta span{display:block;font-size:12px;letter-spacing:.08em;margin-top:5px}.article-row h3{font-size:clamp(22px,2.2vw,32px);letter-spacing:-.025em;line-height:1.5;margin-bottom:11px;transition:transform .3s}.article-row p{font-size:16px;color:var(--muted);max-width:710px;line-height:1.85}.article-row .row-arrow{font-size:26px;justify-self:end;transition:transform .3s}.article-row:hover h3{transform:translateX(5px)}.article-row:hover .row-arrow{transform:translate(4px,-4px);color:#758e36}.article-row:hover:before{content:"";position:absolute;left:-15px;top:45px;width:4px;height:27px;background:#819744}
.practice{border-top:1px solid var(--line);padding-block:100px 120px;position:relative}.practice-grid{display:grid;grid-template-columns:1fr 2fr;gap:60px}.practice-index{display:flex;flex-direction:column;justify-content:space-between;gap:60px}.practice-index .eyebrow{color:var(--muted)}.large-asterisk{font:200px/1 var(--serif);color:#91a74c;display:block;transform-origin:42% 50%;user-select:none}.practice h2{font-size:clamp(36px,4.8vw,66px);letter-spacing:-.035em;line-height:1.3;margin-bottom:32px}.practice-copy{max-width:630px;font-size:18px;line-height:1.95;color:var(--muted)}.practice-copy p+p{margin-top:21px}.practice-bottom{display:flex;gap:38px;align-items:center;margin-top:38px}.small-meta{font-size:12px;letter-spacing:.11em;color:var(--muted)}
.contact-section{background:var(--night);color:var(--paper);padding-top:85px}.contact-top{display:flex;justify-content:space-between;align-items:center;color:#a8b29c}.contact-main{padding-block:64px 85px;display:flex;justify-content:space-between;align-items:flex-end;gap:40px}.contact-main h2{font-size:clamp(40px,6vw,88px);line-height:1.25;letter-spacing:-.04em}.contact-main h2 span{color:var(--lime)}.contact-aside{max-width:280px;padding-bottom:8px}.contact-aside p{font-size:15px;color:#bdc3b4;line-height:1.9;margin-bottom:25px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;background:var(--lime);color:var(--ink);padding:14px 23px;font-size:14px;border:1px solid var(--lime);transition:background .25s,transform .25s;border-radius:2px}.button:hover{background:#e5ff9c;transform:translateY(-2px)}.footer{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid #ffffff25;padding-block:24px;color:#979f8f;font-size:12px}.footer a:hover{color:var(--lime)}.footer .footer-mark{color:var(--paper);font-size:14px}.footer-notes{display:flex;gap:25px;align-items:center}
.page-heading{padding-block:95px 65px}.page-heading .eyebrow{color:var(--muted);margin-bottom:25px}.page-heading h1{font-size:clamp(50px,7vw,98px);line-height:1.17;letter-spacing:-.055em}.page-heading .lead{max-width:660px;font-size:19px;color:var(--muted);line-height:1.85;margin-top:25px}.writing-page .writing{padding-top:0;padding-bottom:115px}.writing-page .topic-line{display:flex;gap:28px;border-top:1px solid var(--line);padding:22px 0 42px;font-size:14px;color:var(--muted)}
.about-hero{padding-block:100px 90px;display:grid;grid-template-columns:1fr 2fr;gap:60px}.about-hero .eyebrow{padding-top:13px;color:var(--muted)}.about-hero h1{font-size:clamp(44px,5.7vw,80px);line-height:1.28;letter-spacing:-.045em;margin-bottom:35px}.about-hero .lead{font-size:22px;line-height:1.9;max-width:740px}.about-body{display:grid;grid-template-columns:1fr 2fr;gap:60px;border-top:1px solid var(--line);padding-block:65px 80px}.about-body>.eyebrow{color:var(--muted);padding-top:10px}.about-body h2{font-size:30px;line-height:1.5;letter-spacing:-.02em;margin-bottom:23px}.about-body p{font-size:18px;line-height:1.95;color:var(--muted);max-width:700px}.about-body p+p{margin-top:20px}.about-interests{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:35px}.interest{border-top:1px solid var(--line);padding-top:22px}.interest span{display:block;font:italic 30px var(--serif);margin-bottom:10px}.interest h3{font-size:18px}.interest p{font-size:14px;margin-top:8px}.about-quote{padding-block:90px;background:#e6e9dd}.about-quote blockquote{font:clamp(32px,4.5vw,65px)/1.35 var(--serif);letter-spacing:-.035em;margin:0;max-width:1000px}.about-quote small{font:12px/1.5 var(--sans);letter-spacing:.13em;display:block;margin-top:28px;color:var(--muted)}
.article-header{padding-block:70px 54px;border-bottom:1px solid var(--line);max-width:1060px;margin:auto}.back-link{font-size:14px;color:var(--muted);display:inline-flex;align-items:center;gap:12px;margin-bottom:47px}.back-link:hover{color:var(--ink)}.article-header .eyebrow{color:var(--muted);margin-bottom:22px}.article-header h1{font-size:clamp(36px,4.7vw,64px);line-height:1.38;letter-spacing:-.035em;max-width:920px}.article-subtitle{font-size:20px;line-height:1.9;color:var(--muted);max-width:750px;margin-top:25px}.byline{display:flex;gap:20px;align-items:center;font-size:13px;margin-top:28px;color:var(--muted)}.byline strong{font-weight:500;color:var(--ink)}.reading-layout{max-width:1060px;margin:auto;display:grid;grid-template-columns:190px minmax(0,1fr);gap:64px;padding-block:57px 95px}.article-aside{font-size:12px;color:var(--muted)}.article-aside nav{position:sticky;top:35px}.article-aside .eyebrow{margin-bottom:24px}.article-aside a{display:block;font-size:13px;line-height:1.6;padding:7px 0;transition:color .2s}.article-aside a:hover{color:var(--ink)}.prose{font-size:18px;line-height:2.05;overflow-wrap:anywhere}.prose>p+p{margin-top:24px}.prose h2{font-size:27px;line-height:1.6;letter-spacing:-.025em;margin-top:50px;margin-bottom:20px}.prose h2:first-child{margin-top:0}.prose h3{font-size:21px;margin-top:32px;margin-bottom:12px}.prose p{margin-bottom:22px}.prose blockquote{border-left:2px solid #90a44d;padding:0 0 0 25px;margin:37px 0;font:25px/1.7 var(--serif);color:#47532f}.prose .source-note{font-size:13px;line-height:1.9;border-top:1px solid var(--line);padding-top:25px;margin-top:55px;color:var(--muted)}.prose .source-note a{border-bottom:1px solid var(--line)}.article-next{border-top:1px solid var(--line);padding-block:48px 75px}.article-next .eyebrow{color:var(--muted);margin-bottom:15px}.article-next a{display:flex;justify-content:space-between;align-items:center;gap:30px;font-size:clamp(24px,3vw,38px);line-height:1.4;letter-spacing:-.02em}.article-next a:hover{color:#6c8336}.reading-progress{position:fixed;top:0;left:0;height:3px;background:#93a74e;width:0;z-index:100;pointer-events:none}.not-found{padding-block:130px;text-align:center}.not-found h1{font:100px/1 var(--serif);margin-bottom:30px}.not-found p{margin-bottom:28px;color:var(--muted)}
.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.3,1)}.js .reveal.visible{opacity:1;transform:none}@view-transition{navigation:auto}
@media(min-width:1600px){.hero-art{object-position:center 57%}.hero-inner{padding-top:80px}.hero h1{font-size:176px}}
@media(max-width:1050px){.hero{min-height:720px;height:100svh}.hero h1{font-size:122px}.hero-art{object-position:55% center}.hero:before{background:linear-gradient(90deg,rgba(6,8,6,.65),rgba(6,8,6,.06))}.intro-band,.section-head,.practice-grid,.about-hero,.about-body{grid-template-columns:1fr 2.3fr;gap:35px}.article-row{grid-template-columns:48px 135px 1fr 30px;gap:18px}.reading-layout{grid-template-columns:145px minmax(0,1fr);gap:35px}.section-head-bottom{display:block}.section-head-bottom .text-link{display:inline-block;margin-top:24px}}
@media(max-width:700px){:root{--pad:23px}.header{height:74px}.wordmark{font-size:16px;gap:8px}.brand-symbol{width:24px;height:24px;font-size:18px}.header nav{gap:22px;font-size:13px}.header .contact-link{display:none}.hero{height:100svh;min-height:740px;max-height:1000px;align-items:flex-start}.hero-art{width:150%;max-width:none;left:-46%;height:100%;object-position:62% center;opacity:.9}.hero:before{background:linear-gradient(180deg,rgba(5,7,5,.18) 0%,rgba(5,7,5,.72) 43%,rgba(5,7,5,.3) 80%)}.hero-inner{padding-top:145px;padding-bottom:110px}.hero-kicker{font-size:12px;letter-spacing:.1em;margin-bottom:28px}.hero h1{font-size:clamp(78px,20vw,134px);line-height:.95}.hero h1 .han{font-size:.8em;line-height:1.23;margin-top:10px}.hero-tagline{margin-top:31px;font-size:28px}.hero-description{font-size:14px;max-width:270px;margin-top:18px;line-height:1.9;color:#d8dcd0}.hero-coordinate{display:none}.hero-bottom{bottom:30px}.intro-band{padding-block:35px;display:block}.intro-band .eyebrow{margin-bottom:18px}.intro-band p{font-size:18px;line-height:1.9}.writing{padding-block:65px 58px}.section-head{display:block;margin-bottom:38px}.section-head .eyebrow{margin-bottom:24px;padding-top:0}.section-title{font-size:39px}.section-head-bottom{display:flex}.section-head-bottom .text-link{font-size:13px;align-self:flex-end;margin:0 0 6px}.article-row{grid-template-columns:28px 1fr 20px;gap:12px;padding-block:25px 28px}.article-row .num{grid-column:1;grid-row:1/3;font-size:18px;padding-top:0}.article-row .meta{grid-column:2;grid-row:1;display:flex;gap:13px;align-items:center;padding:0;font-size:12px}.article-row .meta span{display:inline;margin:0;font-size:11px}.article-row .article-summary{grid-column:2;grid-row:2}.article-row h3{font-size:23px;line-height:1.55;margin-bottom:10px}.article-row p{font-size:16px;line-height:1.85}.article-row .row-arrow{grid-column:3;grid-row:2;font-size:20px}.article-row:hover:before{left:-8px;top:24px;height:20px}.practice{padding-block:62px 72px}.practice-grid{display:block}.practice-index{display:block}.practice-index .eyebrow{margin-bottom:25px}.large-asterisk{display:none}.practice h2{font-size:40px;margin-bottom:23px}.practice-copy{font-size:17px;line-height:1.95}.practice-bottom{margin-top:28px}.contact-section{padding-top:45px}.contact-top .small-meta{display:none}.contact-main{display:block;padding-block:36px 45px}.contact-main h2{font-size:46px}.contact-aside{margin-top:30px;max-width:310px}.contact-aside p{margin-bottom:18px}.footer{align-items:flex-start;padding-block:22px;gap:15px;font-size:11px}.footer-notes{display:block;text-align:right}.footer-notes a{display:block;margin-top:4px}.page-heading{padding-block:55px 45px}.page-heading h1{font-size:54px}.page-heading .lead{font-size:17px}.writing-page .topic-line{gap:18px;font-size:13px;padding-block:18px 30px}.about-hero{display:block;padding-block:55px}.about-hero .eyebrow{margin-bottom:28px}.about-hero h1{font-size:48px}.about-hero .lead{font-size:19px}.about-body{display:block;padding-block:40px 52px}.about-body>.eyebrow{margin-bottom:25px}.about-body h2{font-size:26px}.about-body p{font-size:17px}.about-interests{gap:18px}.interest p{font-size:13px}.about-quote{padding-block:60px}.about-quote blockquote{font-size:38px}.article-header{padding-block:35px 36px}.back-link{margin-bottom:34px}.article-header h1{font-size:35px;line-height:1.45}.article-subtitle{font-size:18px}.byline{font-size:12px;gap:15px}.reading-layout{display:block;padding-block:36px 60px}.article-aside{display:none}.prose{font-size:17px;line-height:2.03}.prose h2{font-size:24px;margin-top:40px}.prose blockquote{font-size:23px;padding-left:20px;margin-block:32px}.article-next{padding-block:33px 50px}.article-next a{font-size:25px}.inner-page .header nav{gap:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0s!important;transition-duration:.01ms!important}.js .reveal{opacity:1;transform:none}.hero-art{will-change:auto}::view-transition-group(*){animation-duration:0s!important}}
