:root{--paper:#faf8f5;--ink:#282735;--muted:#676471;--purple:#69518e;--line:#e4dfd8;--soft:#f1ecf5}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.85 -apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",sans-serif}a{color:var(--purple);text-underline-offset:4px;text-decoration-thickness:1px}a:hover{color:#3f2d62}header{border-bottom:1px solid var(--line);background:var(--paper)}.masthead{max-width:1240px;margin:auto;padding:25px 50px;display:flex;justify-content:space-between;align-items:center;gap:30px}.brand{display:flex;align-items:center;gap:17px;text-decoration:none;color:var(--ink)}.monogram{font:500 36px/1 Georgia,serif;letter-spacing:-3px;border-right:1px solid #d7d0c8;padding-right:20px}.dot{color:#ad714f}.brand-name{font-size:16px;font-weight:650;line-height:1.4}.brand small{display:block;font-size:10px;color:var(--muted);font-weight:400;letter-spacing:.08em;margin-top:4px}nav{display:flex;gap:32px;align-items:center;font-size:13px}nav a{color:var(--muted);text-decoration:none;padding:8px 0}nav a[aria-current]{color:var(--purple);border-bottom:2px solid var(--purple)}nav a span{margin-left:8px}.eyebrow{font-size:10px;font-weight:650;letter-spacing:.18em;color:var(--purple);margin:0 0 23px}.hero{max-width:1240px;margin:auto;padding:76px 50px 64px;display:grid;grid-template-columns:1.2fr 1fr;gap:55px;align-items:center}.hero .eyebrow{display:flex;align-items:center;gap:10px}.hero .eyebrow>span{height:6px;width:6px;background:#ad714f;border-radius:50%;flex-shrink:0}h1{font:400 clamp(35px,4.5vw,58px)/1.22 Georgia,"Noto Serif JP",serif;letter-spacing:-.035em;margin:0}.hero h1{font-size:clamp(54px,6.5vw,80px)}.name-ja{display:block;font:400 20px/1.6 -apple-system,sans-serif;letter-spacing:.2em;margin-top:18px}.name-ja span{font:400 13px/1.5 -apple-system,sans-serif;letter-spacing:.06em;color:var(--muted);margin-left:12px}.hero-role{font-size:13px;color:var(--muted);margin-top:18px}.hero-role>span{color:#b1a9a0;margin:0 10px}.hero-description{font:400 clamp(20px,2.3vw,27px)/1.6 Georgia,serif;color:#5e5868;margin:26px 0 30px}.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.button{display:inline-flex;gap:26px;align-items:center;background:var(--purple);padding:13px 21px;color:white;text-decoration:none;font-size:12px;border-radius:3px}.button:hover{background:#503969;color:white}.text-link{font-size:12px;text-decoration:none}.research-art{background:radial-gradient(ellipse at 55% 45%,#e8e0f0 0,transparent 66%);padding:8px 2px}.research-art svg{display:block;width:100%;height:auto;max-height:390px}.art-caption{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.11em;color:#82738f;padding:0 20px}.topic-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:center;gap:70px;padding:18px 25px;color:var(--muted);font-size:11px;letter-spacing:.1em}.topic-strip span:before{content:"+";color:#ad714f;margin-right:14px}.content-shell{max-width:1240px;margin:auto;padding:64px 50px 85px;display:grid;grid-template-columns:190px minmax(0,1fr);gap:65px}.contents-nav{align-self:start;position:sticky;top:35px;padding-top:12px}.contents-nav .eyebrow{font-size:9px;color:#827b86;margin-bottom:18px}#section-links{display:flex;flex-direction:column;border-left:1px solid #ddd4e4}#section-links a{font-size:11px;line-height:1.6;text-decoration:none;padding:7px 0 7px 16px;color:var(--muted)}#section-links a:hover{color:var(--purple);border-left:2px solid var(--purple);margin-left:-1px}.contact-link{display:block;font-size:11px;margin-top:30px;text-decoration:none}main{min-width:0;overflow-wrap:anywhere}main>h2{font:400 29px/1.4 Georgia,"Noto Serif JP",serif;letter-spacing:-.02em;margin:48px 0 24px;padding:0 0 15px;border-bottom:1px solid var(--line);position:relative}main>h2:after{content:"";position:absolute;bottom:-1px;left:0;width:40px;height:2px;background:var(--purple)}main>h2:first-child{margin-top:0}main>p{font-size:14px;line-height:1.95;margin:15px 0;color:#4b4855}main h3{font-size:18px;margin:28px 0 15px}main h1{font-size:30px;margin-bottom:30px}main b,main strong{color:var(--ink)}main u{text-decoration-color:#a18bb9;text-underline-offset:3px}figure{background:white;margin:28px 0;padding:20px;border:1px solid var(--line);border-radius:7px;box-shadow:0 8px 28px #32243c06}img{display:block;max-width:100%;height:auto;margin:auto}aside.resource{background:white;border:1px solid var(--line);border-left:3px solid #b49cc9;border-radius:4px;padding:18px 23px;margin:18px 0}aside.resource>a{font-weight:550;font-size:14px}aside.resource p{font-size:12px;line-height:1.8;color:var(--muted);margin-bottom:0}.news{list-style:none;padding:0;margin:0}.news li{display:grid;grid-template-columns:105px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:18px 0;font-size:13px}.news a{text-decoration:none}.news time,.date{font-size:11px;color:#827b86}main ol{padding-left:23px;font-size:14px}main ol li{padding:9px 0 9px 7px;border-bottom:1px solid #eae5df}main ol li::marker{color:#9c87ae;font-size:12px}.page-heading{max-width:1140px;margin:0 auto;padding:58px 0 8px}.page-heading .eyebrow{margin-bottom:20px}.heading-rule{height:1px;background:var(--line);margin-top:34px}.inner main>h2:first-child{color:#8e819b;font:600 10px/1.6 -apple-system,sans-serif;text-transform:uppercase;letter-spacing:.18em;padding-bottom:12px;margin-bottom:30px}.inner main>h2:first-child:after{display:none}.inner main>h2:nth-child(2){margin-top:0}footer{max-width:1140px;margin:auto;border-top:1px solid var(--line);padding:32px 0 40px;display:flex;justify-content:space-between;gap:20px}footer p{font-size:10px;color:#827b86;letter-spacing:.025em;margin:7px 0}footer a{font-size:11px;text-decoration:none}.footer-name{font:400 23px Georgia,serif;color:var(--ink)}.footer-name span{font:400 11px -apple-system,sans-serif;color:var(--muted)}footer>div:last-child{text-align:right}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;padding:10px;background:white;z-index:10}hr{border:0;border-top:1px solid var(--line);margin:30px 0}:focus-visible{outline:3px solid #ad714f;outline-offset:5px}
@media(min-width:900px){.inner main>p{padding:12px 0 16px;border-bottom:1px solid #ede7e0;margin:0}.inner main>h2{margin-top:52px}}
@media(max-width:1200px){.page-heading,footer{margin-left:50px;margin-right:50px}.content-shell{gap:40px;grid-template-columns:160px minmax(0,1fr)}}
@media(max-width:800px){.masthead{padding:22px 25px}.brand-name{font-size:13px}.monogram{font-size:29px;padding-right:13px}nav{gap:18px;font-size:11px}.hero{padding:45px 25px;gap:15px;grid-template-columns:1.25fr 1fr}.hero .eyebrow{font-size:8px;letter-spacing:.1em}.hero h1{font-size:52px}.hero-description{font-size:21px}.hero-actions{gap:17px}.button{gap:15px}.art-caption{font-size:6px;gap:15px}.topic-strip{gap:25px;font-size:9px;letter-spacing:.03em}.topic-strip span:before{margin-right:8px}.content-shell{padding:40px 25px 55px;grid-template-columns:minmax(0,1fr);gap:30px}.contents-nav{position:static;padding:0}.contents-nav .eyebrow{margin-bottom:10px}#section-links{flex-direction:row;flex-wrap:wrap;gap:8px;border:0}#section-links a{font-size:10px;padding:5px 11px;border:1px solid var(--line);border-radius:20px}#section-links a:hover{border:1px solid var(--purple);margin:0}.contact-link{display:none}.page-heading{margin:0;padding:42px 25px 0}footer{margin:0 25px;padding:27px 0}.inner main>p{font-size:13px}.heading-rule{margin-top:25px}}
@media(max-width:520px){.masthead{align-items:flex-start;gap:20px;flex-direction:column}nav{width:100%;justify-content:space-between;gap:12px}.hero{display:block;position:relative;overflow:hidden;padding:38px 25px 40px}.hero-copy{position:relative;z-index:1}.hero h1{font-size:60px}.research-art{position:absolute;width:240px;right:-110px;top:20px;opacity:.25;pointer-events:none}.research-art .art-caption{display:none}.hero-description{font-size:22px}.hero-role{font-size:12px}.topic-strip{gap:13px;padding:14px 16px;font-size:8px}.topic-strip span:before{display:none}.hero-actions{gap:20px}.button{padding:12px 16px;font-size:11px}.text-link{font-size:11px}.name-ja{font-size:18px}main>h2{font-size:26px;margin-top:38px}.news li{grid-template-columns:1fr;gap:4px}footer{flex-direction:column}footer>div:last-child{text-align:left}figure{padding:8px}.page-heading h1{font-size:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{header,.contents-nav,.hero-actions,.research-art{display:none}.content-shell{display:block;padding:0}.hero,.page-heading{padding:10px 0}.topic-strip{display:none}body{background:white}footer{margin-top:25px}}
/* Homepage portrait */
.hero-portrait{width:min(100%,300px);justify-self:center;margin:0;padding:14px 14px 0;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 45px #38264812;transform:rotate(2deg)}
.hero-portrait img{display:block;width:100%;height:auto;border-radius:6px}
.hero-portrait figcaption{display:flex;justify-content:space-between;align-items:center;padding:14px 2px;font-size:12px;color:var(--ink);letter-spacing:.04em}
.hero-portrait figcaption span{font-size:10px;color:var(--muted)}
@media(max-width:800px){.hero-portrait{width:min(100%,240px);padding:10px 10px 0}.hero-portrait figcaption{font-size:10px;padding:10px 1px}}
@media(max-width:520px){.hero-portrait{position:relative;width:220px;margin:32px auto 0;transform:none}.hero{overflow:visible}}
@media print{.hero-portrait{display:none}}

/* Frame the supplied wide photograph around the portrait without altering the original. */
.hero-portrait img{aspect-ratio:175/165;object-fit:cover;object-position:70% center}
