:root{--paper:#f4f4f6;--ink:#242427;--muted:#606066;--accent:#ae2d74;--line:#e4e4e7;--white:#fff;--font:-apple-system,BlinkMacSystemFont,"Helvetica Neue","Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:14px;line-height:1.85;-webkit-font-smoothing:antialiased}p,h1,h2,h3,figure,dl,dd{margin:0}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.accent{color:var(--accent)}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:absolute;top:12px;left:12px;z-index:10;background:var(--white);padding:12px 20px;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}
.profile-sheet{width:min(1000px,calc(100% - 64px));margin:28px auto;background:var(--white);padding:22px 42px 0;border:1px solid var(--line)}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:16px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;min-height:44px;font-size:17px;font-weight:650;letter-spacing:-.04em}.brand>span{color:var(--accent)}.site-header nav{display:flex;gap:24px;font-size:12px}.site-header nav a{display:flex;align-items:center;min-height:44px}.site-header nav a:hover{color:var(--accent)}
.profile-intro{padding-block:28px 26px}.identity-card{display:grid;grid-template-columns:1fr 190px;gap:16px 36px;align-items:center;background:#f7f7f8;padding:26px 32px;border:1px solid #eeecef}.identity{align-self:start}.eyebrow{font-size:10px;font-weight:600;letter-spacing:.16em;color:var(--accent);line-height:1.5;margin-bottom:8px}h1{font-size:38px;font-weight:600;letter-spacing:-.04em;line-height:1.35}.name-en{display:inline-block;font-size:12px;color:var(--muted);font-weight:400;letter-spacing:.08em;margin-left:15px;vertical-align:middle}.role{font-size:17px;font-weight:500;color:var(--ink);line-height:1.75;margin-top:9px}.role br{display:none}.credential{font-size:13px;font-weight:500;margin-top:13px}.credential>span{display:inline-block}.role-separator{color:var(--muted);margin-inline:4px}.professional-fields{grid-column:1;grid-row:2;font-size:14px;font-weight:500;line-height:1.9}.mobile-field-break{display:none}.portrait{grid-column:2;grid-row:1/3;align-self:center;position:relative;aspect-ratio:1;border-radius:50%;overflow:hidden;background:var(--paper)}.portrait img{position:absolute;width:145%;max-width:none;height:auto;left:-45%;top:-22%}.introduction{margin-top:22px;font-size:14px;line-height:1.9;max-width:59em}.personal-note{font-size:13px;color:var(--muted);line-height:1.85;margin-top:12px}
.section{padding-block:22px;border-top:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:13px}h2{font-size:20px;font-weight:600;letter-spacing:-.035em;line-height:1.6}.section-heading>span{font-size:9px;color:var(--accent);letter-spacing:.12em;white-space:nowrap}.experience-list>div{display:grid;grid-template-columns:210px 1fr;gap:24px;padding-block:10px}.experience-list>div+div{border-top:1px solid #f1f1f3}.experience-list dt{font-size:13px;font-weight:600;line-height:1.9}.experience-list dd{font-size:13px;color:var(--muted);line-height:1.9}
.work-list{display:grid;grid-template-columns:1fr 1fr;gap:32px}.work-item{display:grid;grid-template-columns:110px 1fr;gap:17px;align-items:start;padding-block:4px;min-height:88px}.work-item>img{aspect-ratio:3/2;object-fit:contain;background:#f6f3f5}.work-item h3{display:flex;justify-content:space-between;gap:12px;font-size:13px;line-height:1.7;font-weight:600;letter-spacing:-.015em}.work-item h3 span{color:var(--accent)}.work-item p{font-size:12px;line-height:1.8;color:var(--muted);margin-top:6px}.work-item:hover h3{color:var(--accent)}
.contact .section-heading{margin-bottom:5px}.contact-note{font-size:13px;color:var(--muted)}.contact-links{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:12px}.contact-links>a{display:flex;justify-content:space-between;align-items:center;gap:15px;min-height:62px;padding:8px 0;border-bottom:1px solid var(--line)}.contact-links small{display:block;font-size:10px;color:var(--muted);font-weight:400;line-height:1.7;margin-bottom:3px}.contact-links strong{font-size:15px;font-weight:500;line-height:1.8}.contact-links>a>span:nth-child(2){font-size:23px;font-weight:400}.contact-links>a:hover{color:var(--accent)}.site-footer{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid var(--line);padding-block:16px;color:var(--muted)}.site-footer>span{font-size:10px}.site-footer small{font-size:9px}
@media(max-width:850px){.profile-sheet{width:calc(100% - 40px);padding-inline:28px}.identity-card{gap:16px 28px;grid-template-columns:1fr 164px;padding:24px}.experience-list>div{grid-template-columns:185px 1fr;gap:20px}.work-list{gap:24px}.work-item{grid-template-columns:90px 1fr;gap:13px}.contact-links{gap:24px}}
@media(max-width:600px){body{background:var(--white)}.profile-sheet{width:100%;margin:0;padding:12px 22px 0;border:0}.site-header{padding-bottom:8px}.brand{font-size:16px}.site-header nav{gap:21px;font-size:12px}.profile-intro{padding-block:20px 24px}.identity-card{grid-template-columns:1fr 122px;gap:16px 18px;padding:20px 18px}.professional-fields{grid-column:1/3;grid-row:2;font-size:13px;line-height:1.85}.mobile-field-break{display:block}.portrait{grid-column:2;grid-row:1;align-self:center}.eyebrow{font-size:9px;margin-bottom:6px}h1{font-size:32px}.name-en{font-size:10px;margin-left:12px}.role{font-size:14px;line-height:1.8;margin-top:8px;max-width:17em}.role br{display:block}.credential{font-size:11px;margin-top:10px}.role-separator{margin-inline:2px}.introduction{margin-top:20px;font-size:14px;line-height:1.9}.personal-note{font-size:13px;line-height:1.9;margin-top:12px}.section{padding-block:22px}.section-heading{gap:12px;align-items:center;margin-bottom:12px}h2{font-size:18px;line-height:1.65}.section-heading>span{font-size:8px;letter-spacing:.08em}.experience .section-heading{display:block}.experience .section-heading>span{display:block;margin-top:3px}.experience-list>div{grid-template-columns:1fr;gap:4px;padding-block:12px}.experience-list dt{font-size:13px}.experience-list dd{font-size:14px;line-height:1.85}.work-list{grid-template-columns:1fr;gap:14px}.work-item{grid-template-columns:94px 1fr;gap:15px;padding-block:4px}.work-item h3{font-size:14px}.work-item p{font-size:13px;line-height:1.85;margin-top:5px}.contact-note{font-size:13px;line-height:1.8}.contact-links{grid-template-columns:1fr;gap:4px;margin-top:9px}.contact-links>a{min-height:67px;padding-block:10px}.contact-links small{font-size:11px}.contact-links strong{font-size:15px}.site-footer{padding-block:18px}}
@media(max-width:350px){.profile-sheet{padding-inline:18px}.identity-card{grid-template-columns:1fr 108px;gap:16px 12px;padding:18px 14px}h1{font-size:30px}.role{font-size:13px}.credential{font-size:11px}.work-item{grid-template-columns:80px 1fr;gap:12px}.work-item h3{font-size:13px}.section-heading>span{font-size:7px}.contact h2{font-size:17px}}
@media(max-width:600px){.identity-card{grid-template-columns:1fr;gap:18px;padding:24px 20px;text-align:center}.portrait{grid-column:1;grid-row:1;width:180px;justify-self:center}.identity{grid-column:1;grid-row:2;align-self:center}.identity .eyebrow{margin-bottom:7px}h1{font-size:34px}.name-en{font-size:11px}.role{font-size:16px;line-height:1.75;max-width:none;margin-top:9px}.professional-fields{grid-column:1;grid-row:3;font-size:14px;line-height:1.85}.mobile-field-break{display:block}}
@media(max-width:350px){.identity-card{padding:22px 18px;gap:17px}.portrait{width:170px}h1{font-size:32px}.role{font-size:15px}.professional-fields{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

.approved-hero>img{display:block;width:100%;height:auto;object-fit:contain}.hero-caption{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px;line-height:1.85;color:var(--muted);margin-top:7px}.hero-caption>a{display:inline-flex;gap:12px;align-items:center;min-height:44px;font-size:12px;color:var(--ink);border-bottom:1px solid var(--line)}.hero-caption>a:hover{color:var(--accent)}
@media(max-width:600px){.hero-caption{font-size:14px;gap:6px 12px}.hero-caption>a{font-size:12px}.profile-intro{padding-top:20px}.introduction{margin-top:16px}}

/* One step larger live profile text, requested by the user. */
body{font-size:15px}.introduction{font-size:15px}.personal-note,.experience-list dt,.experience-list dd,.contact-note,.guide-link{font-size:14px}.contact-links small{font-size:11px}.contact-links strong{font-size:16px}.hero-caption{font-size:14px}.hero-caption>a{font-size:13px}
@media(max-width:600px){.experience-list dd,.hero-caption{font-size:15px}.contact-links small{font-size:12px}}
/* Clear section hierarchy while preserving the readable body text. */
.section-heading h2>span{display:inline-block}
h2{font-size:24px;font-weight:700;line-height:1.45;letter-spacing:-.025em;text-wrap:balance}.section{padding-block:30px}.section-heading{margin-bottom:20px;gap:20px}.section-heading>span{font-size:10px;letter-spacing:.12em}.experience-list dt{font-size:16px;font-weight:650;line-height:1.65}.experience-list>div{padding-block:14px}.contact .section-heading{margin-bottom:12px}
@media(max-width:600px){h2,.contact h2{font-size:22px;line-height:1.5}.section{padding-block:28px}.section-heading,.experience .section-heading{display:block;margin-bottom:18px}.section-heading>span,.experience .section-heading>span{display:block;margin-top:7px;font-size:10px;letter-spacing:.12em}.experience-list>div{gap:7px;padding-block:16px}.contact .section-heading{margin-bottom:14px}}

.profile-actions{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px;margin-bottom:24px}.profile-action{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:78px;padding:15px 17px;border:1px solid #ded4da;border-radius:9px;background:#fff;color:var(--ink);line-height:1.5}.profile-action strong{display:block;font-size:16px;font-weight:650;letter-spacing:-.015em}.profile-action small{display:block;margin-top:3px;font-size:12px;color:var(--muted)}.profile-action .action-arrow{flex:none;color:var(--accent);font-size:21px;line-height:1}.profile-action.primary{border-color:var(--accent);background:var(--accent);color:#fff}.profile-action.primary small,.profile-action.primary .action-arrow{color:#fff}.profile-action:hover{border-color:var(--accent);background:#fcf6f9}.profile-action.primary:hover{background:#942360;border-color:#942360}.profile-action:focus-visible{outline-offset:4px}
@media(max-width:600px){.profile-actions{grid-template-columns:1fr 1fr;gap:9px;margin-bottom:22px}.profile-action{min-height:72px;padding:12px 13px;gap:8px}.profile-action.primary{grid-column:1/-1;min-height:67px}.profile-action strong{font-size:15px}.profile-action.primary strong{font-size:16px}.profile-action small{font-size:12px}.profile-action .action-arrow{font-size:19px}}
@media(max-width:350px){.profile-action{padding-inline:11px}.profile-action strong{font-size:14px}}
