@charset "UTF-8";
:root{--ink:#16323d;--muted:#607580;--teal:#166778;--deep:#10344e;--line:#dce6e9;--paper:#f6f8fa;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;color:var(--ink);background:var(--paper);font:15px/1.85 system-ui,-apple-system,"Noto Sans JP","Hiragino Kaku Gothic ProN",sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--teal)}a:focus-visible,summary:focus-visible{outline:3px solid #2db7ad;outline-offset:3px}.container{width:min(1120px,calc(100% - 40px));margin:auto}.skip-link{position:absolute;top:-90px;background:white;padding:10px;z-index:20}.skip-link:focus{top:0}.site-header{position:sticky;top:0;z-index:5;background:#fffefef5;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;gap:11px;align-items:center}.brand-mark{display:grid;place-items:center;width:38px;height:38px;background:var(--deep);border-radius:9px;color:white;font-weight:800}.brand-text strong{display:block;font-size:13px;letter-spacing:.07em}.brand-text small{display:block;font-size:10px;color:var(--muted)}.nav{display:flex;gap:15px;flex-wrap:wrap;font-size:12px;font-weight:650}.nav .lang{color:var(--teal)}.mobile-menu{display:none}.hero{background:linear-gradient(125deg,#0e2945,#1c5568);color:#fff}.hero-shell{display:grid;grid-template-columns:1.15fr 1fr;gap:35px;align-items:center;min-height:480px;padding-top:45px;padding-bottom:42px}.kicker{letter-spacing:.16em;text-transform:uppercase;color:#9de4d3;font-size:11px;font-weight:700}.hero h1{font-size:clamp(32px,4.5vw,58px);line-height:1.4;letter-spacing:-.045em;margin:20px 0}.hero h1 em{font-style:normal;color:#b2e7e2}.hero-lead{color:#e0eaf0;font-size:15px;max-width:620px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:27px 0}.btn{padding:11px 17px;border-radius:8px;font-weight:700;font-size:12px}.btn.primary{background:white;color:#123e52}.btn.secondary{border:1px solid #9cb4c5;color:white}.hero-note{font-size:12px;color:#b8cbd5}.hero-art img{width:100%;height:auto;max-height:330px;object-fit:contain}.hero-art-caption{text-align:center;font-size:10px;letter-spacing:.17em;color:#bad4d6}.hero-bottom{border-top:1px solid #ffffff2d}.hero-bottom-inner{display:flex;gap:25px;flex-wrap:wrap;padding:17px 0}.hero-bottom-item{display:flex;gap:9px;font-size:11px;color:#e0e8eb}.hero-bottom-item b{color:#99e4d6}.section{padding:70px 0}.section-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:27px}.section-eyebrow,.achievement-eyebrow{font-size:11px;font-weight:700;color:#167888;letter-spacing:.11em}.section-num{margin-right:8px}.section-title{font-size:clamp(25px,3vw,36px);letter-spacing:-.04em;margin:7px 0}.section-desc{font-size:13px;color:var(--muted);max-width:390px}.research-group{display:flex;align-items:center;gap:13px;margin:25px 0 17px}.research-group .label-prefix{color:var(--teal);font-weight:800}.research-group .bar{height:1px;background:var(--line);flex:1}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.project-card,.prior-card,.outcome-card,.mizar-output-card,.pub,.profile{background:#fff;border:1px solid #e1e8ed;border-radius:13px;overflow:hidden}.project-art{background:#e9f2f2;min-height:165px;display:grid;place-items:center}.project-art img{width:100%;height:178px;object-fit:cover}.project-content{padding:20px}.project-meta{display:flex;gap:10px;align-items:center;justify-content:space-between;font-size:10px;font-weight:800;color:var(--teal)}.project-status{color:#557b83;border:1px solid #d8e6e8;padding:2px 7px;border-radius:4px}.project-card h3{font-size:18px;margin:9px 0}.en-title{display:block;color:#698089;font-size:11px;font-weight:500}.project-card p{font-size:13px;color:#4d6570}.project-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;align-items:center;border-top:1px solid #edf1f3;padding-top:15px;margin-top:18px}.keywords{font-size:11px;color:#6a818b}.project-link{color:var(--teal);font-size:11px;font-weight:750}.results{background:#ecf2f4}.outcome-grid,.mizar-output-grid,.prior-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.outcome-card{padding:24px}.outcome-label,.mizar-output-index{font-size:11px;color:var(--teal);font-weight:750}.outcome-value{font-size:50px;font-weight:800;color:var(--deep);line-height:1.4}.outcome-value span{font-size:26px}.outcome-value.outcome-text{font-size:24px;padding:12px 0}.outcome-card p{color:var(--muted);font-size:13px}.mizar-achievements{margin-top:30px}.achievement-head h3{font-size:23px;margin:8px 0}.achievement-head p{font-size:13px;color:var(--muted)}.mizar-output-card{padding:20px}.mizar-output-card h4{margin:8px 0;font-size:16px}.mizar-output-card p{font-size:13px;color:var(--muted)}.mizar-output-links{display:flex;gap:14px;font-size:12px;color:var(--teal);flex-wrap:wrap}.pub-list{display:grid;gap:8px;margin-top:25px}.pub{padding:14px 19px;display:flex;gap:14px;align-items:center}.pub-year{font-size:12px;color:var(--teal);font-weight:800}.pub-title{font-size:13px;font-weight:700}.pub-venue{font-size:12px;color:var(--muted)}.pub-arrow{margin-left:auto}.prior-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.prior-card{padding:20px}.prior-card h3{margin:6px 0;font-size:15px}.prior-card p{font-size:12px;color:var(--muted)}.profile{padding:23px}.profile-role{color:var(--teal);font-size:12px}.profile-symbol{font-size:32px}.profile-links{display:flex;flex-wrap:wrap;gap:14px;color:var(--teal);font-size:12px}.contact{background:#e8f0f3}.footer-brand{font-weight:800}.footer-links{display:flex;gap:16px;flex-wrap:wrap}.footer-note{color:#647981;font-size:11px}.inline-note{font-size:12px;color:var(--muted)}footer{background:var(--deep);color:#dbe7ec;padding:30px 0}footer a{color:#fff}
@media(max-width:900px){.nav{display:none}.mobile-menu{display:block;position:relative}.mobile-menu summary{cursor:pointer;font-size:13px}.mobile-dropdown{position:absolute;right:0;top:31px;background:white;color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:15px;width:min(300px,85vw);box-shadow:0 12px 30px #0b273522}.mobile-dropdown a{display:block;padding:7px}.hero-shell{grid-template-columns:1fr}.hero-art{display:none}.section-head{display:block}.section-desc{max-width:none}.prior-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.container{width:min(100% - 30px,1120px)}.hero-shell{min-height:0;padding-top:42px;padding-bottom:42px}.hero h1{font-size:31px}.hero-lead{font-size:13px}.hero-bottom-inner{gap:10px}.hero-bottom-item{font-size:10px}.section{padding:42px 0}.project-grid,.outcome-grid,.mizar-output-grid,.prior-grid{grid-template-columns:1fr}.project-art img{height:155px}.project-content{padding:17px}.outcome-value{font-size:39px}.pub{flex-wrap:wrap}}

/* Deliberately restrained, text-first design. No decorative project illustrations. */
.hero-shell{grid-template-columns:minmax(0,1fr);min-height:350px;max-width:1120px}.hero-copy{max-width:760px}.project-card{display:flex;flex-direction:column}.project-content{height:100%;display:flex;flex-direction:column}.project-bottom{margin-top:auto}.project-art,.hero-art{display:none!important}

/* Lab identity first, restrained title design inspired by peer lab sites. */
.brand-en{font-size:10px;font-weight:500;letter-spacing:.02em;color:#6d8089;margin-left:7px}.hero h1{font-size:clamp(38px,5vw,64px);line-height:1.25;margin:20px 0 14px}.hero-roman{display:block;font-size:clamp(15px,1.7vw,22px);letter-spacing:.02em;font-weight:450;color:#c6dee6;margin-top:8px}.hero-mission{font-size:clamp(19px,2.35vw,29px);line-height:1.5;font-weight:650;margin:22px 0 12px;color:#fff}.hero-lead{margin-top:10px}.hero-note{margin-top:24px}.hero-shell{min-height:360px;padding-top:58px;padding-bottom:55px}@media(max-width:600px){.brand-en{display:block;margin-left:0;font-size:9px}.hero h1{font-size:38px}.hero-mission{font-size:21px}.hero-shell{padding-top:42px;padding-bottom:40px}}

/* Typography normalization — desktop and mobile, October 2026. */
.brand-text strong{font-size:15px;letter-spacing:0;line-height:1.35}.brand-text small{font-size:11px;line-height:1.45}.brand-en{font-size:11px;font-weight:450;letter-spacing:0;margin-left:6px}.brand-mark{flex-shrink:0}.nav{font-size:13px;gap:clamp(10px,1.1vw,17px)}
.hero-shell{display:block;min-height:0;padding-top:clamp(43px,5vw,67px);padding-bottom:clamp(42px,5vw,65px)}.hero-copy{max-width:850px}.kicker{font-size:12px;line-height:1.6;letter-spacing:.035em;text-transform:none}.hero h1{font-size:clamp(36px,3.7vw,48px);font-weight:750;line-height:1.3;letter-spacing:-.025em;margin:21px 0 0}.hero-roman{font-size:clamp(17px,1.7vw,20px);font-weight:450;margin-top:3px;letter-spacing:0;line-height:1.4}.hero-mission{font-size:clamp(21px,2.1vw,26px);font-weight:650;line-height:1.55;letter-spacing:-.02em;margin:28px 0 11px;text-wrap:pretty}.hero-lead{font-size:15px;line-height:1.95;max-width:43em;margin:0;overflow-wrap:normal;line-break:strict;word-break:normal}.hero-note{font-size:12px;margin-top:17px}.hero-bottom-item{font-size:12px}
.section-title{font-size:clamp(25px,2.65vw,31px)}.project-card h3{font-size:17px;line-height:1.55}.project-card p{font-size:14px;line-height:1.85}.en-title{font-size:12px}.section-desc{font-size:14px;line-height:1.75}.project-content{padding:22px}
@media(max-width:1000px){.nav{display:none}.mobile-menu{display:block;position:relative}.mobile-dropdown{position:absolute;right:0;top:31px;background:white;color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:15px;width:min(300px,85vw);box-shadow:0 12px 30px #0b273522}.mobile-dropdown a{display:block;padding:7px}}
@media(max-width:600px){.hero h1{font-size:35px}.hero-roman{font-size:17px}.hero-mission{font-size:21px;margin-top:23px}.hero-lead{font-size:14px}.brand-text strong{font-size:14px}.brand-en{display:block;margin:1px 0 0;font-size:10px}.project-content{padding:18px}.hero-shell{padding-top:39px;padding-bottom:41px}}

/* Restore original navy/teal palette; keep lab name modest and legible. */
.hero{background:linear-gradient(125deg,#0e2945,#1c5568);color:#fff}
.hero-shell{padding-top:42px;padding-bottom:43px}
.hero h1{font-size:clamp(28px,2.6vw,34px);font-weight:650;letter-spacing:0;line-height:1.38;margin:15px 0 0;color:#fff}
.hero-roman{font-size:15px;line-height:1.5;font-weight:400;color:#c6dee6;margin-top:2px}
.hero-mission{font-size:clamp(20px,2vw,25px);font-weight:600;line-height:1.6;color:#fff;margin:22px 0 10px}
.kicker{color:#aee6dc;font-size:12px}
.hero-lead{color:#e0eaf0;max-width:44em;font-size:15px}
.hero-note{color:#b8cbd5}
.hero-bottom{display:none}
@media(max-width:600px){.hero h1{font-size:29px}.hero-mission{font-size:20px}.hero-shell{padding-top:37px;padding-bottom:40px}.hero-lead{font-size:14px}}

/* Ordinary text links; no decorative external-link arrows. */
.project-link,.mizar-output-links a,.profile-links a,.footer-links a,.inline-note a,.contact-info a,.pub-title{ text-decoration:underline; text-underline-offset:3px; text-decoration-thickness:1px; }
.project-link:hover,.mizar-output-links a:hover,.profile-links a:hover,.footer-links a:hover,.inline-note a:hover,.contact-info a:hover,.pub:hover .pub-title{ text-decoration-thickness:2px; }
.pub-arrow{display:none}

/* Hero copy: sentence-level breaks on desktop; natural wrapping on narrower viewports. */
.hero-copy{max-width:1000px}
.hero-lead{max-width:100%;line-height:1.9}
.hero-sentence{display:block}
.hero-sentence + .hero-sentence{margin-top:0.35em}
@media(max-width:900px){.hero-copy{max-width:100%}}

/* Links to actual research software and resources, without decorative arrows. */
.project-resources{display:flex;flex-wrap:wrap;gap:5px 16px;margin-top:13px}
.project-resources a{color:var(--teal);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;font-size:13px}
.project-resources a:hover{text-decoration-thickness:2px}

/* Visible separator between adjacent resource links. */
.project-resources{align-items:baseline;column-gap:12px;row-gap:5px}
.resource-separator{color:#8798a0;font-size:13px;flex:0 0 auto}

/* Field-specific bibliography links, matching ordinary resource links. */
.related-publications{margin:12px 0 0;font-size:13px}
.related-publications a{color:var(--teal);text-decoration:underline;text-underline-offset:3px}
.pub-page-title{font-size:clamp(26px,3vw,34px);margin:8px 0 14px}
.pub-intro{max-width:860px;color:var(--muted);font-size:14px}
.pub-intro a,.pub-entry-title a{color:var(--teal);text-decoration:underline;text-underline-offset:3px}
.pub-toc{display:flex;flex-wrap:wrap;gap:9px 18px;padding:17px 0;border-bottom:1px solid var(--line)}
.pub-toc a{font-size:13px;color:var(--teal);text-decoration:underline;text-underline-offset:3px}
.pub-group{padding:29px 0 13px;border-bottom:1px solid var(--line);scroll-margin-top:95px}
.pub-group h2{font-size:21px;margin:0 0 12px}
.pub-entries{padding-left:22px}.pub-entries li{padding:5px 0 12px}
.pub-entry-title{font-size:14px;font-weight:600}.pub-entry-meta,.pub-pending{font-size:13px;color:var(--muted)}
