/*
Theme Name: Dynamic Biophysics — Yuji Sakai
Author: Custom research portfolio
Description: A refined, bilingual personal academic website built around Homeostasis & Fidelity.
Version: 2.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: sakai-dynamic
*/
:root{--bg:#f7f8f5;--paper:#fff;--ink:#162938;--text:#40515a;--muted:#64757d;--line:#dce5e2;--teal:#166b69;--teal-pale:#dceee9;--orange:#b17a4d;--orange-pale:#f2e7d9;--dark:#101e2c;--header:84px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header)}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",Arial,sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a{ -webkit-tap-highlight-color:transparent }button:focus-visible,a:focus-visible{outline:3px solid #d2b17f;outline-offset:4px}::selection{background:#badfd4;color:#112535}.container{width:min(1160px,calc(100% - 64px));margin-inline:auto}.site-header{height:var(--header);position:sticky;z-index:30;top:0;background:rgba(248,249,246,.95);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font-size:18px;line-height:1.13;font-weight:750;letter-spacing:-.055em;color:var(--ink)}.brand small{display:block;font-size:9px;letter-spacing:.16em;font-weight:600;color:var(--muted);text-transform:uppercase;margin-top:7px}.site-nav{display:flex;align-items:center;gap:30px}.site-nav a{font-size:12px;font-weight:700;color:#344b57;white-space:nowrap;transition:color .2s}.site-nav a:hover{color:var(--teal)}.language-toggle{display:flex;background:#edf1ed;padding:3px;border-radius:99px;margin-left:4px}.language-toggle button{padding:6px 9px;border:0;background:transparent;border-radius:99px;color:var(--muted);cursor:pointer;font-size:11px;font-weight:750}.language-toggle button.active{background:var(--paper);box-shadow:0 1px 7px #1629381c;color:var(--ink)}.mobile-toggle{display:none;border:0;background:transparent;color:var(--ink);font-size:25px;cursor:pointer}.hero{overflow:hidden;background:radial-gradient(circle at 76% 54%,#1c3943 0%,#112432 30%,#0c1b29 65%,#0d1b29 100%);color:#fff;min-height:640px;position:relative}.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#ffffff07 1px,transparent 1px),linear-gradient(90deg,#ffffff07 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to right,transparent,#000)}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;align-items:center;min-height:640px;position:relative}.hero-content{z-index:2;padding:76px 0 86px}.eyebrow{display:flex;align-items:center;gap:13px;color:#91c1b7;font-size:10px;letter-spacing:.22em;font-weight:750;text-transform:uppercase}.eyebrow:before{content:"";width:25px;height:1px;background:#8ec4b4}.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(48px,5.5vw,76px);font-weight:400;letter-spacing:-.045em;line-height:1.09;margin:31px 0 26px;max-width:720px}.hero h1 em{font-weight:400;color:#a4d7c6;font-style:italic}.hero-lede{max-width:530px;font-size:16px;color:#b8cbd0;line-height:1.9}.hero-cta{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-top:36px}.btn-primary{display:inline-flex;align-items:center;gap:16px;border-radius:4px;padding:14px 20px;background:#d9b88b;color:#10222d;font-weight:800;font-size:12px;transition:transform .2s,background .2s}.btn-primary:hover{background:#ead0a5;transform:translateY(-2px)}.text-link{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:750;color:inherit;border-bottom:1px solid currentColor;padding-bottom:5px}.text-link:hover{color:var(--teal)}.hero .text-link:hover{color:#a6d7c8}.hero-visual{position:relative;min-height:580px}.hero-art{width:calc(100% + 100px);height:100%;max-height:600px;transform:translateX(-22px)}.svg-caption{fill:#9cb9b9;font-family:Arial,sans-serif;font-size:10px;letter-spacing:3px}.hero-bottom{position:absolute;bottom:27px;left:0;right:0;display:flex;justify-content:space-between;align-items:center;color:#8eaab1;font-size:10px;letter-spacing:.17em;text-transform:uppercase}.hero-bottom span:last-child{opacity:.6}.intro-strip{padding:45px 0;border-bottom:1px solid var(--line);background:white}.intro-strip .container{display:grid;grid-template-columns:185px 1fr;gap:60px}.small-label{font-size:10px;letter-spacing:.22em;text-transform:uppercase;font-weight:800;color:var(--teal)}.intro-strip p{font-family:Georgia,"Times New Roman",serif;font-size:clamp(21px,2.7vw,30px);line-height:1.47;letter-spacing:-.018em;margin:-7px 0 0;max-width:900px}.section{padding:106px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:44px}.section-head h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(36px,4vw,53px);font-weight:400;letter-spacing:-.04em;line-height:1.16;margin:15px 0 0}.section-head p{max-width:390px;color:var(--muted);font-size:14px;margin:0;line-height:1.85}.pillars{display:grid;grid-template-columns:1fr 1fr;gap:22px}.pillar{border:1px solid var(--line);border-radius:8px;background:#fff;min-height:362px;padding:35px 39px 34px;position:relative;overflow:hidden;display:flex;flex-direction:column}.pillar:after{content:"";position:absolute;width:230px;height:230px;border-radius:50%;right:-90px;top:-100px;background:#ddebe7;opacity:.55}.pillar.fidelity:after{background:#f2e5db}.pillar-id{font-family:Georgia,serif;font-size:13px;font-style:italic;color:var(--teal)}.pillar.fidelity .pillar-id{color:var(--orange)}.pillar h3{font-family:Georgia,serif;font-size:clamp(41px,4vw,57px);font-weight:400;letter-spacing:-.05em;margin:26px 0 5px;line-height:1}.pillar h3 span{color:var(--teal)}.pillar.fidelity h3 span{color:var(--orange)}.pillar .sub{font-size:12px;font-weight:750;letter-spacing:.03em;color:var(--muted)}.pillar p{font-size:15px;line-height:1.85;color:#4e6069;max-width:425px;margin-top:26px;margin-bottom:24px}.pillar .keyline{margin-top:auto;border-top:1px solid var(--line);padding-top:15px;display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:750}.pillar.fidelity .keyline{color:#885e45}.pillar.homeostasis .keyline{color:var(--teal)}.section.topics-section{background:#f0f4f0}.topic-controls{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:25px}.filter-btn{cursor:pointer;background:transparent;color:#52656a;border:1px solid #cedbd5;padding:9px 17px;border-radius:99px;font-size:12px;font-weight:700}.filter-btn.active,.filter-btn:hover{background:var(--ink);border-color:var(--ink);color:white}.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.topic{display:flex;flex-direction:column;min-height:342px;position:relative;padding:30px;background:#fff;border-radius:6px;border:1px solid #e1e8e4;transition:transform .2s,box-shadow .2s}.topic:hover{transform:translateY(-4px);box-shadow:0 18px 36px #152c2713}.topic-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.topic-num{font-family:Georgia,serif;font-style:italic;color:#87999b;font-size:15px}.mini-illustration{width:122px;height:84px;color:#338f85}.topic.fidelity .mini-illustration{color:#b67d62}.mini-illustration svg{width:100%;height:100%}.topic h3{font-family:Georgia,serif;font-size:24px;letter-spacing:-.03em;font-weight:400;line-height:1.2;margin:16px 0 12px}.topic p{font-size:13px;color:#5c6d73;line-height:1.85;margin:0 0 22px}.topic-foot{margin-top:auto;border-top:1px solid var(--line);padding-top:15px}.topic-foot strong{font-size:11px;font-weight:800;display:block;color:var(--teal);margin-bottom:5px}.topic.fidelity .topic-foot strong{color:#a27654}.topic-foot span{font-size:11px;color:#718086}.approach-section{background:#fff}.approach-layout{display:grid;grid-template-columns:.74fr 1.26fr;gap:80px}.approach-note{color:#687980;font-size:15px;line-height:1.85;max-width:430px}.approach-steps{margin-top:10px}.step{display:grid;grid-template-columns:75px 1fr;gap:25px;border-bottom:1px solid var(--line);padding:25px 0}.step:first-child{padding-top:0}.step-number{font-family:Georgia,serif;font-size:34px;line-height:1;color:#98b5ad;font-style:italic}.step h3{font-size:18px;margin:0 0 9px}.step p{color:#62737b;font-size:13px;line-height:1.8;margin:0}.publication-section{background:#f7f8f5}.pub-head{margin-bottom:32px}.pub-filters{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:25px}.pub-list{border-top:1px solid var(--line)}.pub-row{display:grid;grid-template-columns:85px 1fr 40px;align-items:start;gap:18px;padding:22px 12px;border-bottom:1px solid var(--line);transition:background .2s}.pub-row:hover{background:#eaf0eb}.pub-year{font-family:Georgia,serif;font-size:22px;color:#6d8b83}.pub-main .journal{color:#277c71;font-weight:800;font-size:10px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:7px}.pub-row.fidelity .journal{color:#ae7b57}.pub-main h3{font-size:15px;font-weight:700;line-height:1.5;margin:0 0 7px;max-width:870px}.pub-main .pub-note{color:#819097;font-size:12px}.pub-arrow{display:grid;place-items:center;border:1px solid #d2dfd9;height:31px;width:31px;border-radius:50%;font-size:16px;color:var(--teal);transition:transform .2s}.pub-row:hover .pub-arrow{transform:translate(3px,-3px)}.pub-footer{margin-top:26px;display:flex;justify-content:space-between;align-items:center;gap:20px;color:var(--muted);font-size:12px}.pub-footer .text-link{color:var(--teal)}.trajectory-section{background:#132837;color:#fff}.trajectory-section .small-label{color:#9fcebf}.trajectory-section .section-head p{color:#b0c3c4}.trajectory{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border-top:1px solid #43606a}.era{border-right:1px solid #43606a;padding:29px 24px 5px 0;margin-right:24px}.era:last-child{border:0;margin-right:0}.era .era-year{font-family:Georgia,serif;font-size:29px;color:#d4b48a}.era h3{font-size:14px;margin:16px 0 10px;line-height:1.4}.era p{font-size:12px;line-height:1.8;color:#b0c5c9}.about-section{background:white}.about-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:95px}.about-layout h2{font-family:Georgia,serif;font-size:54px;letter-spacing:-.04em;font-weight:400;line-height:1.13;margin:18px 0}.about-tagline{color:#56716f;font-family:Georgia,serif;font-style:italic;font-size:19px}.about-body{font-size:14px;color:#596a72;line-height:1.95}.career{margin-top:26px}.career-row{display:grid;grid-template-columns:105px 1fr;gap:13px;border-top:1px solid var(--line);padding:11px 0;font-size:12px}.career-row span:first-child{color:#96a6a8}.career-row strong{font-weight:650}.contact-section{background:#dfeae5;padding:68px 0}.contact-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.contact-section h2{font-family:Georgia,serif;font-size:clamp(32px,4vw,49px);font-weight:400;letter-spacing:-.04em;margin:10px 0}.contact-section p{color:#54706d;margin:0}.contact-links{display:flex;gap:14px;flex-wrap:wrap}.contact-links a{display:inline-flex;align-items:center;gap:12px;background:#fff;padding:12px 18px;border-radius:4px;font-size:12px;font-weight:750}.contact-links a:hover{background:#c9d8d1}.site-footer{background:#0e202b;color:#a1b5ba;padding:35px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px}.footer-inner strong{color:#fff;font-size:14px}.footer-inner a{color:#b5d5c9}.hide{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1000px){.site-nav{gap:16px}.container{width:min(100% - 44px,1160px)}.hero h1{font-size:61px}.hero-grid{grid-template-columns:1.04fr .96fr}.hero-art{transform:translateX(-15px)}.topic-grid{grid-template-columns:repeat(2,1fr)}.approach-layout{gap:45px}.about-layout{gap:45px}}@media(max-width:710px){:root{--header:70px}.container{width:calc(100% - 34px)}.site-nav{display:none;position:absolute;top:70px;left:0;right:0;z-index:25;padding:25px 18px 30px;background:var(--paper);box-shadow:0 15px 25px #132c331a;flex-direction:column;align-items:stretch;gap:20px}.site-nav.open{display:flex}.mobile-toggle{display:block}.language-toggle{align-self:flex-start;margin-left:0}.hero,.hero-grid{min-height:auto}.hero-grid{display:block}.hero-content{padding:72px 0 5px}.hero h1{font-size:clamp(47px,12vw,65px)}.hero-lede{font-size:14px}.hero-visual{height:340px;min-height:0;overflow:hidden}.hero-art{width:100%;height:440px;transform:translate(0,-44px)}.hero-bottom{display:none}.intro-strip{padding:35px 0}.intro-strip .container{display:block}.intro-strip p{margin-top:18px}.section{padding:72px 0}.section-head{display:block;margin-bottom:30px}.section-head p{margin-top:17px}.pillars{grid-template-columns:1fr}.pillar{min-height:300px;padding:28px}.pillar h3{font-size:49px}.topic-grid{grid-template-columns:1fr}.topic{min-height:280px}.approach-layout,.about-layout{grid-template-columns:1fr;gap:23px}.publication-section .section-head{margin-bottom:26px}.pub-row{grid-template-columns:54px 1fr 24px;gap:10px;padding-inline:0}.pub-year{font-size:18px}.pub-main h3{font-size:14px}.pub-arrow{width:24px;height:24px}.trajectory{grid-template-columns:1fr 1fr;row-gap:23px}.era{padding-right:12px;margin-right:12px}.era:nth-child(even){border-right:0}.contact-inner{display:block}.contact-links{margin-top:25px}.footer-inner{align-items:flex-start;flex-direction:column;gap:9px}.pub-footer{display:block}.pub-footer .text-link{margin-top:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* v2: Cell/organelle narrative, conceptual bridge and topic pages */
.hero-visual{min-height:520px;height:100%;display:flex;align-items:center;justify-content:center;margin-right:-70px}.hero-image-wrap{position:relative;height:455px;width:100%;border-radius:9px;overflow:hidden;box-shadow:0 36px 100px #07152177;isolation:isolate}.hero-image-wrap:before{content:"";inset:0;position:absolute;background:linear-gradient(90deg,#102330b5 0%,#10233060 24%,transparent 48%),linear-gradient(180deg,#0b1a2875 0%,transparent 38%,#0e223533 100%);z-index:1}.hero-cell-art{display:block;width:100%;height:100%;object-fit:cover;object-position:48% 50%;filter:saturate(.82) brightness(.92) contrast(.95)}.hero-image-overlay{position:absolute;inset:0;border:1px solid #ffffff24;border-radius:9px;pointer-events:none;z-index:2;background:linear-gradient(180deg,#ffffff10,transparent 28%,#ffffff06 100%)}.hero-figure-caption{position:absolute;bottom:48px;right:12px;color:#c8dcda;font-size:10px;letter-spacing:.08em;text-align:right;z-index:3;text-shadow:0 1px 6px #0e1f32}
.bridge-section{padding:69px 0 78px;background:#e7eeeb;border-top:1px solid #d8e4df;border-bottom:1px solid #d5e2dc}.bridge-title{display:grid;grid-template-columns:240px 1fr 1fr;gap:25px;align-items:start}.bridge-title .small-label{padding-top:15px}.bridge-title h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(29px,3.1vw,45px);letter-spacing:-.04em;line-height:1.15;margin:0}.bridge-title p{font-size:14px;color:#516b6b;line-height:1.8;margin:0}.bridge-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid #becfc8;margin-top:38px}.bridge-tiles>div{padding:23px 22px 0 0;border-right:1px solid #cddad4;margin-right:22px}.bridge-tiles>div:last-child{border:0}.bridge-tiles strong{font-size:12px;color:#689489}.bridge-tiles h3{font-family:Georgia,serif;font-size:23px;font-weight:400;margin:12px 0 5px}.bridge-tiles p{font-size:12px;color:#6b817d;line-height:1.8;margin:0}
.topic{padding:0;overflow:hidden}.topic-card-link{padding:30px;flex:1;display:flex;flex-direction:column}.topic-more{display:block;color:#2f7b75;font-weight:800;font-size:12px;margin-top:18px;white-space:nowrap}.topic.fidelity .topic-more{color:#af7f60}.topic-foot{margin-top:auto}
.detail-page{background:#f8faf7}.detail-hero{background:radial-gradient(circle at 83% 15%,#275c59 0%,#163544 33%,#101f2d 75%);color:#fff;padding:95px 0 100px}.detail-fidelity{background:radial-gradient(circle at 83% 15%,#6d4b50 0%,#263846 35%,#101f2d 75%)}.detail-back{font-size:12px;color:#b8d7cb;font-weight:750}.detail-eyebrow{color:#9fccbf;margin-top:55px;font-size:12px;text-transform:uppercase;letter-spacing:.16em}.detail-fidelity .detail-eyebrow{color:#e0bba5}.detail-hero h1{font-family:Georgia,serif;font-weight:400;letter-spacing:-.045em;font-size:clamp(47px,6.1vw,79px);max-width:900px;line-height:1.12;margin:20px 0 18px}.detail-question{font-size:19px;color:#d0e0db;max-width:890px;line-height:1.8}.detail-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:27px}.detail-tags span{border:1px solid #ffffff45;border-radius:99px;padding:5px 11px;font-size:11px;letter-spacing:.02em;color:#e0eae6}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:75px;padding-top:83px;padding-bottom:120px}.detail-lead{font-family:Georgia,'Noto Serif JP',serif;font-size:clamp(21px,2.2vw,29px);color:#344d50;line-height:1.8;margin:12px 0 70px}.detail-section-title{margin-bottom:28px;margin-top:66px}.detail-section-title h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(31px,3.1vw,44px);line-height:1.2;margin:13px 0 0;letter-spacing:-.03em}.detail-thread{border-top:1px solid #d8e5df;padding:27px 0;display:grid;grid-template-columns:55px 1fr;gap:15px}.detail-thread:last-child{border-bottom:1px solid #d8e5df}.detail-count{font-family:Georgia,serif;font-size:25px;color:#7aa296;font-style:italic}.detail-thread h3{font-size:19px;font-weight:700;color:#263b45;line-height:1.35;margin:0 0 10px}.detail-thread p{font-size:14px;color:#596d70;line-height:1.9;margin:0}.detail-duo{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:45px}.detail-duo>div{background:#edf3ef;border-radius:6px;padding:28px}.detail-duo>div:nth-child(2){background:#f2ede7}.detail-duo p{color:#52676b;font-size:14px;line-height:1.9;margin:18px 0 0}.detail-pub{padding:19px 0;border-top:1px solid #dbe5e0;display:grid;grid-template-columns:1fr 24px;align-items:start;gap:5px 14px}.detail-pub:last-of-type{border-bottom:1px solid #dbe5e0}.detail-pub span{grid-column:1/-1;font-size:11px;color:#49817a;font-weight:700;letter-spacing:.04em}.detail-pub strong{font-size:14px;line-height:1.6;font-weight:650}.detail-pub i{font-style:normal;color:#447f79;font-size:17px}.detail-pub:hover strong{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.ongoing-note{font-size:12px;color:#81918e}.detail-aside{align-self:start;position:sticky;top:calc(var(--header) + 25px)}.detail-aside-block{background:#fff;border:1px solid #e0e9e2;padding:25px;margin-bottom:15px;border-radius:6px}.detail-aside-block h3{margin:16px 0;font-size:18px;line-height:1.35}.detail-aside-block .detail-tags{gap:6px;margin:8px 0}.detail-aside-block .detail-tags span{color:#416b66;border-color:#d3e3dc}.detail-aside-block p{color:#64787b;font-size:12px;line-height:1.9}.detail-aside-block a{display:inline-block;color:var(--teal);font-weight:750;font-size:13px;margin-top:12px}
@media(max-width:1000px){.hero-visual{margin-right:0}.bridge-title{grid-template-columns:1fr 1fr}.bridge-title .small-label{grid-column:1/-1}.detail-layout{gap:36px;grid-template-columns:1fr 240px}}
@media(max-width:710px){.hero-visual{height:310px;margin:0;min-height:0}.hero-image-wrap{height:300px}.hero-cell-art{object-position:center}.hero-figure-caption{font-size:9px;bottom:12px;right:12px;left:12px}.bridge-section{padding:60px 0}.bridge-title,.bridge-tiles{display:block}.bridge-title h2{margin:14px 0}.bridge-tiles>div{border-right:0;border-bottom:1px solid #cddad4;margin:0;padding:18px 0}.topic-card-link{padding:27px}.detail-hero{padding:60px 0 68px}.detail-eyebrow{margin-top:35px}.detail-hero h1{font-size:47px}.detail-question{font-size:16px}.detail-layout{display:block;padding-top:55px;padding-bottom:75px}.detail-lead{margin-bottom:48px}.detail-aside{position:static;margin-top:50px}.detail-duo{grid-template-columns:1fr}.detail-section-title{margin-top:48px}.detail-thread{grid-template-columns:37px 1fr;gap:8px}}


/* v3: cross-cutting Research Vision pages */
.pillar{transition:transform .18s,box-shadow .18s}.pillar:hover{transform:translateY(-3px);box-shadow:0 16px 38px #112b3110}.pillar .keyline{font-size:12px}.pillar .keyline span:last-child{font-size:18px}
.vision-page{background:var(--bg)}.vision-hero{color:#fff;background:linear-gradient(120deg,#142e37,#1c4846 76%,#346c62);padding:55px 0 100px}.vision-hero-fidelity{background:linear-gradient(120deg,#1d2a38,#3b4049 73%,#665752)}.vision-back{font-size:12px;color:#d3e4da;border-bottom:1px solid #ffffff66;padding-bottom:4px}.vision-back:hover{color:#fff}.vision-kicker{font-size:11px;letter-spacing:.19em;text-transform:uppercase;font-weight:700;color:#bed9d1;margin-top:85px}.vision-number{font-family:Georgia,serif;font-size:20px;color:#d6b990;margin-top:18px}.vision-hero h1{font:400 clamp(66px,10vw,128px)/1.05 Georgia,serif;letter-spacing:-.055em;margin:7px 0 0}.vision-subtitle{font:400 clamp(24px,3.2vw,43px)/1.5 Georgia,'Noto Serif JP',serif;margin:14px 0 0;color:#d7e6e1;max-width:960px}.vision-hero-rule{width:60px;height:1px;background:#b6d4c9;margin:36px 0}.vision-opening{font-size:16px;line-height:2.05;color:#e0e9e5;max-width:880px;margin:0}.vision-statement{padding:56px 0 64px;background:#e7efea}.vision-statement blockquote{margin:22px 0 0;font:400 clamp(24px,3.4vw,39px)/1.55 Georgia,'Noto Serif JP',serif;letter-spacing:-.02em;max-width:990px;color:#25453f}.vision-section-head{display:grid;grid-template-columns:1fr 1fr;gap:18px 70px;align-items:end;margin-bottom:35px}.vision-section-head .small-label{grid-column:1/-1}.vision-section-head h2,.vision-trajectory h2{font:400 clamp(35px,4vw,53px)/1.18 Georgia,'Noto Serif JP',serif;letter-spacing:-.035em;margin:0}.vision-section-head p{font-size:14px;color:#647780;line-height:1.95;margin:0}.vision-questions{border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(2,1fr);column-gap:52px}.vision-question{display:grid;grid-template-columns:50px 1fr;gap:15px;border-bottom:1px solid var(--line);padding:31px 0}.vision-count{font:italic 25px Georgia,serif;color:#80a69b}.vision-fidelity .vision-count{color:#b38a70}.vision-question h3{font:400 24px/1.3 Georgia,'Noto Serif JP',serif;margin:0 0 14px}.vision-question p{font-size:14px;line-height:1.9;color:#586b70;margin:0}.vision-principles{background:#eef3ef}.vision-principle-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.vision-principle{background:white;padding:29px 24px;min-height:245px;border-radius:5px;border:1px solid #dfebe4}.vision-principle>span{color:#6b9a90;font:italic 15px Georgia,serif}.vision-principle h3{font:400 23px/1.3 Georgia,'Noto Serif JP',serif;margin:19px 0 13px}.vision-principle p{font-size:13px;line-height:1.9;color:#60717a;margin:0}.vision-trajectory{background:#fff}.vision-trajectory-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px}.vision-trajectory h2{margin:15px 0 24px}.vision-trajectory p{font-size:15px;line-height:2;color:#5f7377;max-width:520px}.vision-scale-steps{border-top:1px solid var(--line);align-self:center}.vision-scale-step{display:grid;grid-template-columns:53px 1fr;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:24px 0}.vision-scale-step span{color:#89a99f;font:italic 26px Georgia,serif}.vision-scale-step strong{font-size:17px;font-weight:600}.vision-related{background:#f7f9f6}.vision-topic-links{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.vision-topic-link{min-height:105px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:24px;background:#fff;border:1px solid #dce9e2;border-radius:5px;color:#294e49;font:400 20px/1.3 Georgia,'Noto Serif JP',serif;transition:transform .2s}.vision-topic-link:hover{transform:translateY(-3px)}.vision-topic-link span:last-child{font:22px Arial,sans-serif}.vision-publications{margin-top:60px;max-width:960px}.vision-publications h3{font:400 30px Georgia,'Noto Serif JP',serif;margin-bottom:15px}.vision-pub-list{border-top:1px solid var(--line)}.vision-publication{padding:19px 8px;display:grid;grid-template-columns:150px 1fr 24px;gap:18px;align-items:baseline;border-bottom:1px solid var(--line)}.vision-publication span{color:#63827a;font-size:12px}.vision-publication strong{font-size:14px;font-weight:600}.vision-publication i{font-style:normal;color:var(--teal)}.vision-publication:hover strong{text-decoration:underline}.vision-next{background:#ddebe5;padding:55px 0}.vision-next-inner{display:flex;justify-content:space-between;align-items:center;gap:32px}.vision-next h2{font:400 35px Georgia,serif;margin:10px 0 0}.vision-next p{font-size:13px;color:#596e6b;max-width:720px;line-height:1.75}.vision-next .btn-primary{white-space:nowrap}
@media(max-width:1000px){.vision-principle-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:710px){.vision-hero{padding:35px 0 62px}.vision-kicker{margin-top:55px}.vision-hero h1{font-size:61px}.vision-subtitle{font-size:25px}.vision-opening{font-size:14px}.vision-statement{padding:43px 0}.vision-section-head{display:block}.vision-section-head h2{margin:12px 0}.vision-section-head p{margin-top:12px}.vision-questions{grid-template-columns:1fr}.vision-principle-grid{grid-template-columns:1fr}.vision-principle{min-height:auto}.vision-trajectory-layout{display:block}.vision-scale-steps{margin-top:34px}.vision-topic-links{grid-template-columns:1fr}.vision-publication{grid-template-columns:1fr 25px;gap:5px 12px}.vision-publication span{grid-column:1/-1}.vision-next-inner{display:block}.vision-next .btn-primary{margin-top:19px}}

.detail-pub{padding:19px 0;border-top:1px solid #dbe5e0;display:grid;grid-template-columns:1fr 24px;align-items:start;gap:5px 14px}.detail-pub span{grid-column:1/-1;font-size:11px;color:#49817a;font-weight:700;letter-spacing:.04em}.detail-pub strong{font-size:14px;line-height:1.6;font-weight:650}.detail-pub .pub-summary{grid-column:1/2;font-size:12px;color:#6d7e83;line-height:1.8;margin-top:4px}.detail-pub i{font-style:normal;color:#447f79;font-size:17px}.topic-more{display:block;color:#2f7b75;font-weight:800;font-size:12px;margin-top:18px;white-space:nowrap}.topic-card-link:hover .topic-more{text-decoration:underline;text-underline-offset:3px}.topic-card-link:after{content:"";position:absolute;inset:0}
/* V6: richer research pages without changing the quiet original visual language. */
.research-focus{margin-top:63px;padding-top:1px}.research-focus-lede{font-family:Georgia,"Noto Serif JP",serif;color:#4b6368;font-size:19px;line-height:1.9;max-width:800px;margin:-3px 0 26px}.research-highlight-list{border-top:1px solid var(--line)}.research-highlight{padding:24px 0 25px;border-bottom:1px solid var(--line)}.research-highlight .highlight-kicker{text-transform:uppercase;color:#5d867f;font-size:10px;letter-spacing:.1em;font-weight:800;margin-bottom:9px}.research-highlight h3{font-size:18px;color:#223d46;margin:0 0 8px;font-weight:720}.research-highlight p{font-size:14px;line-height:1.9;color:#5b6c73;margin:0;max-width:820px}.research-connections{background:#ebf1ed;margin-top:24px;border-radius:6px;padding:27px 29px;display:flex;gap:24px;justify-content:space-between;align-items:center}.research-connections h3{font:400 24px/1.35 Georgia,"Noto Serif JP",serif;margin:10px 0}.research-connections p{font-size:12px;color:#667c78;line-height:1.8;max-width:430px;margin:0}.research-connections-actions{display:flex;align-items:flex-start;flex-direction:column;gap:9px;min-width:160px}.research-connections-actions a{font-size:12px;font-weight:800;color:var(--teal);text-underline-offset:4px;text-decoration:underline}.research-connections-actions a:hover{color:var(--ink)}.detail-pub .pub-summary{grid-column:1/2;font-size:12px;color:#647b7e;line-height:1.8;margin-top:4px}.detail-pub{transition:background .2s}.detail-pub:hover{background:#eff4f1}
@media(max-width:710px){.research-focus{margin-top:48px}.research-focus-lede{font-size:17px}.research-connections{display:block;padding:24px}.research-connections-actions{margin-top:20px}}

.topic-navigation-note{color:#63767a;font-size:13px;margin:-12px 0 22px;line-height:1.8}


/* v8 — Paper introductions on separate, topic-specific pages. */
.paper-hero{padding-top:83px;padding-bottom:85px}.paper-hero h1{font-size:clamp(48px,5.6vw,75px);margin-bottom:9px}.paper-topic-title{font-family:Georgia,serif;font-size:clamp(22px,2.3vw,29px);color:#acd8cd;margin:0 0 22px}.detail-fidelity .paper-topic-title{color:#e5c8b5}.paper-hero .detail-eyebrow{margin-top:45px}.paper-content{background:#f7f9f6;padding-top:82px}.paper-layout{display:grid;grid-template-columns:minmax(0,1fr) 268px;gap:78px}.paper-main{min-width:0}.paper-intro{border-bottom:1px solid var(--line);padding-bottom:35px;margin-bottom:36px}.paper-intro h2{font-family:Georgia,serif;font-size:clamp(31px,3.2vw,44px);font-weight:400;letter-spacing:-.034em;line-height:1.2;margin:12px 0 15px}.paper-intro p{font-size:15px;line-height:1.9;color:#607276;max-width:750px}.paper-story{padding:37px 0 44px;border-bottom:1px solid var(--line);scroll-margin-top:115px}.paper-story:first-child{padding-top:6px}.paper-story-meta{display:flex;align-items:center;gap:15px;margin-bottom:14px}.paper-story-number{font-family:Georgia,serif;font-size:24px;font-style:italic;color:#82aba0}.paper-story h2{font-family:Georgia,'Noto Serif JP',serif;font-size:clamp(21px,2.1vw,28px);letter-spacing:-.012em;font-weight:400;line-height:1.45;margin:0 0 27px;max-width:780px}.paper-story-copy{display:grid;grid-template-columns:1.2fr 1fr;gap:25px;margin-bottom:23px}.paper-story-copy h3{font-size:12px;font-weight:800;color:#26766c;margin:0 0 8px}.paper-story-copy p{font-size:13px;color:#566a70;line-height:1.87;margin:0}.paper-story-copy>div+div{padding-left:24px;border-left:1px solid #dce6e0}.paper-source-link,.paper-landing-link,.paper-hero-link{display:inline-flex;align-items:center;font-size:12px;font-weight:800;gap:7px;color:#1b756e;border-bottom:1px solid #80ada5;padding-bottom:5px}.paper-source-link:hover,.paper-landing-link:hover,.paper-hero-link:hover{color:#0d3f3f}.paper-aside{position:sticky;top:calc(var(--header) + 24px);align-self:start}.paper-bottom-nav{display:flex;justify-content:space-between;gap:12px;margin-top:39px}.paper-bottom-nav a{font-size:12px;font-weight:800;color:var(--teal)}.paper-landing-card{display:flex;justify-content:space-between;align-items:center;gap:25px;border-radius:7px;background:#eaf2ed;border:1px solid #d6e5de;padding:26px 27px;margin-top:5px}.paper-landing-card h3{font-family:Georgia,serif;font-size:25px;font-weight:400;line-height:1.2;margin:11px 0}.paper-landing-card p{font-size:13px;color:#58716e;line-height:1.8;max-width:570px;margin:0}.paper-landing-link{white-space:nowrap}.paper-hero-link{margin-top:28px;color:#dbeddf;border-color:#a7c5b6}.detail-fidelity .paper-hero-link{color:#ead3be;border-color:#d7bca5}.paper-hero-link:hover{color:#fff}.paper-aside .detail-aside-block a{margin-top:10px}
@media(max-width:900px){.paper-layout{grid-template-columns:minmax(0,1fr) 220px;gap:30px}.paper-story-copy{grid-template-columns:1fr}.paper-story-copy>div+div{padding:0;border:0}.paper-landing-card{align-items:flex-start;flex-direction:column}}
@media(max-width:710px){.paper-content{padding-top:54px}.paper-layout{display:block}.paper-aside{position:static;margin-top:50px}.paper-story{padding:28px 0 33px}.paper-hero{padding-top:58px;padding-bottom:65px}.paper-story h2{font-size:23px}.paper-bottom-nav{flex-direction:column;gap:17px}}


/* v9 — one topic page with research narrative and annotated papers, not separate paper subpages */
.detail-main .topic-publication-intro { border-bottom:1px solid var(--line);padding:7px 0 26px;margin:5px 0 14px; }
.detail-main .topic-publication-intro h2 {font:400 clamp(21px,2.3vw,30px)/1.3 Georgia,serif;letter-spacing:-.025em;margin:13px 0 10px;}
.detail-main .topic-publication-intro p {font-size:14px;line-height:1.9;color:#637579;margin:0;}
.detail-main > .paper-story-list {margin-top:6px;}
.detail-main > .paper-story-list .paper-story {scroll-margin-top:calc(var(--header) + 22px);}
.detail-main > .paper-story-list .paper-story h2 {font-size:clamp(19px,2vw,25px);margin-bottom:23px;}
#papers {scroll-margin-top:calc(var(--header) + 23px);}
.topic-return-nav {display:flex;justify-content:space-between;gap:18px;margin:35px 0 0;padding-top:17px;border-top:1px solid var(--line);}
.topic-return-nav a {color:var(--teal);font-size:12px;font-weight:750;}
.topic-return-nav a:hover {text-decoration:underline;text-underline-offset:4px;}
@media(max-width:710px){.topic-return-nav{flex-direction:column;gap:13px}.detail-main > .paper-story-list .paper-story h2{font-size:21px}}


/* Research scope and verified institutional releases */
.generality-note{margin:0 0 45px;padding:21px 26px 23px;border-left:3px solid #6c9a8e;background:#eff4f0;border-radius:0 6px 6px 0;}
.generality-note .small-label{letter-spacing:.13em}.generality-note p{font-size:13px;line-height:1.9;color:#526a6d;margin:9px 0 0}
.paper-press{padding:17px 18px;margin-top:20px;background:#f0f4f0;border:1px solid #dbe7df;border-radius:6px}
.paper-press .small-label{font-size:10px}.paper-press p{font-size:12px;color:#657980;line-height:1.7;margin:9px 0 13px}
.paper-press-link{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;color:#24736a;font-size:12px;font-weight:750}
.paper-press-link small{font-size:10px;font-weight:500;color:#748882}
.paper-press-link:hover span{text-decoration:underline;text-underline-offset:3px}
@media(max-width:710px){.generality-note{margin-bottom:32px;padding:18px}.paper-press{padding:15px}}

/* v14: Two-section research overview; nonredundant clickable mechanism pages */
.detail-layout.topic-simplified{grid-template-columns:minmax(0,1fr);max-width:1040px;gap:0}.topic-simplified .detail-main{max-width:100%}.topic-simplified .detail-lead{margin-bottom:46px}.topic-two-title{margin:42px 0 20px}.topic-two-title h2{font:400 clamp(32px,3vw,42px)/1.24 Georgia,'Noto Serif JP',serif;letter-spacing:-.035em;margin:10px 0}.topic-two-title p{max-width:790px;color:#61777b;font-size:14px;line-height:1.8}.mechanism-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.mechanism-card{display:flex;flex-direction:column;gap:8px;justify-content:space-between;min-height:182px;padding:22px 24px;border:1px solid #dce8df;border-radius:6px;background:#fff;transition:transform .2s,border-color .2s,box-shadow .2s}.mechanism-card:hover{transform:translateY(-3px);border-color:#98beb3;box-shadow:0 12px 30px #17372b12}.mechanism-card .mech-number{font:italic 13px Georgia,serif;color:#74968c}.mechanism-card strong{font:400 23px/1.24 Georgia,'Noto Serif JP',serif;color:#263c42;letter-spacing:-.02em}.mechanism-card .mech-summary{font-size:13px;color:#667981;line-height:1.75}.mechanism-card .mech-open{font-size:12px;color:#29786f;font-weight:800}.mechanism-card .mech-open:after{content:' ↗'}
.mechanism-page{background:#f7f9f6}.mechanism-hero{background:radial-gradient(circle at 90% 0%,#2d635d 0%,#173846 37%,#112332 100%);color:white;padding:76px 0 79px}.mechanism-hero.fidelity{background:radial-gradient(circle at 90% 0%,#684f59 0%,#263846 38%,#112332 100%)}.mechanism-crumb{font-size:12px;color:#c7dcd8;line-height:1.7}.mechanism-crumb a{border-bottom:1px solid #adc9c4;padding-bottom:2px}.mechanism-hero h1{font:400 clamp(41px,5vw,69px)/1.12 Georgia,'Noto Serif JP',serif;letter-spacing:-.035em;margin:22px 0 18px;max-width:900px}.mechanism-hero .mech-intro{font-size:17px;line-height:1.8;color:#c7ddd8;max-width:900px}.mechanism-hero .mech-position{font-size:11px;letter-spacing:.17em;text-transform:uppercase;color:#a7ccc3;margin-top:32px}.mechanism-content{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:65px;padding-top:70px;padding-bottom:100px}.mechanism-section{padding-bottom:35px;margin-bottom:48px;border-bottom:1px solid #dbe6de}.mechanism-section h2{font:400 clamp(27px,3vw,36px)/1.25 Georgia,'Noto Serif JP',serif;letter-spacing:-.025em;margin:11px 0 22px}.mechanism-section p{color:#4e656c;line-height:1.92;font-size:15px;margin:0 0 18px}.mechanism-status{display:inline-block;border:1px solid #cfddd6;border-radius:3px;padding:4px 11px;color:#47736a;font-size:11px;margin:0 0 18px}.mechanism-paper{border:1px solid #dbe7df;border-radius:5px;background:white;padding:17px 20px;margin:12px 0}.mechanism-paper strong{font-size:14px;line-height:1.55;display:block}.mechanism-paper span{display:block;font-size:11px;color:#568175;margin-bottom:7px}.mechanism-paper-links{display:flex;gap:19px;flex-wrap:wrap;margin-top:10px}.mechanism-paper-links a{font-size:12px;font-weight:750;color:#236e65;text-decoration:underline;text-underline-offset:3px}.mechanism-note{color:#78888a;font-size:12px;line-height:1.8}.mechanism-sidebar{position:sticky;top:calc(var(--header) + 20px);align-self:start;border-left:1px solid #d7e4db;padding-left:22px}.mechanism-sidebar h3{font:400 24px Georgia,serif;margin:10px 0 20px}.mechanism-sidebar a{display:block;border-bottom:1px solid #d7e4db;padding:11px 0;font-size:12px;color:#3f6e68;line-height:1.6}.mechanism-page .mech-footer{margin:10px 0 0;padding:24px;background:#e9f0ec;border-radius:6px}
@media(max-width:850px){.mechanism-content{grid-template-columns:1fr;gap:24px}.mechanism-sidebar{position:static;border-left:0;border-top:1px solid #d7e4db;padding:16px 0}}@media(max-width:710px){.mechanism-hero{padding:56px 0}.mechanism-content{padding-top:45px;padding-bottom:65px}.mechanism-hero h1{font-size:39px}.mechanism-hero .mech-intro{font-size:15px}.mechanism-cards{grid-template-columns:1fr}.mechanism-card{min-height:148px}.topic-two-title{margin-top:28px}}

/* v18: a plain-language first step on every mechanism page */
.plain-summary{border-left:2px solid #91aea6;padding:12px 0 12px 18px;margin:20px 0 29px;color:#3d5960;line-height:1.9;font-size:15px}.plain-summary strong{font-size:12px;letter-spacing:.02em;color:#416c65;margin-right:5px}@media(max-width:710px){.plain-summary{font-size:14px;padding-left:13px}}


/* v21 bilingual hero refinements */
html[lang="ja"] #hero-heading{font-size:clamp(42px,4vw,58px);line-height:1.2;letter-spacing:-.035em;}
html[lang="ja"] #hero-heading em{white-space:nowrap;}
@media(max-width:710px){html[lang="ja"] #hero-heading{font-size:clamp(28px,8.7vw,41px);line-height:1.22;}}


/* v22 — literature highlights, research figures and editable research notes */
.pub-contribution{font-size:12px;line-height:1.7;color:#687c7b;margin:9px 0 0;max-width:850px;font-weight:400}
.paper-finding{font-size:13px;line-height:1.85;color:#586f70;margin:11px 0 13px;font-weight:400}
.trajectory-phases{display:flex;flex-wrap:wrap;gap:13px;align-items:center;border-top:1px solid #44606a;padding:16px 0 18px;color:#dbd7c3;font-family:Georgia,serif;font-size:16px}
.trajectory-phases b{font-size:15px;font-family:Arial,sans-serif;color:#88b8aa;font-weight:400}
.trajectory-phases+.trajectory{border-top:1px solid #344f58}
.vision-case{background:#edf3ef;border-top:1px solid #d6e5dd;border-bottom:1px solid #d6e5dd;padding:34px 0}
.vision-page.vision-fidelity .vision-case{background:#f3eeea;border-color:#e8ddd4}
.vision-case-inner{display:grid;grid-template-columns:165px 1fr;gap:8px 30px;align-items:start}
.vision-case-inner .small-label{grid-row:1/4;margin-top:10px}
.vision-case-inner h2{font:400 27px/1.3 Georgia,serif;margin:0;letter-spacing:-.025em}
.vision-case-inner p{font-size:14px;line-height:1.9;color:#5c7072;max-width:740px;margin:10px 0}
.vision-case-inner a{justify-self:start;color:#2d796e}
.topic-visual-section{padding:45px 0;background:#f4f7f3}
.topic-visual-block{max-width:780px;margin:0 auto}
.topic-visual-block figure{margin:16px 0 0;background:white;border:1px solid #dce7df;padding:12px;border-radius:8px}
.topic-visual-block img{display:block;width:100%;height:auto;max-height:550px;object-fit:contain}
.topic-visual-block figcaption{font-size:12px;color:#68807d;padding:10px 4px}
.research-notes-section{background:#f2f6f2;padding:40px 0}
.research-notes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px}
.research-note-card{border:1px solid #dce6df;background:#fff;border-radius:7px;padding:20px}
.research-note-card img{width:100%;height:160px;object-fit:cover}
.research-note-card h3{font-family:Georgia,serif;font-weight:500;font-size:20px}
.research-note-card p{font-size:13px;line-height:1.8;color:#5f7479}
@media(max-width:710px){.vision-case-inner{display:block}.vision-case-inner .small-label{display:block;margin-bottom:10px}.vision-case-inner h2{font-size:24px}.research-notes-grid{grid-template-columns:1fr}.trajectory-phases{gap:7px;font-size:13px}}

/* v26: lightweight, unified research concept line drawings by the headings */
.topic-card-link .topic-top{min-height:18px;display:flex;align-items:center;justify-content:flex-start}
.topic-title-row{display:grid;grid-template-columns:minmax(0,1fr) 94px;align-items:center;gap:9px;min-height:93px;margin:10px 0 11px}
.topic-title-row h3{min-width:0;margin:0;font-size:clamp(21px,2.05vw,24px);line-height:1.22}
.topic-title-row .mini-illustration{width:94px;height:74px;min-width:0;display:flex;justify-content:center;align-items:center;color:#41877d;opacity:.83}
.topic-title-row .mini-illustration svg{display:block;width:100%;height:100%;max-width:100%;max-height:100%}
.topic.fidelity .topic-title-row .mini-illustration{color:#ac826d}
@media(max-width:710px){
.topic-title-row{grid-template-columns:minmax(0,1fr) 80px;min-height:84px;gap:7px;margin:8px 0 10px}
.topic-title-row h3{font-size:22px}
.topic-title-row .mini-illustration{width:80px;height:65px}
}
@media(max-width:360px){.topic-title-row{grid-template-columns:minmax(0,1fr) 70px}.topic-title-row .mini-illustration{width:70px;height:62px}}


.detail-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,42%);gap:34px;align-items:center}
.detail-hero-copy{min-width:0}
.detail-hero-copy .detail-eyebrow{margin-top:55px}
.detail-hero-figure{margin:0;justify-self:end;align-self:end;width:min(100%,680px)}
.detail-hero-art{display:block;width:100%;height:auto;opacity:.96}
@media(max-width:1000px){.detail-hero-grid{grid-template-columns:minmax(0,1fr) minmax(260px,38%);gap:24px}.detail-hero-figure{width:min(100%,520px)}}
@media(max-width:710px){.detail-hero-grid{grid-template-columns:1fr}.detail-hero-copy .detail-eyebrow{margin-top:35px}.detail-hero-figure{justify-self:start;max-width:340px;margin-top:22px;width:72%}.detail-hero-art{opacity:.9}}

/* Research topic banner illustrations – quiet secondary graphics, text-first layout. */
.detail-hero-figure{position:relative;overflow:visible;border:0;background:none;box-shadow:none;pointer-events:none;isolation:isolate;}
.detail-hero-art{width:100%;height:auto;display:block;opacity:.74;mix-blend-mode:screen;filter:drop-shadow(0 0 18px rgba(144,221,236,.08));-webkit-mask-image:none;mask-image:none;}
@media(max-width:710px){.detail-hero-figure{width:min(78%,340px);margin:12px 0 -16px auto}.detail-hero-art{opacity:.68}}

/* Layout for research topic hero art, alongside text. */
.detail-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,40%);gap:28px;align-items:center}
.detail-hero-grid .detail-hero-copy{min-width:0}
.detail-hero-grid .detail-hero-figure{margin:0;width:min(100%,560px);justify-self:end;align-self:center}
.detail-hero-grid h1{font-size:clamp(43px,5vw,70px);overflow-wrap:anywhere}
@media(max-width:1000px){.detail-hero-grid{grid-template-columns:minmax(0,1fr) minmax(220px,37%);gap:20px}.detail-hero-grid h1{font-size:clamp(42px,5.5vw,61px)}}
@media(max-width:710px){.detail-hero-grid{display:grid;grid-template-columns:1fr}.detail-hero-grid h1{font-size:clamp(40px,10vw,52px)}.detail-hero-grid .detail-hero-figure{width:min(78%,340px);justify-self:end;margin:14px 0 -20px auto}}


/* v30: enlarge topic-page concept illustrations so they fill the right side more naturally. */
.detail-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,48%);gap:36px;align-items:center}
.detail-hero-grid .detail-hero-copy{min-width:0}
.detail-hero-grid .detail-hero-figure{margin:0;width:min(100%,760px);justify-self:end;align-self:center}
.detail-hero-grid .detail-hero-art{display:block;width:100%;height:auto;opacity:.78;mix-blend-mode:screen;filter:drop-shadow(0 0 18px rgba(144,221,236,.08));-webkit-mask-image:none;mask-image:none}
.detail-hero-grid h1{font-size:clamp(43px,5vw,70px);overflow-wrap:anywhere}
@media(max-width:1180px){.detail-hero-grid{grid-template-columns:minmax(0,1fr) minmax(300px,44%);gap:28px}.detail-hero-grid .detail-hero-figure{width:min(100%,650px)}}
@media(max-width:1000px){.detail-hero-grid{grid-template-columns:minmax(0,1fr) minmax(240px,41%);gap:22px}.detail-hero-grid h1{font-size:clamp(42px,5.5vw,61px)}.detail-hero-grid .detail-hero-figure{width:min(100%,560px)}}
@media(max-width:710px){.detail-hero-grid{display:grid;grid-template-columns:1fr}.detail-hero-grid h1{font-size:clamp(40px,10vw,52px)}.detail-hero-grid .detail-hero-figure{width:min(86%,400px);justify-self:end;margin:16px 0 -14px auto}.detail-hero-grid .detail-hero-art{opacity:.7}}


/* v32: mechanism-specific, borderless scientific illustrations in the title banners. */
.mechanism-hero{overflow:hidden}
.mechanism-hero .mechanism-hero-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,43%);gap:clamp(12px,2vw,32px);align-items:center;min-height:340px}
.mechanism-hero .mechanism-hero-copy{min-width:0;position:relative;z-index:1}
.mechanism-hero .mechanism-hero-copy h1{font-size:clamp(36px,4.15vw,62px);line-height:1.15;max-width:760px;overflow-wrap:break-word}
.mechanism-hero .mechanism-hero-copy .mech-intro{max-width:680px}
.mechanism-hero .mechanism-hero-figure{margin:-18px -30px -22px -5px;align-self:center;justify-self:end;width:min(100%,720px);pointer-events:none;border:0;background:none;box-shadow:none}
.mechanism-hero .mechanism-hero-art{width:100%;height:auto;display:block;opacity:.93;mix-blend-mode:screen;filter:drop-shadow(0 0 15px rgba(146,229,220,.10));-webkit-mask-image:none;mask-image:none}
.mechanism-hero.fidelity .mechanism-hero-art{opacity:.85}
@media(max-width:1050px){.mechanism-hero .mechanism-hero-layout{grid-template-columns:minmax(0,1fr) minmax(255px,38%);gap:14px}.mechanism-hero .mechanism-hero-copy h1{font-size:clamp(34px,4.1vw,51px)}.mechanism-hero .mechanism-hero-figure{margin-right:-14px}}
@media(max-width:710px){.mechanism-hero{padding:47px 0 37px}.mechanism-hero .mechanism-hero-layout{grid-template-columns:1fr;gap:0;min-height:0}.mechanism-hero .mechanism-hero-copy h1{font-size:clamp(37px,9.4vw,49px)}.mechanism-hero .mechanism-hero-figure{width:min(88%,430px);justify-self:end;margin:0 -8px -28px auto}.mechanism-hero .mechanism-hero-art{opacity:.76}}


/* v33: individually differentiated, restrained scientific concept illustrations. */
.mechanism-hero .mechanism-hero-art{opacity:.90;mix-blend-mode:screen;filter:none}
.mechanism-hero.fidelity .mechanism-hero-art{opacity:.88}
.mechanism-hero .mechanism-hero-figure{overflow:visible;border:0;background:none;box-shadow:none}
@media(max-width:710px){.mechanism-hero .mechanism-hero-art{opacity:.78}}


/* v34: understated, consistent concept-art placement; title text always has priority. */
.mechanism-hero .mechanism-hero-layout{grid-template-columns:minmax(0,1fr) minmax(285px,39%);gap:clamp(18px,3vw,44px)}
.mechanism-hero .mechanism-hero-figure{margin:-8px -15px -12px 0;width:min(100%,600px)}
.mechanism-hero .mechanism-hero-art{opacity:.79;mix-blend-mode:screen;filter:none}
.mechanism-hero.fidelity .mechanism-hero-art{opacity:.76}
@media(max-width:1050px){.mechanism-hero .mechanism-hero-layout{grid-template-columns:minmax(0,1fr) minmax(245px,37%);gap:16px}.mechanism-hero .mechanism-hero-figure{margin-right:0}}
@media(max-width:710px){.mechanism-hero .mechanism-hero-layout{grid-template-columns:1fr;gap:0}.mechanism-hero .mechanism-hero-figure{width:min(75%,320px);margin:8px 0 -20px auto}.mechanism-hero .mechanism-hero-art,.mechanism-hero.fidelity .mechanism-hero-art{opacity:.70}}
@media(prefers-reduced-motion:reduce){.mechanism-card,.topic{transition:none}}



/* v35: matching artwork in the six homepage research-topic title bars. */
.topic-title-row{
  grid-template-columns:minmax(0,1fr) minmax(110px,43%);
  align-items:center;gap:3px;min-height:112px;margin:7px 0 11px;
}
.topic-title-row h3{position:relative;z-index:2;font-size:clamp(20px,1.65vw,23px);line-height:1.25;overflow-wrap:anywhere}
.topic-title-row .mini-illustration.topic-illustration{
  position:relative;z-index:1;width:100%;height:112px;min-width:0;
  display:flex;align-items:center;justify-content:flex-end;opacity:1;pointer-events:none;
}
.topic-title-row .topic-art-image{
  position:absolute;right:-11px;top:50%;transform:translateY(-50%);
  display:block;width:clamp(160px,13.3vw,180px);height:112px;
  object-fit:contain;object-position:right center;max-width:none;max-height:none;
  filter:saturate(1.06) contrast(1.07);
}
.topic.fidelity .topic-title-row .topic-art-image{filter:saturate(1.05) contrast(1.08)}
@media(max-width:1000px){
  .topic-title-row{grid-template-columns:minmax(0,1fr) minmax(120px,40%)}
  .topic-title-row .topic-art-image{width:clamp(165px,19vw,185px)}
}
@media(max-width:710px){
  .topic-title-row{grid-template-columns:minmax(0,1fr) minmax(122px,42%);min-height:105px;margin:4px 0 9px}
  .topic-title-row h3{font-size:21px}
  .topic-title-row .mini-illustration.topic-illustration{height:105px}
  .topic-title-row .topic-art-image{width:clamp(162px,43vw,180px);height:105px;right:-8px}
}
@media(max-width:370px){.topic-title-row h3{font-size:20px}.topic-title-row .topic-art-image{width:158px}}

/* v37: keep the Mechanisms & Discoveries boxes clean and text-only. */
.mechanism-card .mech-titleline{display:block;min-height:0}
.mechanism-card .mech-titleline strong{display:block}
/* Retain the existing concept illustrations on individual mechanism detail banners. */
.mechanism-hero .mechanism-hero-art,
.mechanism-hero.fidelity .mechanism-hero-art{
  opacity:.79;mix-blend-mode:screen;filter:none;
}
@media(max-width:710px){.mechanism-card .mech-titleline strong{font-size:21px}}
@media(max-width:370px){.mechanism-card .mech-titleline strong{font-size:20px}}

/* v38: keep the short final Japanese sentence together on all screen sizes. */
html[lang="ja"] .keep-source-sentence{white-space:nowrap}


/* v40: subdued opacity/color for approved transparent artwork; previously approved cell-and-four-insets illustration, transparently matted and
   placed directly beside the home-page title, with no framed background or caption. */
.hero-grid{grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:clamp(0px,1.5vw,24px)}
.hero-content{position:relative;z-index:2}
.hero-visual{position:relative;z-index:1;min-height:520px;height:100%;margin-right:-72px;display:flex;align-items:center;justify-content:center;overflow:visible}
.hero-image-wrap{position:relative;display:block;width:min(920px,65vw);min-width:680px;max-width:none;height:auto;margin-left:-105px;border-radius:0;overflow:visible;background:transparent;box-shadow:none;isolation:auto}
.hero-image-wrap:before,.hero-image-overlay,.hero-figure-caption{display:none!important}
.hero-cell-art{display:block;width:100%;height:auto;object-fit:contain;object-position:center;opacity:.59;filter:saturate(.70) brightness(1.06) contrast(.92)}
@media(max-width:1180px){
 .hero-visual{margin-right:-42px}
 .hero-image-wrap{width:min(780px,69vw);min-width:590px;margin-left:-76px}
}
@media(max-width:900px){
 .hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.84fr);gap:0}
 .hero-image-wrap{width:640px;min-width:0;margin-left:-90px}
 .hero-cell-art{opacity:.57}
}
@media(max-width:710px){
 .hero{min-height:0}
 .hero-grid{display:grid;grid-template-columns:1fr;gap:0}
 .hero-content{padding:65px 0 15px}
 .hero-visual{height:auto;min-height:0;width:100%;margin:0;padding:0 0 34px;justify-content:center}
 .hero-image-wrap{width:113%;min-width:0;margin:0 -6.5%;height:auto}
 .hero-cell-art{opacity:.64;filter:saturate(.72) brightness(1.05) contrast(.93)}
}

/* v41: legacy publication anchors land at the mechanism overview. */
.topic-two-title#papers{scroll-margin-top:calc(var(--header) + 24px)}


/* Readability / contrast refinement (light text on light surfaces).
   Keep the quiet blue-green palette while making labels and paragraphs legible. */
:root{--muted:#4d626a}
/* Small section labels, including “01 / The Central Question”. */
.small-label{color:#205b58;font-size:11px;letter-spacing:.16em;font-weight:800}
.detail-layout .small-label,
.topic-two-title .small-label,
.mechanism-content .small-label{color:#1c5855;font-size:12px;letter-spacing:.13em}
/* Main explanatory paragraphs in all research-topic pages. */
.detail-layout .detail-lead{color:#1f3640;font-weight:500}
html[lang="ja"] .detail-layout .detail-lead{font-weight:600}
.topic-simplified .topic-relevance{color:#405960;font-size:15px}
.topic-two-title p{color:#405a61;font-size:15px}
.mechanism-card .mech-summary{color:#465d64;font-size:14px}
.mechanism-card .mech-number{color:#466a62}
.detail-main .topic-publication-intro p{color:#405960}
/* Explanations in the individual mechanism pages. */
.mechanism-section p{color:#40575f}
.plain-summary{color:#354f57}
.mechanism-sidebar a{color:#245e59}
/* Other subdued text on pale backgrounds. */
.section-head p,.vision-section-head p{color:#485f66}
.topic p{color:#485f66}
.topic-foot span{color:#4d6369}
.step p,.approach-note{color:#4a6168}
.pub-main .pub-note{color:#4e646a}
.vision-question p,.vision-principle p,.vision-trajectory p{color:#485f65}
/* Light lettering is reserved for dark hero/trajectory backgrounds, with
   stronger contrast than before. */
.hero .eyebrow{color:#c9e4dc}
.hero .hero-lede{color:#dae6e7}
.detail-hero .detail-eyebrow{color:#cde8df}
.detail-hero.detail-fidelity .detail-eyebrow{color:#efd5c4}
.detail-hero .detail-question{color:#e3efeb}
.mechanism-hero .mech-intro{color:#e1ece8}
.mechanism-hero .mech-position{color:#cce4db}
.trajectory-section .small-label{color:#d3e9e1}
.trajectory-section .section-head p,.era p{color:#d1e0e2}

/* Home introduction, headline and body hierarchy. */
.intro-strip .small-label{font-weight:800;color:#205b58}
.intro-strip p{font-weight:400;color:#263e46}
html[lang="ja"] .intro-strip p{font-weight:500}
