/* The developer leads this editorial section: portrait, identity, then words. */
.developer{position:relative;padding:84px var(--pad) 55px;background:#f8f6ef;color:var(--ink);scroll-margin-top:90px}
.developer-inner{max-width:1240px;margin:auto}
.developer-top{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-bottom:32px;border-bottom:1px solid #153e3b36}
.developer-top p{font:500 18px/1.6 var(--font);letter-spacing:.16em}
.developer-top>span{font:400 10px 'Outfit',var(--font);letter-spacing:.17em}
.developer-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1fr);grid-template-areas:'portrait identity' 'portrait statement' 'portrait prose';grid-template-rows:auto auto 1fr;column-gap:clamp(50px,6.5vw,104px);margin-top:58px;align-items:start}
.developer-person{grid-area:portrait;margin:0;min-width:0}
.developer-photo{aspect-ratio:4/5;overflow:hidden;background:#ecece4}
.developer-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 28%}
.developer-person figcaption{font:400 10px/1.9 var(--font);letter-spacing:.055em;margin-top:17px;color:#647367}
.developer-identity{grid-area:identity;padding:4px 0 28px;border-bottom:1px solid #153e3b35}
.developer-company{font-size:14px;line-height:1.8;letter-spacing:.1em}
.developer-role{font-size:13px;line-height:1.8;letter-spacing:.15em;margin-top:5px}
.developer-identity h2{font:500 clamp(36px,3.75vw,54px)/1.45 var(--font);letter-spacing:.13em;margin:13px 0 12px;white-space:nowrap}
.developer-identity h2 span{display:inline}
.developer-name-en{display:block;font:400 10px/1.6 'Outfit',var(--font);letter-spacing:.24em;color:#586b60}
.developer-statement{grid-area:statement;font:500 clamp(26px,2.3vw,34px)/1.95 'Noto Serif JP','Yu Mincho',serif;letter-spacing:.025em;margin:29px 0 25px}
.developer-statement span{display:block;white-space:nowrap}
.developer-prose{grid-area:prose;max-width:510px;font:400 15px/2.2 var(--font);letter-spacing:.025em;text-wrap:pretty}
.developer-prose p+p{margin-top:23px}
.developer-draft-note{display:flex;gap:24px;align-items:baseline;border-top:1px solid #153e3b25;margin-top:48px;padding-top:19px;font:400 10px/1.9 var(--font);letter-spacing:.035em;color:#657267}
.developer-draft-note>span:first-child{flex:none}
@media(min-width:761px) and (max-width:1100px){
 .developer{padding-top:66px}
 .developer-layout{column-gap:42px;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);margin-top:45px}
 .developer-photo{aspect-ratio:3/4}
 .developer-identity{padding-bottom:22px}
 .developer-identity h2{font-size:38px}
 .developer-statement{font-size:clamp(21px,2.55vw,28px);margin:23px 0 20px}
 .developer-prose{font-size:13px;line-height:2.2}
 .developer-company{font-size:12px}.developer-role{font-size:11px}
}
@media(max-width:760px){
 .developer{padding:48px 24px 35px;scroll-margin-top:74px}
 .developer-top{gap:14px;padding-bottom:23px}
 .developer-top p{font-size:15px;letter-spacing:.1em}
 .developer-top>span{font-size:8px;letter-spacing:.06em;max-width:112px;line-height:1.8;text-align:right}
 .developer-layout{grid-template-columns:1fr;grid-template-areas:'identity' 'portrait' 'statement' 'prose';grid-template-rows:auto;gap:0;margin-top:28px}
 .developer-identity{padding:0 0 26px;border-bottom:0}
 .developer-company{font-size:12px;letter-spacing:.07em}
 .developer-role{font-size:11px;margin-top:4px}
 .developer-identity h2{font-size:42px;margin:10px 0 9px;letter-spacing:.12em}
 .developer-name-en{font-size:9px;letter-spacing:.23em}
 .developer-person{width:100%;max-width:460px;justify-self:center}
 .developer-photo{aspect-ratio:4/5}
 .developer-person figcaption{font-size:9px;letter-spacing:.025em;margin-top:13px}
 .developer-statement{font-size:clamp(22px,6.05vw,34px);line-height:1.95;margin:32px 0 24px;letter-spacing:.015em}
 .developer-prose{max-width:none;font-size:15px;line-height:2.15;letter-spacing:.02em}
 .developer-prose p+p{margin-top:21px}
 .developer-draft-note{display:block;margin-top:30px;padding-top:17px;font-size:10px}
 .developer-draft-note>span{display:block}
 .developer-draft-note>span+span{margin-top:5px}
}
@media(max-width:360px){.developer-identity h2{font-size:38px}.developer-statement{font-size:22px}.developer-prose{font-size:13px}}
