:root{--forest:#303a34;--moss:#718272;--sage:#e9eee7;--cream:#f5f3ee;--paper:#fffefa;--ink:#303a34;--muted:#627067;--line:#e7e5dc;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:130px}body{margin:0;color:var(--ink);background:radial-gradient(circle at 12% 5%,rgba(148,170,139,.18),transparent 25rem),var(--cream);font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;font-size:18px;line-height:1.95;letter-spacing:.035em}a{color:inherit;text-underline-offset:5px}a:focus-visible{outline:2px solid #3d6557;outline-offset:5px}a:hover{color:#3d6557}.wrap{width:min(760px,calc(100% - 48px));margin-inline:auto}.site-header{position:sticky;top:0;z-index:10;background:rgba(248,245,236,.96);border-bottom:1px solid rgba(108,128,103,.22);backdrop-filter:blur(12px)}.nav{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-block:12px}.brand{font-weight:700;text-decoration:none;letter-spacing:.06em;font-size:1rem}nav ul{display:flex;flex-wrap:wrap;gap:20px;padding:0;margin:0;list-style:none}nav a{display:inline-block;padding:6px 0;color:var(--muted);font-size:.86rem;text-decoration:none}nav a[aria-current=page]{color:var(--forest);text-decoration:underline}.skip{position:fixed;top:8px;left:12px;z-index:20;padding:10px 18px;background:var(--paper);transform:translateY(-160%)}.skip:focus{transform:none}
.hero{padding:88px 0 90px;overflow:hidden}.hero-inner{position:relative}.eyebrow{margin:0 0 18px;color:var(--muted);font-family:system-ui,sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.22em}h1{margin:0;color:var(--forest);font-size:clamp(2.5rem,4.2vw,4rem);font-weight:500;line-height:1.38;letter-spacing:.06em}.lead{max-width:36em;margin:30px 0 0;font-size:1.05rem}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px;position:relative;z-index:1}.button{display:inline-block;padding:11px 22px;border:1px solid var(--forest);border-radius:999px;background:var(--forest);color:var(--paper);font-family:system-ui,sans-serif;font-size:.9rem;font-weight:600;text-decoration:none}.button:hover{background:#3d6557;color:#fff}.button-outline{background:transparent;color:var(--forest)}.button-outline:hover{background:var(--sage);color:var(--forest)}.mountains{position:absolute;right:-2%;bottom:-30px;width:min(38vw,300px);height:175px;opacity:.52;pointer-events:none;z-index:-1}.mountains:before,.mountains:after{content:"";position:absolute;inset:auto 0 0;height:100%;background:var(--sage);clip-path:polygon(0 100%,26% 41%,42% 67%,64% 20%,100% 100%)}.mountains:after{height:68%;background:#bdcbb7;clip-path:polygon(0 100%,29% 49%,48% 73%,72% 30%,100% 100%)}.hero-inner{isolation:isolate}
.section{padding:70px 0}.section-head{margin-bottom:34px}h2{margin:0;color:var(--forest);font-size:clamp(1.7rem,3.4vw,2.5rem);font-weight:500}.section-note{margin:8px 0 0;color:var(--muted);font-size:.9rem}.posts{display:grid;gap:18px}.post,.profile-card{padding:28px 28px;background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:0 12px 34px rgba(45,61,47,.06)}.tag{display:inline-block;padding:4px 11px;color:var(--forest);background:var(--sage);border-radius:999px;font-family:system-ui,sans-serif;font-size:.75rem}.post h3{margin:20px 0 14px;font-size:1.25rem;line-height:1.6}.post p{margin:0;color:#505850;font-size:1rem}.post time{display:block;padding-top:18px;color:var(--muted);font-family:system-ui,sans-serif;font-size:.8rem}.about{background:var(--forest);color:#f4f2e9}.about h2{color:var(--paper)}.about .eyebrow{color:#cbd5c7}.about p{max-width:36em}.about .button{background:var(--paper);color:var(--forest);border-color:var(--paper)}.about .button:hover{background:var(--sage)}.site-footer{padding:34px 0;color:var(--muted);font-family:system-ui,sans-serif;font-size:.8rem;text-align:center}.site-footer p{margin:8px 0}.site-footer a{display:inline-block;padding:6px}.profile-page{padding:64px 0}.breadcrumb{margin:0 0 24px;font-size:.85rem;color:var(--muted)}.profile-card{padding:48px 52px}.profile-card h1{font-family:Georgia,"Yu Mincho",serif}.subtitle{font-size:1.1rem;line-height:1.9;margin:22px 0 30px}.prose{border-top:1px solid var(--line);padding-top:12px;font-size:1rem;line-height:2.15;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;letter-spacing:.025em}.prose p{margin:1.45em 0}.closing{border-left:3px solid #9caf9b;padding-left:20px;margin-top:32px}.interests{border-top:1px solid var(--line);margin-top:38px;padding-top:28px}.interests h2{font-size:1.15rem}.interests ul{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;font-size:.85rem}.interests li{padding:5px 12px;background:var(--sage);border-radius:8px}.back-links{margin-top:32px}
@media(max-width:780px){.wrap{width:calc(100% - 40px)}.nav{gap:4px 20px}.hero{padding:64px 0 72px}.mountains{width:230px;right:-20px;bottom:-44px;opacity:.4}.section{padding:56px 0}.profile-card{padding:34px 26px}}@media(max-width:480px){body{font-size:17px}.nav{align-items:flex-start;flex-direction:column;gap:4px;padding-block:10px}.brand{font-size:.95rem}nav ul{gap:22px}nav a{font-size:.8rem}.hero{padding-top:52px}.hero h1{font-size:clamp(2.2rem,10vw,3.2rem)}.lead{font-size:1rem}.hero-actions{gap:10px}.button{padding:11px 17px;font-size:.86rem}.mountains{bottom:-45px;width:190px;height:145px;opacity:.35}.post{padding:24px 22px}.profile-page{padding-top:32px}.profile-card{padding:30px 22px}.subtitle{font-size:1rem}.prose{font-size:1rem}.closing{padding-left:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.site-header,.site-footer,.hero-actions,.back-links{display:none}.profile-card{border:0;box-shadow:none;padding:0}.wrap{width:100%}body{background:white}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

.profile-card .profile-headline{font-size:clamp(1.2rem,2.6vw,1.75rem);font-weight:700;line-height:1.7;letter-spacing:.02em;margin:24px 0 32px}
