:root{--ink:#1c1915;--ink-soft:#3a342c;--muted:#5c554c;--paper:#f4efe6;--paper-2:#ebe3d4;--rail:#efe8da;--line:#d5ccbd;--cinnabar:#7d332b;--moss:#24362f;--gold:#8d7349;--field:#fbf8f2;--rail-width:3.6rem;--serif:"Iowan Old Style", Palatino, "Palatino Linotype", "Liberation Serif", "Songti SC", "Noto Serif SC", "Source Han Serif SC", "STSong", "PMingLiU", "Songti TC", "PingFang SC", "WenQuanYi Micro Hei", serif;--sans:"PingFang SC", "Hiragino Sans GB", "Noto Sans SC", "Microsoft YaHei", "WenQuanYi Micro Hei", "Droid Sans Fallback", sans-serif;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(ellipse at top left, #8d734914, transparent 36rem), var(--paper);color:var(--ink);font-family:var(--sans);text-rendering:optimizelegibility;margin:0;font-size:1.05rem;line-height:1.8}img{max-width:100%}a{color:inherit}:focus-visible{outline:2px solid var(--cinnabar);outline-offset:3px}::selection{color:var(--ink);background:#e4d0c4}.skip{z-index:30;background:var(--ink);color:var(--paper);padding:.55rem .8rem;text-decoration:none;position:absolute;top:-4rem;left:1rem}.skip:focus{top:.6rem}.rail{display:none}.page{min-height:100vh}.shell{width:min(1080px,100% - 2.4rem);margin-inline:auto}.site-header{z-index:10;background:color-mix(in srgb, var(--paper) 90%, transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:1rem;min-height:4.25rem;display:flex}.logo{font-family:var(--serif);letter-spacing:.12em;align-items:center;gap:.65rem;font-size:1.15rem;text-decoration:none;display:inline-flex}.seal{border:1px solid var(--cinnabar);width:1.9rem;height:1.9rem;color:var(--cinnabar);font-family:var(--serif);letter-spacing:0;place-items:center;font-size:.95rem;line-height:1;display:inline-grid}.nav-desktop{align-items:center;gap:1.5rem;display:flex}.nav-desktop ul,.drawer ul,.footer-nav{flex-wrap:wrap;gap:.35rem 1rem;margin:0;padding:0;list-style:none;display:flex}.nav-desktop a,.drawer a,.footer-nav a{letter-spacing:.08em;align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.nav-desktop a[aria-current=page],.drawer a[aria-current=page]{box-shadow:inset 0 -1px 0 var(--cinnabar)}.nav-account{border-left:1px solid var(--line);padding-left:1rem}.drawer{display:none}.drawer summary{cursor:pointer;letter-spacing:.12em;align-items:center;min-height:44px;padding-inline:.2rem;list-style:none;display:inline-flex}.drawer summary::-webkit-details-marker{display:none}.drawer[open] summary{color:var(--cinnabar)}.drawer nav{background:var(--paper);border-bottom:1px solid var(--line);padding:.2rem 0 .8rem;position:absolute;left:0;right:0}.drawer ul{flex-direction:column;gap:0;width:min(1080px,100% - 2.4rem);margin-inline:auto}.hero{grid-template-columns:minmax(0,1fr) minmax(12rem,16rem);gap:2.5rem;padding:4.2rem 0 3.2rem;display:grid}.eyebrow,.note-label,.entry-topic,.plan-kicker{color:var(--cinnabar);letter-spacing:.18em;margin:0 0 .9rem;font-size:.82rem}h1,h2,h3,.entry-title,.plan h2,.logo,.practice-name{font-family:var(--serif);letter-spacing:.03em;font-weight:500}.hero h1,.page-title{margin:0;font-size:clamp(2.3rem,5vw,3.7rem);line-height:1.22}.lede,.page-intro{max-width:40rem;color:var(--ink-soft);margin:1.2rem 0 0;font-size:1.12rem}.actions{flex-wrap:wrap;gap:.75rem;margin-top:1.8rem;display:flex}.button,button{border:1px solid var(--ink);background:var(--ink);min-height:44px;color:var(--paper);font:inherit;letter-spacing:.08em;cursor:pointer;justify-content:center;align-items:center;padding:.65rem 1.05rem;text-decoration:none;display:inline-flex}.button.ghost,button.ghost{color:var(--ink);background:0 0}button:disabled{cursor:default;background:#8a8175;border-color:#8a8175}.hero-side{border-left:1px solid var(--line);color:var(--muted);align-self:end;padding:.2rem 0 .2rem 1.2rem;font-size:.95rem}.hero-side p{margin:0 0 1rem}.hero-side strong{color:var(--ink);letter-spacing:.12em;font-weight:500;display:block}.section{border-top:1px solid var(--line);padding:2.8rem 0}.section-head{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.section h2,.panel h2,.faq h2{margin:0 0 1rem;font-size:clamp(1.6rem,3vw,2.1rem);line-height:1.3}.section-head a{color:var(--muted);letter-spacing:.08em;text-decoration:none}.practices{margin:0;padding:0;list-style:none}.practice-link{border-top:1px solid var(--line);grid-template-columns:3.2rem minmax(6rem,8rem) minmax(0,1fr) auto;align-items:baseline;gap:.4rem 1.2rem;padding:1.35rem 0;text-decoration:none;display:grid}.practices li:last-child .practice-link{border-bottom:1px solid var(--line)}.practice-index,.method-index{color:var(--gold);font-variant-numeric:tabular-nums;letter-spacing:.08em}.practice-name{font-size:1.7rem}.practice-sum{color:var(--ink-soft);margin:0}.practice-go{letter-spacing:.12em;color:var(--muted)}.practice-link:hover .practice-name,.practice-link:hover .practice-go{color:var(--cinnabar)}.method{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.method h3,.fit h3{margin:.35rem 0;font-size:1.3rem}.method p,.fit li{color:var(--ink-soft);margin:0}.entries{margin:0;padding:0;list-style:none}.entries li+li{border-top:1px solid var(--line)}.entry-link{grid-template-columns:4.5rem minmax(0,1fr) auto;align-items:baseline;gap:.8rem;padding-top:1.1rem;text-decoration:none;display:grid}.entry-title{font-size:1.28rem;line-height:1.45}.entry-link time,.meta time,.meta span{color:var(--muted);font-size:.92rem}.entries p{color:var(--ink-soft);margin:.35rem 0 1.1rem 5.3rem}.fit-grid,.plans,.desk{gap:1.2rem;display:grid}.fit-grid{grid-template-columns:1fr 1fr}.fit ul{margin:0;padding-left:1.15rem}.fit li+li{margin-top:.35rem}.price-row{flex-wrap:wrap;gap:.8rem 1.5rem;margin:0;padding:0;list-style:none;display:flex}.price-row a{text-decoration:none}.price-row strong{font-family:var(--serif);font-size:1.4rem;font-weight:500}.plans{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.plan{border:1px solid var(--line);background:color-mix(in srgb, var(--paper) 70%, white);flex-direction:column;padding:1.3rem 1.2rem 1.4rem;display:flex}.plan.is-main{background:var(--moss);border-color:var(--moss);color:var(--paper)}.plan.is-main .plan-kicker,.plan.is-main .price span,.plan.is-main li{color:#ddd4c6}.plan h2{margin:0;font-size:1.8rem}.plan .price{flex-direction:column;gap:.15rem;margin:.8rem 0 .3rem;display:flex}.plan .price em{font-family:var(--serif);font-size:2rem;font-style:normal}.plan .price span,.plan .note,.fine{color:var(--muted)}.plan ul{margin:1rem 0 1.3rem;padding-left:1.1rem}.plan .button{margin-top:auto}.plan.is-main .button{background:var(--paper);color:var(--moss);border-color:var(--paper)}.crumbs{color:var(--muted);flex-wrap:wrap;gap:.4rem;margin:0 0 1.2rem;font-size:.92rem;display:flex}.crumbs a{color:inherit}.meta{flex-wrap:wrap;gap:.45rem 1rem;margin:1rem 0 0;display:flex}.meta a{color:var(--cinnabar);letter-spacing:.08em;text-decoration:none}.prose{max-width:40rem;margin-top:2rem}.prose>*+*{margin-top:1rem}.prose h2{margin-top:2.2rem;font-size:1.55rem}.prose a{text-decoration-color:var(--cinnabar);text-underline-offset:.18em}.prose ul,.prose ol{padding-left:1.2rem}.prose blockquote,.note{border-left:2px solid var(--cinnabar);color:var(--ink-soft);margin:1.6rem 0;padding:.2rem 0 .2rem 1rem}.note p{margin:.3rem 0 0}.prose table{border-collapse:collapse;width:100%;font-size:.98rem}.prose th,.prose td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:.65rem .4rem}.keywords{color:var(--muted);letter-spacing:.04em}.faq details{border-top:1px solid var(--line);padding:.85rem 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-weight:500}.related{border-top:1px solid var(--line);margin-top:2.5rem;padding-top:1.5rem}.related ul{margin:.4rem 0 0;padding:0;list-style:none}.related a{text-decoration:none}.narrow{width:min(34rem,100%);margin-inline:auto;padding:3rem 0 4.5rem}.field{flex-direction:column;gap:.35rem;margin-bottom:.95rem;display:flex}.field span{font-size:.95rem}input,select{border:1px solid var(--line);background:var(--field);width:100%;min-height:44px;color:var(--ink);font:inherit;border-radius:0;padding:.65rem .75rem;font-size:1rem}.hold-message{color:var(--moss);margin:.9rem 0 0}.desk{grid-template-columns:11rem minmax(0,1fr);gap:2.4rem;padding:2.4rem 0 4rem}.desk-nav{flex-direction:column;align-items:flex-start;gap:.2rem;display:flex;position:sticky;top:5.5rem}.desk-nav a{letter-spacing:.08em;align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.panel+.panel{border-top:1px solid var(--line);margin-top:1.5rem;padding-top:1.5rem}.sample{background:var(--paper-2);margin-top:1rem;padding:1rem 1rem 1.1rem}.sample p{margin:.3rem 0 0}.pill{border:1px solid var(--line);letter-spacing:.12em;color:var(--muted);margin:0 0 .8rem;padding:.15rem .45rem;font-size:.78rem;display:inline-block}.empty{color:var(--ink-soft);margin:0}.site-footer{border-top:1px solid var(--line);color:var(--muted);padding:2rem 0 2.6rem}.footer-brand{color:var(--ink);font-family:var(--serif);letter-spacing:.14em;margin:0;font-size:1.4rem}.site-footer .fine{max-width:42rem}.close{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.2rem;display:flex}.close p{max-width:38rem;margin:0}@media (width<=980px){.hero,.method,.plans,.fit-grid,.desk{grid-template-columns:1fr}.hero-side{border-left:0;border-top:1px solid var(--line);padding:1rem 0 0}.desk-nav{flex-flow:wrap;position:static}}@media (width<=860px){.nav-desktop{display:none}.drawer{display:block}.practice-link,.entry-link{grid-template-columns:3rem minmax(0,1fr)}.practice-sum,.entries p{grid-column:2;margin-left:0}.practice-go,.entry-link time{grid-column:2}}@media (width<=640px){.shell,.drawer ul{width:min(1080px,100% - 1.4rem)}.hero{padding-top:2.4rem}}@media (width>=1100px){.rail{width:var(--rail-width);border-right:1px solid var(--line);background:var(--rail);flex-direction:column;justify-content:space-between;align-items:center;padding:1.15rem 0;display:flex;position:fixed;inset:0 auto 0 0}.rail p{writing-mode:vertical-rl;letter-spacing:.42em;font-family:var(--serif);margin:0}.rail-year{letter-spacing:.18em;color:var(--muted);font-size:.82rem}.page{margin-left:var(--rail-width)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}
