:root{--background:#F8FAF7;--navy:#17324D;--forest:#52796F;--light-green:#A8C3B0;--mist:#DCEAF0;--ink:#17232D;--serif:Georgia,'Yu Mincho',serif;--sans:Arial,'Yu Gothic',sans-serif;--s1:8px;--s2:16px;--s3:24px;--s4:32px;--s6:48px;--s8:64px;--s12:96px;--line:rgba(23,50,77,.18)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--background);color:var(--ink);font:16px/1.9 var(--sans)}a{color:inherit;text-decoration:none}a:hover{color:var(--forest)}a:focus-visible{outline:2px solid var(--navy);outline-offset:6px}h1,h2,p{margin:0}h1,h2{font-weight:400}button,a{-webkit-tap-highlight-color:transparent}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip{position:absolute;top:-100px;left:24px;z-index:20;background:var(--navy);color:white;padding:12px}.skip:focus{top:12px}.site-header{height:110px;max-width:1440px;margin:auto;padding:30px 6%;display:flex;justify-content:space-between;align-items:center;position:relative;z-index:2}.wordmark{font:25px/1 var(--serif);letter-spacing:.09em;color:var(--navy)}.wordmark span{display:block;margin-top:10px;font:10px/1.4 var(--sans);letter-spacing:.18em}.site-header nav{display:flex;gap:36px;font-size:14px}.site-header nav a{padding:10px 0}.hero{height:calc(100svh - 110px);min-height:620px;max-height:950px;position:relative;overflow:hidden;text-align:center;--approach:0}.hero-copy{position:relative;z-index:1;padding-top:65px}.eyebrow{font-size:12px;letter-spacing:.2em;color:var(--forest);font-weight:400}.hero h1{font:clamp(72px,8.4vw,120px)/1.2 var(--serif);letter-spacing:.085em;color:var(--navy);margin:20px 0 18px}.english-lead{font:17px/1.7 var(--serif);letter-spacing:.025em;color:var(--navy)}.japanese-lead{font:16px/2 var(--sans);margin-top:30px;letter-spacing:.13em}.landscape{width:100%;height:390px;position:absolute;bottom:8px;left:0;pointer-events:none}.mountains{transform:translateY(calc(var(--approach)*18px))}.forest{transform:translateY(calc(var(--approach)*30px))}.grounded-landscape{transform:translateY(calc(var(--approach)*40px))}.ground{transform:none}.distant-tree{transform-box:view-box;transform-origin:0px 78px;transform:translate(730px,350px) scale(calc(1 + var(--approach)*.12))}.scroll-cue{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);display:flex;align-items:center;flex-direction:column;font-size:10px;letter-spacing:.18em;padding:10px;color:var(--navy)}.scroll-line{height:38px;width:1px;background:var(--forest);margin-bottom:15px}.hero-note{position:absolute;left:6%;bottom:52px;writing-mode:vertical-rl;font-size:10px;letter-spacing:.17em;color:var(--forest)}.tree-section{max-width:1200px;margin:auto;padding:80px 32px 60px;scroll-margin-top:0}.section-intro{text-align:center}.section-intro h2{font:24px/1.9 var(--serif);color:var(--navy);letter-spacing:.08em;margin:18px 0 14px}.section-intro>p:last-child{font-size:14px;color:var(--forest)}.branch-tree{width:100%;display:block;margin:0 auto;max-width:1000px;overflow:visible}.branch{fill:none;stroke:var(--forest);stroke-width:2;transition:stroke .18s}.tree-link{transition:opacity .18s}.branch-label{font:26px var(--serif);fill:var(--navy)}.branch-ja{font:14px var(--sans);fill:var(--forest)}.leaves{fill:var(--light-green);stroke:var(--forest);stroke-width:1;opacity:.35;transition:opacity .22s,transform .22s}.tree-link:hover .branch,.tree-link:focus .branch{stroke:var(--navy);stroke-width:3}.tree-link:hover .leaves,.tree-link:focus .leaves{opacity:1}.branch-tree:has(.tree-link:hover) .tree-link:not(:hover),.branch-tree:has(.tree-link:focus) .tree-link:not(:focus){opacity:.45}.tree-link:focus-visible{outline:2px solid var(--navy)}.tree-author{font:15px var(--sans);fill:var(--navy);letter-spacing:.14em}.motion-ready .branch{stroke-dasharray:1;stroke-dashoffset:1}.motion-ready.grown .branch{stroke-dashoffset:0;transition:stroke-dashoffset 1.1s ease-out,stroke .18s}.tree-caption{border-top:1px solid var(--line);display:flex;justify-content:space-between;padding-top:20px;font-size:12px;letter-spacing:.08em;color:var(--forest)}.mobile-tree{display:none}footer{border-top:1px solid var(--line);padding:48px 6% 30px;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:start}footer .footer-brand{font:28px var(--serif);letter-spacing:.07em;color:var(--navy)}footer p{font:14px/2 var(--serif);margin-top:10px;color:var(--forest)}footer nav{display:flex;gap:28px;font-size:14px}footer nav a{padding:10px 0}footer small{font-size:12px;color:var(--forest);grid-column:1/-1}.content-page{max-width:1040px;margin:auto;padding:55px 48px 80px}.breadcrumb{font-size:12px;letter-spacing:.14em;color:var(--forest);display:inline-block;padding:10px 0}.page-heading{padding:50px 0 54px;border-bottom:1px solid var(--line)}.page-heading h1{font:clamp(48px,6vw,82px)/1.2 var(--serif);color:var(--navy);margin:16px 0 20px;overflow-wrap:anywhere}.page-heading>p:last-child{letter-spacing:.06em}.page-content{max-width:760px;padding:52px 0 64px;min-height:300px}.page-content h2{font:30px/1.4 var(--serif);color:var(--navy);margin-bottom:16px}.page-paragraph{margin-bottom:28px;line-height:2.1}.skill-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px 56px;margin-top:48px}.skill h2{font-size:27px;margin-top:12px}.skill ul{list-style:none;margin:0;padding:0}.skill li{border-bottom:1px solid var(--line);padding:8px 0}.profile-heading{margin-bottom:40px}.profile-heading h2{font-size:58px;margin-top:10px}.profile-heading>p{color:var(--forest)}.about-hobbies{border-top:1px solid var(--line);padding-top:32px;margin-top:40px}.about-hobbies h2{font-size:25px}.empty-state{padding:28px 0 40px}.empty-state h2{font:26px/1.8 var(--serif);margin:20px 0}.interest-list section{display:flex;gap:36px;padding:28px 0;border-bottom:1px solid var(--line)}.interest-list .eyebrow{padding-top:6px}.interest-list p{margin-top:12px}.certification-list{list-style:none;padding:0;margin:0;counter-reset:cert}.certification-list li{counter-increment:cert;display:flex;align-items:baseline;gap:28px;border-bottom:1px solid var(--line);padding:24px 0}.certification-list li:before{content:counter(cert,decimal-leading-zero);color:var(--forest);font-size:12px;letter-spacing:.1em}.sibling-nav{border-top:1px solid var(--line);display:flex;gap:8px 28px;flex-wrap:wrap;padding-top:28px;font-size:14px}.sibling-nav a{padding:10px 0}.sibling-nav [aria-current]{text-decoration:underline;text-underline-offset:6px;color:var(--forest)}.work{padding:32px 0;border-bottom:1px solid var(--line)}.work h2{margin-top:16px}.work-image{width:100%;height:auto;margin-top:24px}.tags{list-style:none;display:flex;gap:16px;flex-wrap:wrap;padding:0;font-size:14px;color:var(--forest)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery figure{margin:0}.gallery img{width:100%;height:auto}.gallery figcaption{font-size:14px}.work-links{display:flex;gap:24px;margin-top:24px}
@media(max-width:959px){.hero-copy{padding-top:45px}.hero h1{font-size:88px}.tree-section{padding-top:64px}.site-header{padding-inline:32px}.gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:639px){.site-header{height:90px;padding:24px}.wordmark{font-size:21px}.wordmark span{font-size:9px}.site-header nav{gap:18px;font-size:12px}.site-header nav a{min-height:44px;display:flex;align-items:center}.hero{height:calc(90svh - 90px);min-height:610px}.hero-copy{padding:55px 24px 0}.hero h1{font-size:clamp(56px,15vw,76px);letter-spacing:.055em;margin-top:24px}.english-lead{font-size:16px}.japanese-lead{margin-top:28px;font-size:15px}.hero-note{display:none}.landscape{height:270px;width:160%;left:-30%;bottom:25px}.scroll-cue{bottom:12px}.tree-section{padding:50px 24px 40px}.section-intro h2{font-size:20px;letter-spacing:.02em}.section-intro .eyebrow{font-size:10px}.branch-tree{display:none}.mobile-tree{display:flex;flex-direction:column;position:relative;margin:48px 0 30px;padding-bottom:45px}.mobile-tree:before{content:'';position:absolute;left:50%;top:0;bottom:0;width:1px;background:var(--forest)}.mobile-tree a{position:relative;display:flex;gap:10px;width:50%;min-height:86px;padding:12px 16px 24px 0;align-items:center;line-height:1.4}.mobile-tree a:after{content:'';position:absolute;height:1px;background:var(--forest);bottom:12px;left:0;right:0}.mobile-tree a:nth-child(even){align-self:flex-end;padding:12px 0 24px 16px}.mobile-tree a>span:last-child{font:20px/1.4 var(--serif);color:var(--navy)}.mobile-tree small{display:block;font:13px/1.8 var(--sans);color:var(--forest);margin-top:7px}.branch-index{font-size:10px;color:var(--forest)}.mobile-root{background:var(--background);z-index:1;align-self:center;font-size:12px;letter-spacing:.15em;margin-top:20px;padding:4px 12px}.tree-caption{gap:20px;font-size:10px}.tree-caption span:last-child{text-align:right}footer{padding:36px 24px 24px;grid-template-columns:1fr;gap:20px}footer nav{gap:24px;flex-wrap:wrap}.content-page{padding:24px 24px 48px}.page-heading{padding:28px 0 36px}.page-heading h1{font-size:48px}.page-content{padding:36px 0 40px}.skill-grid{grid-template-columns:1fr;gap:32px}.page-content h2{font-size:26px}.profile-heading h2{font-size:48px}.interest-list section{gap:20px}.certification-list li{gap:18px}.gallery{grid-template-columns:1fr}.sibling-nav{gap:8px 20px}}
@media(min-width:640px) and (max-width:959px){.branch-ja{font-size:23px}.branch-label{font-size:30px}}
.profile-section{margin-top:48px;padding-top:32px;border-top:1px solid var(--line)}.profile-section h3{font:23px/1.5 var(--serif);font-weight:400;color:var(--navy);margin:12px 0}.profile-section .skill-grid{margin-top:24px}.profile-section .work-links{flex-wrap:wrap}.content-page{position:relative}.content-page:after{content:'';position:absolute;right:0;top:170px;width:70px;height:170px;border-left:1px solid var(--light-green);transform:rotate(25deg);opacity:.3;pointer-events:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .branch{stroke-dashoffset:0}.mountains,.forest,.grounded-landscape,.ground{transform:none}.distant-tree{transform:translate(730px,350px)}}

.canopy-wash{fill:var(--light-green);opacity:.075;stroke:var(--forest);stroke-width:1}.tree-twigs{fill:none;stroke:var(--forest);stroke-width:1.4;stroke-linecap:round;opacity:.65}.tree-foliage{fill:var(--background);stroke:var(--forest);stroke-width:1;opacity:.55}.bark{fill:none;stroke:var(--forest);stroke-width:1;opacity:.45}.tree-soil{fill:none;stroke:var(--forest);stroke-width:1.4;opacity:.55}.trunk{stroke-linecap:round;stroke-width:2.5}
.content-page:after{right:40px}
:root{--display:Impact,'Arial Narrow','Yu Gothic',sans-serif;--serif:var(--sans)}
.wordmark,footer .footer-brand,.hero h1,.page-heading h1,.page-content h2,.profile-section h3{font-family:var(--display);font-weight:400}
.wordmark,footer .footer-brand{letter-spacing:.04em}
.hero h1{letter-spacing:.045em}
.page-heading h1{letter-spacing:.015em}
.branch-label{font-family:var(--display);font-size:25px;letter-spacing:.025em}
.mobile-tree a>span:last-child{font-family:var(--display);font-size:20px;letter-spacing:.02em}
@media(min-width:640px) and (max-width:959px){.branch-label{font-size:28px}}
@media(max-width:639px){.hero h1{letter-spacing:.03em}}
