:root{--ink:#252825;--muted:#636963;--line:#d9dcd6;--accent:#944b3c;color:var(--ink);font-family:'Helvetica Neue',Arial,'Hiragino Kaku Gothic ProN',Meiryo,sans-serif;text-rendering:optimizeLegibility;scroll-padding-top:124px}
body{background:#fff;-webkit-font-smoothing:antialiased}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;padding:16px;background:var(--ink);color:white}.skip-link:focus{top:10px}
.refined .site-header{position:sticky;top:0;z-index:20;min-height:104px;padding:24px max(4.5%,calc((100vw - 1440px)/2));background:#fffffff5;backdrop-filter:blur(12px);border-bottom:1px solid var(--line);gap:24px}
.refined .site-header .identity{display:flex;align-items:center;gap:25px;letter-spacing:.05em}.identity h1{font-size:28px;line-height:1.2;font-weight:650;letter-spacing:.025em}.refined .site-header .identity span{font-size:9px;letter-spacing:.17em;margin:0;color:var(--muted)}
.site-header nav{gap:28px;font-size:10px;letter-spacing:.12em}.site-header nav a{padding:12px 0;position:relative}.site-header nav a:after{content:'';position:absolute;height:2px;background:var(--accent);left:0;right:100%;bottom:2px;transition:right .2s}.site-header nav a:hover:after,.site-header nav a[aria-current]:after{right:0}.site-header nav a[aria-current]{color:var(--accent)}
.refined main{max-width:1570px;padding:0 4.5%}main>.about-section:first-child{border-top:0;padding-top:62px;margin-bottom:64px}.about-intro{grid-template-columns:1fr 2fr;gap:56px;padding:0 0 46px}.section-index{display:block;font-size:9px;font-weight:500;letter-spacing:.14em;color:var(--accent);margin-bottom:17px}.about-intro .about-name{padding-top:4px}.about-name h2,.index-intro .works-title,.section-title h2{font-size:22px;letter-spacing:.015em;font-weight:500;line-height:1.65}.about-name h2 span,.index-intro .works-title span,.section-title h2 span{font-size:15px;letter-spacing:.025em}.about-intro h3{font-size:clamp(23px,2.1vw,31px);font-weight:400;letter-spacing:.035em;margin-bottom:24px;line-height:1.7}.about-intro>div>p{font-size:14px;line-height:2.15;color:#555d56;max-width:780px}.about-intro>div>p+p{margin-top:17px}
.about-strengths{gap:32px}.about-strengths article{border-top:1px solid var(--line);padding:23px 0 0}.strength-number{font-size:9px;letter-spacing:.09em;color:var(--muted)}.about-strengths h3{font-size:17px;line-height:1.8;margin:16px 0 11px}.about-strengths p{font-size:13px;line-height:2;color:var(--muted)}
main>.about-section:first-child+.hero{border-top:1px solid #a8afa5}.hero{margin-bottom:96px;scroll-margin-top:124px}.index-intro{display:block;padding:35px 0 28px}.index-intro .section-index{margin-bottom:12px}.small-heading{font-size:9px;letter-spacing:.12em;padding:0 0 16px;color:var(--muted)}.work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 24px}.work-card{min-width:0}.work-image{background:#f2f3f0}.work-grid .work-image{aspect-ratio:1.42}.work-image img{transition:transform .5s cubic-bezier(.2,.65,.3,1);width:100%;height:100%}.work-card:hover img{transform:scale(1.035)}.open-arrow{width:64px;height:34px;bottom:12px;right:12px;font-size:10px;letter-spacing:.07em;background:#ffffffed;border:1px solid #ffffff70;transition:background .2s,color .2s}.work-card:hover .open-arrow{background:var(--ink);color:#fff}.card-label{margin-top:16px}.card-label h3{font-size:16px;line-height:1.65;font-weight:500}.d1 .card-label span{font-size:9px;letter-spacing:.08em;color:var(--muted);margin-top:7px}.works-help{font-size:12px;line-height:1.9;margin-top:30px;color:var(--muted);padding-left:14px;border-left:2px solid var(--accent)}
.records-section{scroll-margin-top:124px;margin-bottom:96px}.section-title{border-top:1px solid #a8afa5;padding:30px 0 21px;margin:0;gap:20px}.section-title>span{font-size:9px;color:var(--muted);letter-spacing:.1em}.records-lead{font-size:13px;line-height:2;color:var(--muted);margin:0 0 28px}.record-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid var(--line);margin-bottom:32px}.record-nav a{display:flex;align-items:center;gap:10px;padding:17px 12px 17px 0;font-size:12px;border-bottom:1px solid var(--line);transition:color .2s}.record-nav a>span:first-child{font-size:9px;color:var(--accent)}.record-nav a>span:last-child{margin-left:auto;margin-right:16px}.record-nav a:hover{color:var(--accent)}
.native-record{grid-template-columns:225px minmax(0,1fr);gap:64px;padding:42px 0 56px;border-top:1px solid var(--line);scroll-margin-top:126px}.native-heading{top:135px}.native-heading>span{font-size:9px;letter-spacing:.11em;color:var(--accent)}.native-heading h3{font-size:24px;font-weight:400;line-height:1.65;margin:16px 0}.native-heading p{font-size:12px;line-height:2;color:var(--muted);max-width:215px}.native-content h4{font-size:11px;letter-spacing:.12em;color:var(--muted);margin:34px 0 14px}.experience-list li{grid-template-columns:60px minmax(0,1fr);gap:20px;font-size:14px;line-height:1.95;padding:16px 0;border-color:#e7e9e4}.experience-year{font-size:11px;padding-top:3px;color:var(--muted)}.experience-link{color:var(--accent);text-decoration-color:#cdb3a9;text-underline-offset:5px}.experience-link:hover{color:#5b2c20}.experience-note{font-size:11px;color:var(--muted)}.experience-photos{gap:12px;margin:17px 0 3px}.experience-photos img{height:112px;max-width:190px;background:#f6f7f4}.experience-strip{margin:20px 0 6px}
.movie-section{scroll-margin-top:124px;margin-bottom:88px}.movie-section .section-title h2{font-size:clamp(16px,1.7vw,22px)}.movies{gap:28px;margin-top:8px}video{background:#f0f1ed}.movies h3{font-size:15px;font-weight:500;line-height:1.7;margin-top:16px}footer{padding:32px max(4.5%,calc((100vw - 1440px)/2));color:var(--muted);align-items:center;font-size:11px;letter-spacing:.05em}footer small{font-size:8px;margin-left:16px;letter-spacing:.12em}footer a{padding:12px 0;font-size:9px}
button{min-height:40px;min-width:40px;font-family:inherit}#pdf-dialog{border:1px solid var(--line);box-shadow:0 24px 100px #10181030}.toolbar{gap:12px}.toolbar button{font-size:12px}#page{min-height:40px}a:focus-visible,button:focus-visible,input:focus-visible{outline-color:var(--accent)}
@media(min-width:1600px){.native-record{grid-template-columns:260px minmax(0,1fr);gap:85px}}
@media(max-width:1050px){.refined .site-header .identity{gap:15px}.refined .site-header .identity span{display:none}.site-header nav{gap:22px}.about-intro{gap:32px}.about-intro>div>p{font-size:13px}.about-strengths{gap:24px}.about-strengths h3{font-size:15px}.about-strengths p{font-size:12px}.native-record{grid-template-columns:180px minmax(0,1fr);gap:35px}.record-nav a{font-size:11px}.work-grid{gap:30px 18px}.card-label h3{font-size:14px}.record-nav a>span:last-child{margin-right:6px}}
@media(max-width:700px){:root{scroll-padding-top:126px}.refined .site-header{padding:19px 6% 10px;min-height:104px;gap:12px;display:block}.refined .site-header .identity{display:inline-flex}.identity h1{font-size:24px}.refined .site-header .identity span{display:inline;font-size:7px;margin-left:0}.site-header nav{display:flex;justify-content:space-between;gap:12px;margin-top:10px;font-size:9px}.site-header nav a{padding:8px 0}.refined main{padding:0 6%}main>.about-section:first-child{padding-top:34px;margin-bottom:42px}.about-intro{grid-template-columns:1fr;gap:25px;padding:0 0 30px}.section-index{font-size:8px;margin-bottom:10px}.about-name h2,.index-intro .works-title,.section-title h2{font-size:19px;line-height:1.8}.about-name h2 span,.index-intro .works-title span,.section-title h2 span{font-size:13px}.about-intro h3{font-size:22px;line-height:1.8;letter-spacing:.02em;margin-bottom:18px}.about-intro>div>p{font-size:13px;line-height:2.1}.about-strengths{grid-template-columns:1fr;gap:0}.about-strengths article{padding:22px 0}.about-strengths article:last-child{padding-bottom:0}.about-strengths h3{font-size:16px;margin:9px 0 8px}.about-strengths p{font-size:12px;line-height:2}.index-intro{padding:26px 0 22px}.index-intro .section-index{margin-bottom:9px}.small-heading{font-size:8px;padding-bottom:13px}.work-grid{grid-template-columns:1fr;gap:28px}.work-grid .work-image{aspect-ratio:1.48}.card-label{margin-top:12px}.card-label h3{font-size:16px}.d1 .card-label span{font-size:9px;margin-top:5px}.open-arrow{width:64px;height:34px}.works-help{font-size:11px;margin-top:24px}.hero{margin-bottom:54px}.records-section{margin-bottom:54px}.section-title{padding:24px 0 17px}.section-title>span{font-size:8px;margin-top:10px}.records-lead{font-size:12px;margin-bottom:22px}.record-nav{grid-template-columns:1fr 1fr;margin-bottom:10px}.record-nav a{font-size:11px;padding:15px 9px 15px 0;gap:8px}.native-record{grid-template-columns:1fr;gap:22px;padding:30px 0 38px}.native-heading{position:static}.native-heading h3{font-size:22px;margin:11px 0 8px}.native-heading p{max-width:none;font-size:12px}.experience-list li{grid-template-columns:43px minmax(0,1fr);gap:12px;font-size:13px;padding:15px 0;line-height:1.95}.experience-year{font-size:10px}.experience-link{display:inline;overflow-wrap:anywhere}.experience-link>span{margin-left:6px}.experience-photos{gap:8px;margin-top:14px}.experience-photos img{height:85px;max-width:145px}.experience-strip{margin-top:16px}.movie-section{margin-bottom:48px}.movie-section .section-title h2{font-size:15px;line-height:1.9}.movies{gap:28px}.movies h3{font-size:14px;margin-top:12px}footer{padding:24px 6%;gap:12px;font-size:9px}footer small{display:block;margin:7px 0 0;font-size:7px}footer a{font-size:8px}.toolbar{justify-content:space-between;gap:8px}.toolbar>div{gap:4px}.toolbar button{font-size:11px;min-width:38px;padding:5px 7px}.pdf-foot{font-size:10px;line-height:1.8}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.identity h1{white-space:nowrap}@media(max-width:360px){.refined .site-header .identity span{display:none}.index-intro .works-title span{font-size:12px}}

/* Solid header: quiet contrast against the white portfolio. */
.refined .site-header{background:#292e2c;color:#fff;border-bottom-color:#292e2c;backdrop-filter:none}
.refined .site-header .identity span{color:#c8ceca}
.site-header nav a{color:#e0e5e1}
.site-header nav a:hover,.site-header nav a[aria-current]{color:#fff}
.site-header nav a:after{background:#dbb7a4}
.site-header a:focus-visible{outline-color:#dbb7a4}

/* Match the footer to the solid header. */
.refined footer{background:#292e2c;color:#fff;border-top-color:#292e2c}
.refined footer small{color:#c8ceca}
.refined footer a{color:#e0e5e1}
.refined footer a:hover{color:#fff}
.refined footer a:focus-visible{outline-color:#dbb7a4}

.records-heading .section-index{margin-bottom:12px}
@media(max-width:700px){.records-heading .section-index{margin-bottom:9px}}

/* Subsections use names only; numbers identify the main sections. */
.record-nav a>span:last-child{color:inherit;font-size:12px}

/* Category arrows retain their styling after subordinate numbering is removed. */
.record-nav a>span:only-child{font-size:14px;color:inherit;margin-left:auto}

/* Major headings share the section-index accent. */
.refined .about-name h2,
.refined .index-intro .works-title,
.refined .records-heading h2,
.refined .movie-section .section-title h2{color:var(--accent)}

/* Apply the accent explicitly to Japanese heading text as well. */
.refined .about-name h2 span,
.refined .index-intro .works-title span,
.refined .records-heading h2 span,
.refined .movie-section .section-title h2 span{color:var(--accent)}
.refined .section-index{color:var(--accent)}

/* Major section labels and headings at 110% of the established scale. */
.refined .section-index{font-size:9.9px}
.refined .about-name h2,.refined .index-intro .works-title,.refined .records-heading h2{font-size:24.2px}
.refined .about-name h2 span,.refined .index-intro .works-title span,.refined .records-heading h2 span{font-size:16.5px}
.refined .movie-section .section-title h2{font-size:clamp(17.6px,1.87vw,24.2px)}
@media(max-width:700px){
.refined .section-index{font-size:8.8px}
.refined .about-name h2,.refined .index-intro .works-title,.refined .records-heading h2{font-size:20.9px}
.refined .about-name h2 span,.refined .index-intro .works-title span,.refined .records-heading h2 span{font-size:14.3px}
.refined .movie-section .section-title h2{font-size:16.5px}
}
@media(max-width:360px){.refined .index-intro .works-title span{font-size:13.2px}}

/* Accent text belongs to major sections and links only. */
.refined .native-heading>span{color:var(--ink)}
.refined .movie-section .section-title h2,
.refined .movie-section .section-title h2 span{color:var(--ink)}
.refined .movie-section .section-title h2{font-size:clamp(16px,1.7vw,22px)}
@media(max-width:700px){.refined .movie-section .section-title h2{font-size:15px}}

/* Profile statement at 90% of its previous size. */
.refined .about-intro h3{font-size:clamp(20.7px,1.89vw,27.9px)}
@media(max-width:700px){.refined .about-intro h3{font-size:19.8px}}

/* Use the category navigation's bottom rule as the shared divider. */
.refined .record-nav+.native-record{border-top:0}

/* Enlarge only the three accent-colored major sections by another 10%. */
.refined .section-index{font-size:10.89px}
.refined .about-name h2,.refined .index-intro .works-title,.refined .records-heading h2{font-size:26.62px}
.refined .about-name h2 span,.refined .index-intro .works-title span,.refined .records-heading h2 span{font-size:18.15px}
@media(max-width:700px){
.refined .section-index{font-size:9.68px}
.refined .about-name h2,.refined .index-intro .works-title,.refined .records-heading h2{font-size:22.99px}
.refined .about-name h2 span,.refined .index-intro .works-title span,.refined .records-heading h2 span{font-size:15.73px}
}
@media(max-width:360px){.refined .index-intro .works-title span{font-size:14.52px}}

/* Emphasize only the rules above the WORKS and RECORDS major headings. */
.refined main>.about-section:first-child+.hero,
.refined .records-section>.section-title{border-top-width:3px}

/* Slightly brighten selected-work thumbnails without changing the source files. */
.refined .work-grid .work-image img{filter:brightness(1.05)}
