@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-sans-latin-400-normal-DRC__1Mx.woff2)format("woff2"),url(/assets/instrument-sans-latin-400-normal-D1W7dsQl.woff)format("woff")}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/instrument-sans-latin-500-normal-Dk9ku72i.woff2)format("woff2"),url(/assets/instrument-sans-latin-500-normal-Z6ESRlEs.woff)format("woff")}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/instrument-sans-latin-600-normal-B7fBEWYG.woff2)format("woff2"),url(/assets/instrument-sans-latin-600-normal-B9e8oLYv.woff)format("woff")}@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-serif-4-latin-400-normal-DJ5YJwmz.woff2)format("woff2"),url(/assets/source-serif-4-latin-400-normal-C1O10bxN.woff)format("woff")}@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-serif-4-latin-ext-400-normal-B5LksYz5.woff2)format("woff2"),url(/assets/source-serif-4-latin-ext-400-normal-DKmgyNre.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff")}@font-face{font-family:Noto Sans SC;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/noto-sans-sc-400-BR3eYHvS.woff2)format("woff2");unicode-range:U+B7,U+2013-2014,U+2026,U+3000-303F,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF,U+FF00-FFEF}@font-face{font-family:Noto Sans SC;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/noto-sans-sc-600-CLalPibf.woff2)format("woff2");unicode-range:U+B7,U+2013-2014,U+2026,U+3000-303F,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF,U+FF00-FFEF}@font-face{font-family:Noto Serif SC;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/noto-serif-sc-400-DgYNp-nx.woff2)format("woff2");unicode-range:U+B7,U+2013-2014,U+2026,U+3000-303F,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF,U+FF00-FFEF}:root{--canvas:#faf9f5;--surface:#f0eee6;--surface-hover:#e8e6dc;--warm:#e3dacc;--ink:#141413;--ink-soft:#3d3d3a;--muted:#5e5d59;--tertiary:#87867f;--agate:#b0aea5;--hairline:#d1cfc5;--on-dark:#faf9f5;--on-dark-muted:#b0aea5;--max:1200px;--gutter:32px;--sans:"Instrument Sans", "Noto Sans SC", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--serif:"Source Serif 4", "Noto Serif SC", "Songti SC", "Noto Serif CJK SC", serif;--mono:"JetBrains Mono", "Noto Sans SC", ui-monospace, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--canvas);color:var(--ink);font-family:var(--sans);text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.5}img,svg{display:block}a{color:inherit}button,input{font:inherit;color:inherit}p,h1,h2,h3{margin:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{z-index:40;background:var(--ink);color:var(--canvas);border-radius:8px;padding:8px 12px;position:absolute;top:-40px;left:16px}.skip:focus{top:12px}[id]{scroll-margin-top:88px}code{font-family:var(--mono);font-size:.92em}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.wrap{width:min(var(--max), calc(100% - var(--gutter) * 2));margin-inline:auto}.eyebrow{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--tertiary);margin:0 0 16px;font-size:12px;font-weight:400}.nav{z-index:30;background:var(--canvas);border-bottom:1px solid #0000;height:72px;position:sticky;top:0}.nav.is-stuck{border-bottom-color:var(--hairline)}.nav-inner{align-items:center;gap:28px;height:100%;display:flex}.wordmark{font-family:var(--sans);letter-spacing:-.04em;color:var(--ink);font-size:22px;font-weight:600;text-decoration:none}.nav-links{align-items:center;gap:28px;margin-left:12px;display:flex}.nav-links a{color:var(--ink);font-size:15px;font-weight:500;text-decoration:none}.nav-links a:hover{text-underline-offset:4px;text-decoration:underline}.nav-cta{margin-left:auto}.menu-toggle{border:1px solid var(--hairline);cursor:pointer;background:0 0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;margin-left:8px;padding:0;display:none}.menu-toggle span{background:var(--ink);width:16px;height:1.5px;display:block}.btn{border:1px solid var(--ink);min-height:44px;font-family:var(--sans);letter-spacing:-.01em;cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;padding:10px 20px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.btn-fill{background:var(--ink);color:var(--canvas)}.btn-fill:hover{background:var(--ink-soft);border-color:var(--ink-soft)}.btn-line{color:var(--ink);background:0 0}.btn-line:hover{background:var(--ink);color:var(--canvas)}.hero{padding:56px 0 88px}.hero h1{max-width:16em;font-family:var(--sans);letter-spacing:-.03em;font-size:clamp(34px,3.9vw,58px);font-weight:600;line-height:1.22}.hero-follow{grid-template-columns:minmax(0,1.35fr) minmax(220px,320px);align-items:end;gap:48px;margin-top:36px;display:grid}.lead{max-width:38rem;font-family:var(--serif);color:var(--ink-soft);font-size:clamp(18px,1.5vw,22px);font-weight:400;line-height:1.55}.actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.hero-art{color:var(--ink);justify-self:end;line-height:0}.hero-art ascii-art{opacity:.88;-webkit-mask-image:radial-gradient(at 50% 46%,#000 46%,#0000 76%);mask-image:radial-gradient(at 50% 46%,#000 46%,#0000 76%)}.section{padding:88px 0}.section h2{max-width:14em;font-family:var(--sans);letter-spacing:-.03em;font-size:clamp(32px,3vw,44px);font-weight:600;line-height:1.2}.section-intro{max-width:40rem;font-family:var(--serif);color:var(--ink-soft);margin-top:18px;font-size:20px;line-height:1.55}.news{margin-top:8px}.news-row{border-top:1px solid var(--hairline);grid-template-columns:8.5rem minmax(0,1fr) auto;align-items:baseline;gap:24px;padding:22px 0;text-decoration:none;display:grid}.news-row:last-child{border-bottom:1px solid var(--hairline)}.news-row time{font-family:var(--mono);letter-spacing:.04em;color:var(--tertiary);font-size:13px}.news-title{letter-spacing:-.02em;font-size:20px;font-weight:600;line-height:1.35}.news-row:hover .news-title{text-underline-offset:5px;text-decoration:underline}.news-meta{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:12px}.cols{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:48px;display:grid}.col{border-top:1px solid var(--hairline);min-width:0;padding:0 32px 8px 0}.col+.col{border-left:1px solid var(--hairline);padding-left:32px}.mark{height:148px;color:var(--ink);align-items:flex-end;margin:28px 0 8px;display:flex;overflow:hidden}.col h3{letter-spacing:-.02em;margin-top:12px;font-size:22px;font-weight:600;line-height:1.3}.col p,.step p,.state p{font-family:var(--serif);color:var(--ink-soft);margin-top:12px;font-size:18px;line-height:1.6}.steps{margin-top:36px}.step{border-top:1px solid var(--hairline);grid-template-columns:5rem minmax(0,1fr);gap:20px;padding:28px 0;display:grid}.step:last-child{border-bottom:1px solid var(--hairline)}.step-no{font-family:var(--mono);letter-spacing:.12em;color:var(--tertiary);padding-top:6px;font-size:13px}.step h3{letter-spacing:-.02em;font-size:22px;font-weight:600}.band-alt{background:var(--surface)}.states{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 24px;margin-top:48px;display:grid}.state-art{height:156px;color:var(--ink);align-items:center;display:flex;overflow:hidden}.state-art.vignette ascii-art{opacity:.9;-webkit-mask-image:radial-gradient(at 50% 48%,#000 42%,#0000 78%);mask-image:radial-gradient(at 50% 48%,#000 42%,#0000 78%)}.state h3{letter-spacing:-.02em;margin-top:8px;font-size:18px;font-weight:600}.open-block{padding-bottom:104px}.composer{align-items:center;gap:12px;max-width:720px;margin-top:28px;display:flex}.composer input{border:1px solid var(--hairline);background:var(--canvas);min-width:0;height:48px;font-family:var(--serif);border-radius:8px;flex:1;padding:0 16px;font-size:18px}.composer input::placeholder{color:var(--tertiary)}.composer input:focus{border-color:var(--ink);outline:none}.composer input[aria-invalid=true]{border-color:var(--ink)}.hint,.form-error{max-width:40rem;color:var(--muted);margin-top:12px;font-size:14px}.form-error{color:var(--ink);font-family:var(--serif)}.receipt{max-width:720px;margin-top:28px;padding-top:8px}.quote{font-family:var(--serif);letter-spacing:-.01em;font-size:26px;line-height:1.45}.quote:before{content:"「"}.quote:after{content:"」"}.trail{margin:20px 0 0;padding:0;list-style:none}.trail li{border-top:1px solid var(--hairline);font-family:var(--serif);grid-template-columns:4.5rem minmax(0,1fr);gap:16px;padding:14px 0;font-size:17px;display:grid}.trail li:last-child{border-bottom:1px solid var(--hairline)}.trail span{font-family:var(--sans);letter-spacing:-.01em;font-size:14px;font-weight:600}.footer{color:var(--on-dark);background:#141413;padding:96px 0 48px}.footer :focus-visible{outline-color:var(--on-dark)}.footer .wordmark{color:var(--on-dark);font-size:28px}.acc{border-bottom:1px solid #faf9f529;margin-top:36px}.acc summary{cursor:pointer;border-top:1px solid #faf9f529;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;font-size:18px;font-weight:500;list-style:none;display:flex}.acc summary::-webkit-details-marker{display:none}.chev{width:16px;height:16px;color:var(--on-dark-muted);transition:transform .16s}.acc[open] .chev{transform:rotate(180deg)}.acc-panel{gap:2px;padding:0 0 16px;display:grid}.acc-panel a{width:fit-content;color:var(--on-dark-muted);font-family:var(--serif);font-size:16px;line-height:1.7;text-decoration:none}.acc-panel a:hover{color:var(--on-dark);text-underline-offset:3px;text-decoration:underline}.footer-bottom{border-top:1px solid #faf9f529;grid-template-columns:.8fr 1.6fr .8fr;gap:32px;margin-top:48px;padding-top:28px;display:grid}.footer-meta,.mission{color:var(--on-dark-muted);font-family:var(--serif);margin:0;font-size:15px;line-height:1.6}.mission strong{color:var(--on-dark);font-family:var(--sans);margin-bottom:8px;font-size:14px;font-weight:600;display:block}.footer-links{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.footer-links a{color:var(--on-dark);font-size:15px;text-decoration:none}.footer-links a:hover{text-underline-offset:3px;text-decoration:underline}.footer-label{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--on-dark-muted);margin:0 0 8px;font-size:11px}.specimen-list{margin-top:28px}.specimen-row{border-top:1px solid var(--hairline);grid-template-columns:minmax(180px,280px) minmax(0,1fr);align-items:center;gap:28px;padding:28px 0;display:grid}.specimen-row:last-child{border-bottom:1px solid var(--hairline)}.specimen-art{min-height:120px;color:var(--ink);align-items:center;display:flex;overflow:hidden}.specimen-art.vignette ascii-art{opacity:.9;-webkit-mask-image:radial-gradient(at 50% 48%,#000 42%,#0000 78%);mask-image:radial-gradient(at 50% 48%,#000 42%,#0000 78%)}.piece-name{letter-spacing:-.02em;font-size:20px;font-weight:600}.piece-meta{font-family:var(--mono);color:var(--muted);margin-top:8px;font-size:13px;line-height:1.6}.note{max-width:42rem;font-family:var(--serif);color:var(--ink-soft);margin-top:18px;font-size:18px;line-height:1.65}.note+.note{margin-top:14px}@media (width<=980px){.hero-follow,.cols,.states,.footer-bottom,.specimen-row{grid-template-columns:1fr}.col+.col{border-left:0;margin-top:8px;padding-left:0}.hero-art{justify-self:start}.states{grid-template-columns:1fr 1fr}}@media (width<=760px){:root{--gutter:20px}.menu-toggle{display:flex}.nav-links{padding:4px var(--gutter) 16px;background:var(--canvas);border-bottom:1px solid var(--hairline);flex-direction:column;align-items:stretch;gap:0;margin:0;display:none;position:absolute;top:72px;left:0;right:0}.nav-links.is-open{display:flex}.nav-links a{border-top:1px solid var(--hairline);padding:14px 0}.news-row,.step,.trail li{grid-template-columns:1fr;gap:6px}.composer{flex-direction:column;align-items:stretch}.states{grid-template-columns:1fr}.section,.hero{padding:56px 0}.hero h1{font-size:34px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.chev{transition:none}}
