:root{--bg:#fcfcfb;--fg:#22201e;--muted:#8a8580;--line:#e8e5e0;--accent:#6b6560;--card:#fff;--max:720px}html{color-scheme:light}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);letter-spacing:.04em;-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,BlinkMacSystemFont,Helvetica Neue,Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,Yu Gothic,Meiryo,sans-serif;font-size:15px;line-height:2}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.wrap{max-width:var(--max);margin:0 auto;padding:0 1.5rem}.site-header{z-index:10;-webkit-backdrop-filter:saturate(180%)blur(12px);border-bottom:1px solid var(--line);background:#fcfcfbd9;position:sticky;top:0}.site-header .inner{max-width:var(--max);justify-content:space-between;align-items:center;margin:0 auto;padding:.9rem 1.5rem;display:flex}.site-header .brand{letter-spacing:.14em;font-size:.9rem;font-weight:600}.site-header nav a{letter-spacing:.14em;color:var(--muted);margin-left:1.4rem;font-size:.75rem;transition:color .2s}.site-header nav a:hover{color:var(--fg)}.profile{text-align:center;padding:2.75rem 0 .5rem}.profile-icon{object-fit:cover;border:1px solid var(--line);border-radius:50%;width:150px;height:150px;margin:0 auto 1.25rem}.profile-name{letter-spacing:.22em;text-indent:.22em;margin:0 0 .5rem;font-size:clamp(2rem,8vw,3.25rem);font-weight:300;line-height:1.2}.profile-lead{color:var(--muted);letter-spacing:.08em;margin:0;font-size:.9rem}.section{border-top:1px solid var(--line);padding:2.75rem 0}.section:first-of-type{border-top:none}.section-title{letter-spacing:.3em;color:var(--muted);text-transform:uppercase;text-align:center;margin:0 0 1.5rem;font-size:.7rem;font-weight:600}.links{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.links li{border-bottom:1px solid var(--line)}.links a{align-items:center;gap:1rem;padding:.9rem .5rem;transition:background-color .25s,padding-left .25s;display:flex}.links a:hover{background:var(--card);padding-left:1rem}.links svg{width:18px;height:18px;fill:var(--accent);flex:none}.links .name{letter-spacing:.08em;font-size:.9rem}.links .id{color:var(--muted);margin-left:auto;font-size:.8rem}.links .arrow{color:var(--line);font-size:.8rem;transition:color .25s,transform .25s}.links a:hover .arrow{color:var(--muted);transform:translate(3px)}.contact{text-align:center;font-size:.9rem}.contact-note a{border-bottom:1px solid var(--line);padding-bottom:2px;transition:border-color .25s}.contact-note a:hover{border-color:var(--accent)}.form-lead{text-align:center;color:var(--muted);margin:0 0 2rem;font-size:.85rem}.form-lead a{border-bottom:1px solid var(--line);padding-bottom:1px}.form{max-width:460px;margin:0 auto}.field{margin-bottom:1.25rem}.field label{letter-spacing:.1em;color:var(--muted);margin-bottom:.4rem;font-size:.75rem;display:block}.tag{border:1px solid var(--line);letter-spacing:.08em;vertical-align:1px;border-radius:2px;margin-left:.4rem;padding:.1rem .4rem;font-size:.6rem;display:inline-block}.tag-need{border-color:var(--accent);color:var(--accent)}.field input,.field textarea{border:1px solid var(--line);background:var(--card);width:100%;color:var(--fg);border-radius:2px;padding:.7rem .8rem;font-family:inherit;font-size:.9rem;line-height:1.8;transition:border-color .2s}.field textarea{resize:vertical}.field input:focus,.field textarea:focus{border-color:var(--accent);outline:none}.turnstile{min-height:65px;margin:1.5rem 0}.submit{border:1px solid var(--fg);background:var(--fg);width:100%;color:var(--bg);letter-spacing:.2em;text-indent:.2em;cursor:pointer;border-radius:2px;justify-content:center;align-items:center;padding:calc(.85rem + 3px) 1rem calc(.85rem + 1px);font-family:inherit;font-size:.8rem;line-height:1.4;transition:opacity .2s;display:flex}.submit:hover{opacity:.82}.submit:disabled{opacity:.4;cursor:default}.form-status{text-align:center;max-width:460px;color:var(--muted);margin:1.5rem auto 0;font-size:.85rem;line-height:1.9}.form-status.is-error{color:#a4453c}.contact-button{border:1px solid var(--line);letter-spacing:.16em;text-indent:.16em;border-radius:2px;justify-content:center;align-items:center;padding:.75rem 2rem;font-size:.8rem;line-height:1.4;transition:border-color .25s,background-color .25s;display:inline-flex}.contact-button:hover{border-color:var(--accent);background:var(--card)}.contact-note{color:var(--muted);margin:1.25rem 0 0;font-size:.8rem}.site-footer{border-top:1px solid var(--line);text-align:center;color:var(--muted);letter-spacing:.14em;padding:1.75rem 0 .75rem;font-size:.7rem}.footer-visual{position:relative}.footer-image{width:100%;margin:0}.footer-copy{color:var(--muted);letter-spacing:.14em;text-shadow:0 0 6px var(--bg), 0 0 3px var(--bg);margin:0;font-size:.7rem;line-height:1;position:absolute;bottom:0;left:0;right:0}.js .reveal{opacity:0;transition:opacity .9s,transform .9s;transform:translateY(16px)}.js .reveal.is-visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.js .reveal{opacity:1;transition:none;transform:none}}@media (width<=560px){.profile{padding-top:1.75rem}.profile-icon{width:120px;height:120px}.links .id{display:none}.site-header nav a{margin-left:1rem}}
