:root{--bg:#f4f2ed;--surface:#fff;--surface-2:#ebe8e1;--text:#172126;--muted:#667176;--line:#d8d5cd;--accent:#1d5963;--accent-dark:#123a42;--accent-soft:#dbe8e7;--burgundy:#814b58;--shadow:0 18px 60px rgba(19,39,45,.10);--radius:24px;--max:1180px;--serif:'Source Serif 4',Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
html[data-theme='dark']{--bg:#101719;--surface:#172124;--surface-2:#1d292c;--text:#edf1ef;--muted:#a8b2b1;--line:#304044;--accent:#76b8bd;--accent-dark:#9bcdd0;--accent-soft:#20383b;--burgundy:#c58b99;--shadow:0 18px 60px rgba(0,0,0,.25)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);line-height:1.65;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit}.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.narrow{max-width:850px}.section-pad{padding:108px 0}.surface-section{background:var(--surface-2)}.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}.skip-link{position:fixed;left:16px;top:-80px;z-index:1000;background:var(--text);color:var(--bg);padding:10px 16px;border-radius:8px}.skip-link:focus{top:16px}.site-header{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent)}.nav-wrap{height:76px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:11px;margin-right:auto}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--accent);color:#fff;font-family:var(--serif);font-weight:700}.brand-name{font-family:var(--serif);font-weight:700;font-size:1.06rem}.site-nav{display:flex;align-items:center;gap:24px}.site-nav a{font-size:.89rem;color:var(--muted);position:relative}.site-nav a:hover,.site-nav a.active{color:var(--text)}.site-nav a.active:after{content:'';position:absolute;left:0;right:0;bottom:-12px;height:2px;background:var(--accent)}.nav-actions{display:flex;align-items:center;gap:8px}.icon-link,.theme-toggle{width:39px;height:39px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:transparent;color:var(--text);cursor:pointer}.icon-link svg{width:18px;fill:currentColor}.theme-toggle .moon{display:none}html[data-theme='dark'] .theme-toggle .sun{display:none}html[data-theme='dark'] .theme-toggle .moon{display:inline}.nav-toggle{display:none;background:none;border:0;padding:8px}.nav-toggle span:not(.sr-only){display:block;width:23px;height:2px;background:var(--text);margin:5px}.eyebrow,.kicker{font-size:.76rem;line-height:1.2;text-transform:uppercase;letter-spacing:.16em;font-weight:750;color:var(--accent);margin:0 0 18px}.eyebrow.light{color:#bfe3e4}h1,h2,h3{font-family:var(--serif);line-height:1.12;margin-top:0}h1{font-size:clamp(3rem,6vw,5.9rem);letter-spacing:-.045em}h2{font-size:clamp(2.1rem,4vw,3.5rem);letter-spacing:-.035em}h3{font-size:1.45rem;letter-spacing:-.02em}p{margin-top:0}.hero{padding-top:78px}.hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:76px;align-items:center}.hero-copy h1{max-width:880px}.hero-lead{font-size:1.24rem;max-width:760px;color:var(--muted)}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:13px 20px;font-weight:700;font-size:.92rem;border:1px solid transparent;transition:.2s ease}.btn svg,.text-link svg,.project-card a svg,.footer-social svg{width:17px;fill:none;stroke:currentColor;stroke-width:1.8}.btn.primary{background:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent-dark);transform:translateY(-2px)}.btn.secondary{border-color:var(--line);background:var(--surface)}.btn.secondary:hover{border-color:var(--accent);color:var(--accent)}.btn.full{width:100%}.topic-line{display:flex;flex-wrap:wrap;gap:8px;margin-top:44px}.topic-line span,.tag-row span,.skill-cloud span,.contact-topics span,.writing-format-list span{border:1px solid var(--line);padding:7px 11px;border-radius:999px;color:var(--muted);font-size:.78rem;background:color-mix(in srgb,var(--surface) 70%,transparent)}.profile-card{background:var(--surface);border:1px solid var(--line);border-radius:32px;overflow:hidden;box-shadow:var(--shadow);transform:rotate(1.2deg)}.portrait-frame{aspect-ratio:4/5;background:linear-gradient(160deg,var(--accent-soft),var(--surface-2));overflow:hidden}.portrait-frame img{width:100%;height:100%;object-fit:cover}.profile-card-body{padding:25px 28px 27px}.profile-card-body h2{font-size:1.65rem;margin-bottom:7px}.profile-card-body>p:not(.kicker){color:var(--muted)}.profile-links{display:flex;gap:15px;border-top:1px solid var(--line);padding-top:18px;margin-top:18px;font-size:.82rem;font-weight:700}.profile-links a:hover{color:var(--accent)}.split-heading{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:start}.split-heading>div:first-child{position:sticky;top:120px}.intro-prose{font-size:1.08rem}.prose p{color:color-mix(in srgb,var(--text) 86%,var(--muted));margin-bottom:1.3em}.prose h2{margin-top:2em}.prose h3{margin-top:1.7em}.prose blockquote{border-left:3px solid var(--accent);padding:8px 0 8px 24px;margin:36px 0;font-family:var(--serif);font-size:1.35rem;color:var(--text)}.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--accent);font-weight:750}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:48px}.section-heading>div{max-width:760px}.section-heading>p{max-width:430px;color:var(--muted)}.card-grid{display:grid;gap:18px}.card-grid.three{grid-template-columns:repeat(3,1fr)}.card-grid.two{grid-template-columns:repeat(2,1fr)}.area-card,.topic-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:30px;min-height:220px}.area-card p,.topic-card p{color:var(--muted)}.card-number{font-family:var(--serif);font-style:italic;color:var(--accent);display:block;margin-bottom:34px}.experience-feature{display:grid;grid-template-columns:.75fr 1.25fr;border:1px solid var(--line);border-radius:30px;overflow:hidden;background:var(--surface)}.experience-intro{padding:50px;background:var(--accent);color:#fff}.experience-intro p{color:#dceced}.experience-list>div{display:grid;grid-template-columns:.75fr 1.25fr;gap:20px;padding:26px 32px;border-bottom:1px solid var(--line)}.experience-list>div:last-child{border-bottom:0}.experience-list span{color:var(--muted)}.research-band{background:var(--accent-dark);color:#fff}.research-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:center}.research-grid p:not(.eyebrow){color:#c7dadb;font-size:1.08rem}.light-button{background:#fff;color:var(--accent-dark);margin-top:20px}.research-visual{width:100%;border-radius:24px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project-card{display:flex;flex-direction:column;min-height:340px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:28px}.project-meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:32px}.project-meta span{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-weight:750}.project-card p{color:var(--muted)}.project-card>a{margin-top:auto;display:inline-flex;gap:8px;align-items:center;font-weight:750;color:var(--accent)}.writing-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.writing-topics{display:grid;grid-template-columns:1fr 1fr;gap:12px}.writing-topics span{padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:18px;font-family:var(--serif);font-size:1.12rem}.contact-cta{text-align:center}.contact-cta .container{max-width:860px}.contact-cta p:not(.eyebrow){font-size:1.12rem;color:var(--muted)}.contact-cta .hero-actions{justify-content:center}.site-footer{padding:70px 0 22px;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1.3fr .7fr .7fr;gap:60px}.footer-brand{font-family:var(--serif);font-size:1.45rem;font-weight:700}.footer-grid p,.footer-grid .muted{color:var(--muted);max-width:430px}.footer-links,.footer-social{display:flex;flex-direction:column;gap:10px}.footer-social a{display:flex;align-items:center;gap:6px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;margin-top:50px;color:var(--muted);font-size:.78rem}.page-hero{padding:100px 0 74px;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(3.2rem,6vw,5.4rem)}.page-lead{font-size:1.25rem;color:var(--muted);max-width:800px}.about-grid{display:grid;grid-template-columns:320px minmax(0,760px);justify-content:space-between;gap:90px}.about-aside{position:sticky;top:120px;align-self:start}.about-portrait{border-radius:26px;aspect-ratio:4/5;object-fit:cover;background:var(--surface-2);border:1px solid var(--line)}.aside-card{margin-top:18px;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:20px;display:grid;gap:5px}.aside-card span{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-top:10px}.long-prose{font-size:1.07rem}.timeline{max-width:850px;margin-left:auto}.timeline article{display:grid;grid-template-columns:24px 1fr;gap:25px;padding:0 0 45px;position:relative}.timeline article:before{content:'';position:absolute;left:8px;top:18px;bottom:-2px;width:1px;background:var(--line)}.timeline article:last-child:before{display:none}.timeline-dot{width:17px;height:17px;border:4px solid var(--bg);outline:1px solid var(--accent);background:var(--accent);border-radius:50%;margin-top:4px;z-index:1}.timeline-label{color:var(--accent);font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;font-weight:750}.timeline h3{margin-bottom:5px}.timeline p:last-child{color:var(--muted)}.skill-cloud{display:flex;gap:10px;flex-wrap:wrap}.skill-cloud span{font-size:.9rem;padding:10px 14px}.research-detail-grid{display:grid;grid-template-columns:310px minmax(0,760px);gap:100px;justify-content:space-between}.sticky-label{position:sticky;top:120px;align-self:start}.sticky-label p:last-child{color:var(--muted)}.research-streams article{padding:0 0 75px;margin-bottom:75px;border-bottom:1px solid var(--line)}.research-streams article>span{font-family:var(--serif);font-style:italic;color:var(--accent);font-size:1.2rem}.research-streams p,.research-streams li{color:var(--muted)}.experience-page-intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-bottom:80px}.experience-page-intro>p{font-size:1.1rem;color:var(--muted)}.career-timeline article{display:grid;grid-template-columns:210px 1fr;border-top:1px solid var(--line);padding:46px 0}.career-date{color:var(--muted);font-size:.85rem}.career-content{max-width:800px}.career-content>p:not(.kicker){color:var(--muted);font-size:1.06rem}.tag-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.project-list{display:flex;flex-direction:column;gap:0}.project-detail{display:grid;grid-template-columns:110px 1fr;gap:30px;padding:70px 0;border-top:1px solid var(--line)}.project-index{font-family:var(--serif);font-style:italic;color:var(--accent);font-size:1.4rem}.project-summary{font-size:1.25rem;max-width:820px;color:var(--muted)}.project-columns,.mini-projects{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}.project-columns>div,.mini-projects>div{padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:20px}.project-columns p,.mini-projects p{color:var(--muted)}.writing-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.writing-intro-grid p{color:var(--muted)}.writing-format-list{display:flex;flex-wrap:wrap;gap:9px;align-content:start}.empty-state{text-align:center;max-width:760px;margin:auto;padding:80px 30px;border:1px dashed var(--line);border-radius:30px}.empty-state p{color:var(--muted)}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--surface-2);padding:2px 5px;border-radius:5px}.cv-grid{display:grid;grid-template-columns:230px 1fr;gap:80px}.cv-nav{position:sticky;top:110px;align-self:start;display:flex;flex-direction:column;gap:10px}.cv-nav a{padding:9px 0;color:var(--muted);border-bottom:1px solid var(--line)}.cv-content>section{padding-bottom:65px;margin-bottom:65px;border-bottom:1px solid var(--line)}.cv-entry{display:flex;justify-content:space-between;gap:20px;padding:22px 0;border-top:1px solid var(--line)}.cv-entry h2{font-size:1.45rem;margin-bottom:5px}.cv-entry p,.cv-entry>span{color:var(--muted)}.contact-grid{display:grid;grid-template-columns:1fr 430px;gap:100px}.contact-topics{display:flex;gap:9px;flex-wrap:wrap;margin-top:28px}.contact-card{background:var(--surface);border:1px solid var(--line);border-radius:28px;padding:32px;box-shadow:var(--shadow)}.contact-card p{color:var(--muted)}.contact-card hr{border:0;border-top:1px solid var(--line);margin:30px 0}.small{font-size:.8rem}.muted{color:var(--muted)}.error-page{min-height:65vh;display:grid;align-items:center}.article-header{padding:100px 0 70px;border-bottom:1px solid var(--line)}.article-narrow{max-width:900px}.article-header h1{font-size:clamp(3rem,6vw,5.2rem)}.article-deck{font-size:1.3rem;color:var(--muted)}.article-meta{display:flex;gap:18px;flex-wrap:wrap;color:var(--muted);font-size:.86rem;margin-top:30px}.article-layout{display:grid;grid-template-columns:210px minmax(0,760px);gap:80px;padding-top:80px;padding-bottom:100px;justify-content:center}.toc{position:sticky;top:110px;align-self:start;display:flex;flex-direction:column;gap:8px;font-size:.85rem}.toc p{font-weight:750}.toc a{color:var(--muted)}.article-body{font-size:1.08rem}.article-body h2{font-size:2.25rem}.article-body pre{background:#11191c;color:#e6efed;padding:22px;border-radius:16px;overflow:auto}.article-body code{background:transparent}.article-body table{width:100%;border-collapse:collapse;margin:30px 0}.article-body th,.article-body td{border:1px solid var(--line);padding:12px;text-align:left}.template-warning{padding:18px 20px;background:var(--accent-soft);border-left:4px solid var(--accent);border-radius:10px;margin-bottom:45px}.mermaid{background:var(--surface);padding:25px;border:1px solid var(--line);border-radius:18px}.figure-caption{font-size:.82rem;color:var(--muted);margin-top:8px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.08s}.delay-2{transition-delay:.16s}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.btn{transition:none}}@media(max-width:980px){.site-nav{position:absolute;top:76px;left:20px;right:20px;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:var(--shadow);display:none;flex-direction:column;align-items:stretch}.site-nav.open{display:flex}.site-nav a.active:after{display:none}.nav-toggle{display:block}.brand-name{display:none}.hero-grid,.split-heading,.research-grid,.writing-grid,.about-grid,.research-detail-grid,.experience-page-intro,.writing-intro-grid,.contact-grid{grid-template-columns:1fr;gap:50px}.hero-grid{grid-template-columns:1fr minmax(280px,420px)}.profile-card{transform:none}.split-heading>div:first-child,.about-aside,.sticky-label{position:static}.about-aside{max-width:420px}.card-grid.three,.project-grid{grid-template-columns:repeat(2,1fr)}.experience-feature{grid-template-columns:1fr}.project-columns,.mini-projects{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.article-layout{grid-template-columns:1fr}.toc{position:static;border-bottom:1px solid var(--line);padding-bottom:25px}.cv-grid{grid-template-columns:1fr}.cv-nav{position:static;flex-direction:row;flex-wrap:wrap}}@media(max-width:680px){.container{width:min(calc(100% - 28px),var(--max))}.section-pad{padding:78px 0}.nav-wrap{height:68px}.site-nav{top:68px}.nav-actions .icon-link{display:none}.hero{padding-top:48px}.hero-grid{grid-template-columns:1fr;gap:45px}.profile-card{max-width:420px}.card-grid.three,.card-grid.two,.project-grid,.writing-topics,.footer-grid{grid-template-columns:1fr}.section-heading{align-items:start;flex-direction:column;gap:18px}.experience-list>div{grid-template-columns:1fr;gap:6px}.experience-intro{padding:34px}.experience-list>div{padding:24px}.project-detail{grid-template-columns:1fr}.project-index{margin-bottom:-10px}.career-timeline article{grid-template-columns:1fr;gap:12px}.footer-bottom{flex-direction:column;gap:7px}.cv-entry{flex-direction:column}.article-header{padding-top:70px}h1{font-size:clamp(2.7rem,13vw,4.5rem)}}

/* =========================================================
   V2 — cleaner academic/professional visual system
   ========================================================= */
:root{
  --bg:#f7f6f2;
  --surface:#ffffff;
  --surface-2:#efeee9;
  --text:#172127;
  --muted:#667177;
  --line:#d9d8d2;
  --accent:#245f68;
  --accent-dark:#153f46;
  --accent-soft:#dce9e8;
  --shadow:0 18px 50px rgba(20,42,47,.08);
  --radius:18px;
  --max:1120px;
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  --sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
html[data-theme='dark']{
  --bg:#12191c;--surface:#182226;--surface-2:#1d292d;--text:#edf1ef;--muted:#a9b3b2;
  --line:#314146;--accent:#7ebbc0;--accent-dark:#1a3f46;--accent-soft:#20383c;--shadow:0 18px 50px rgba(0,0,0,.22)
}
body{font-size:16px;line-height:1.68;background:var(--bg)}
.container{width:min(calc(100% - 48px),var(--max))}
.section-pad{padding:84px 0}
h1,h2,h3{font-weight:600}
h2{font-size:clamp(2rem,3.5vw,3.1rem)}
h3{font-size:1.35rem}
.eyebrow,.kicker{letter-spacing:.13em}
.site-header{background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(14px)}
.nav-wrap{height:70px;gap:22px}
.brand-mark{width:34px;height:34px;border-radius:9px;font-size:.88rem}
.brand-name{font-size:1rem}
.site-nav{gap:20px}
.site-nav a{font-size:.84rem}
.site-nav a.active:after{bottom:-10px}
.nav-actions{margin-left:4px}
.icon-link,.theme-toggle{width:35px;height:35px}
.btn{border-radius:10px;padding:12px 17px;font-size:.88rem}
.btn.primary:hover{transform:none}
.text-link{font-size:.9rem}

.hero-v2{padding:82px 0 92px;border-bottom:1px solid var(--line)}
.hero-v2-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:92px;align-items:center}
.hero-v2-copy h1{font-size:clamp(4rem,8vw,7rem);line-height:.86;letter-spacing:-.055em;margin:0 0 32px}
.hero-v2-title{font-family:var(--serif);font-size:clamp(1.45rem,2.5vw,2.05rem);line-height:1.25;max-width:680px;margin-bottom:18px}
.hero-v2-lead{font-size:1.08rem;color:var(--muted);max-width:660px}
.hero-social-line{display:flex;gap:22px;margin-top:30px;font-size:.84rem;font-weight:700;color:var(--muted)}
.hero-social-line a:hover{color:var(--accent)}
.identity-panel{min-height:490px;background:var(--accent-dark);color:#fff;border-radius:26px;padding:34px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow)}
.identity-mark{font-family:var(--serif);font-size:7.5rem;line-height:1;color:#c7e2e1;letter-spacing:-.08em}
.identity-details .kicker{color:#b9d9d8}
.identity-details h2{font-size:2rem;margin-bottom:10px}
.identity-details>p{color:#c9dadb}
.identity-rule{height:1px;background:rgba(255,255,255,.22);margin:24px 0}
.identity-focus{font-size:.85rem!important;line-height:1.9;text-transform:uppercase;letter-spacing:.08em}

.intro-v2-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:start}
.intro-v2-grid h2{max-width:480px}
.intro-v2-copy{font-size:1.05rem}
.intro-v2-copy p{margin-bottom:1.2em}

.focus-v2{background:var(--surface)}
.section-heading.compact{margin-bottom:34px}
.focus-list-v2{display:grid;grid-template-columns:repeat(2,1fr);column-gap:64px}
.focus-item-v2{display:grid;grid-template-columns:45px 1fr;column-gap:18px;padding:30px 0;border-top:1px solid var(--line)}
.focus-item-v2>span{font-family:var(--serif);font-style:italic;color:var(--accent)}
.focus-item-v2 h3{margin:0 0 8px}
.focus-item-v2 p{grid-column:2;color:var(--muted);margin:0;max-width:430px}

.dual-v2{padding-top:0;background:var(--surface)}
.dual-v2-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.feature-v2{min-height:410px;border-radius:24px;padding:42px;display:flex;flex-direction:column;align-items:flex-start}
.feature-v2 h2{font-size:clamp(2rem,3vw,2.8rem)}
.feature-v2 p:not(.eyebrow){font-size:1rem;max-width:520px}
.feature-v2 a{margin-top:auto;font-weight:700}
.feature-dark{background:var(--accent-dark);color:#fff}
.feature-dark p:not(.eyebrow){color:#c9dadb}
.feature-light{background:var(--surface-2);border:1px solid var(--line)}

.project-list-v2{border-bottom:1px solid var(--line)}
.project-row-v2{display:grid;grid-template-columns:60px 1fr 40px;align-items:center;gap:20px;padding:30px 0;border-top:1px solid var(--line);transition:padding .2s ease,color .2s ease}
.project-row-v2:hover{padding-left:10px;color:var(--accent)}
.project-row-v2 .project-no{font-family:var(--serif);font-style:italic;color:var(--muted)}
.project-row-v2 h3{margin:2px 0 0;font-size:1.55rem}
.project-row-v2 .kicker{margin:0}
.project-arrow{font-size:1.2rem;text-align:right}

.writing-v2{background:var(--surface-2)}
.writing-v2-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:90px;align-items:end}
.writing-v2-grid p{color:var(--muted);font-size:1.05rem}
.contact-v2-inner{text-align:center;max-width:820px}
.contact-v2-inner .hero-actions{justify-content:center}
.contact-v2-inner h2{margin-bottom:28px}

/* Make the interior pages calmer and easier to read */
.page-hero{padding:82px 0 58px}
.page-hero h1{font-size:clamp(3rem,5vw,4.7rem)}
.page-lead{font-size:1.12rem}
.about-grid,.research-detail-grid{gap:72px}
.area-card,.topic-card,.project-card,.contact-card{border-radius:16px;box-shadow:none}
.card-grid.three,.project-grid{gap:14px}
.area-card,.topic-card{min-height:auto;padding:26px}
.project-card{min-height:300px}
.site-footer{padding:56px 0 20px}
.footer-bottom span:last-child{display:none}

@media(max-width:980px){
  .hero-v2-grid,.intro-v2-grid,.writing-v2-grid{grid-template-columns:1fr;gap:48px}
  .identity-panel{min-height:380px;max-width:650px}
  .identity-mark{font-size:6rem}
  .dual-v2-grid{grid-template-columns:1fr}
  .focus-list-v2{column-gap:36px}
  .site-nav{gap:14px}
}
@media(max-width:760px){
  .container{width:min(calc(100% - 30px),var(--max))}
  .section-pad{padding:66px 0}
  .hero-v2{padding:56px 0 66px}
  .hero-v2-copy h1{font-size:clamp(3.8rem,18vw,5.8rem)}
  .identity-panel{min-height:340px;padding:28px}
  .identity-mark{font-size:5.1rem}
  .focus-list-v2{grid-template-columns:1fr}
  .feature-v2{min-height:350px;padding:30px}
  .project-row-v2{grid-template-columns:38px 1fr 24px;gap:12px}
  .project-row-v2 h3{font-size:1.25rem}
  .hero-social-line{flex-wrap:wrap}
}
@media print{.reveal{opacity:1!important;transform:none!important}.site-header{position:static!important}}


/* V3 — verified portrait and public profile links */
.identity-panel{padding:0;overflow:hidden;background:var(--surface);color:var(--text);border:1px solid var(--line);min-height:0}
.identity-photo{height:300px;background:#fff;overflow:hidden}
.identity-photo img{width:100%;height:100%;object-fit:cover;object-position:center 18%}
.identity-details{padding:28px 32px 32px}
.identity-details .kicker{color:var(--accent)}
.identity-details>p{color:var(--muted)}
.identity-rule{background:var(--line);margin:20px 0}
.identity-focus{color:var(--text)!important}
.about-portrait{object-position:center 14%;background:#fff}
.aside-social-links{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.aside-social-links a{padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-size:.8rem;font-weight:700;text-align:center}
.aside-social-links a:hover{border-color:var(--accent);color:var(--accent)}
.contact-link-list{display:grid;gap:10px;margin-top:26px}
.contact-profile-link{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--line);border-radius:12px;padding:14px 15px;background:var(--bg)}
.contact-profile-link span:first-child{display:flex;flex-direction:column;gap:2px}
.contact-profile-link strong{font-size:.91rem}
.contact-profile-link small{font-size:.74rem;color:var(--muted)}
.contact-profile-link>span:last-child{font-size:1.05rem}
.contact-profile-link.primary{background:var(--accent);border-color:var(--accent);color:#fff}
.contact-profile-link.primary small{color:#d9eeee}
.contact-profile-link:hover{border-color:var(--accent);transform:translateY(-1px)}
.footer-social{gap:8px}
.footer-social a{font-size:.88rem}
@media(max-width:980px){.identity-panel{max-width:520px}.identity-photo{height:360px}}
@media(max-width:680px){.identity-photo{height:330px}.identity-details{padding:25px}.aside-social-links{grid-template-columns:1fr 1fr}}

/* Version 4: refined typography and professional CV */
body{font-size:16px;line-height:1.72;letter-spacing:-.005em}
h1,h2,h3{font-weight:600;text-wrap:balance}
h1{font-size:clamp(3.1rem,5.4vw,5rem);letter-spacing:-.04em}
h2{font-size:clamp(2rem,3.6vw,3.05rem);letter-spacing:-.03em}
h3{font-size:1.38rem;line-height:1.25}
.page-hero{padding:96px 0 70px}.page-hero h1{font-size:clamp(3rem,5vw,4.55rem);max-width:980px}.page-lead{font-size:1.18rem;line-height:1.7}
.role-line{font-family:var(--serif);font-size:1.55rem;font-weight:600;margin:-12px 0 14px;color:var(--accent)}
.hero-lead{font-size:1.18rem;line-height:1.72}.hero-copy h1{margin-bottom:22px}
.site-nav a{font-size:.9rem;font-weight:600}.brand-name{font-size:1.03rem}
.long-prose h2{margin-top:2.35em;margin-bottom:.55em}.long-prose p{font-size:1.06rem;line-height:1.82}
.experience-page-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start;margin-bottom:72px}.experience-page-intro h2{max-width:560px}.experience-page-intro .prose{font-size:1.05rem}
.narrative-timeline article{padding-bottom:58px}.narrative-timeline .career-content p:not(.kicker){font-size:1.03rem;max-width:850px}
.writing-intro-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px;align-items:start}
.professional-cv .cv-nav{top:112px}.professional-cv .cv-content>section{padding:0 0 64px;margin-bottom:64px;border-bottom:1px solid var(--line)}.professional-cv .cv-content>section:last-child{border-bottom:0;margin-bottom:0}.cv-profile{font-family:var(--serif);font-size:1.3rem;line-height:1.6;color:var(--text)!important}.cv-entry.detailed{align-items:start}.cv-note{font-size:.94rem;color:var(--muted)!important;max-width:720px}.publication-entry{padding:27px 0;border-bottom:1px solid var(--line)}.publication-entry:last-child{border-bottom:0}.publication-entry h2{font-size:1.45rem;margin:8px 0}.publication-type{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:var(--accent)}.cv-skill-groups{display:grid;gap:22px}.cv-skill-groups>div{padding:24px 26px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.cv-skill-groups h3{margin-bottom:8px}.cv-skill-groups p{margin:0;color:var(--muted)}.award-list{list-style:none;padding:0;margin:0}.award-list li{display:flex;justify-content:space-between;gap:30px;padding:20px 0;border-bottom:1px solid var(--line)}.award-list li span{color:var(--muted);text-align:right}.cv-download-small{margin-top:18px!important;border-top:1px solid var(--line);padding-top:18px!important;color:var(--accent)!important;font-weight:700!important}
.aside-social-links{display:grid;gap:9px;margin-top:18px}.aside-social-links a{padding:10px 12px;border-bottom:1px solid var(--line);font-weight:600;color:var(--muted)}.aside-social-links a:hover{color:var(--accent)}
@media(max-width:900px){.experience-page-intro,.writing-intro-grid{grid-template-columns:1fr;gap:28px}.professional-cv{grid-template-columns:1fr}.professional-cv .cv-nav{position:static;display:flex;overflow-x:auto;gap:8px;padding-bottom:15px}.professional-cv .cv-nav a{white-space:nowrap;border:1px solid var(--line);border-radius:999px;padding:8px 12px}.award-list li{display:block}.award-list li span{display:block;text-align:left;margin-top:6px}}
@media(max-width:620px){body{font-size:15.5px}.section-pad{padding:74px 0}.page-hero{padding:74px 0 55px}h1{font-size:clamp(2.65rem,13vw,4rem)}.page-hero h1{font-size:clamp(2.55rem,12vw,3.7rem)}h2{font-size:clamp(1.8rem,8vw,2.45rem)}.role-line{font-size:1.28rem}.hero-lead,.page-lead{font-size:1.08rem}.long-prose p{font-size:1rem}.professional-cv .cv-content>section{padding-bottom:44px;margin-bottom:44px}}
/* Keep core content visible even when animations or JavaScript are unavailable. */
.reveal{opacity:1!important;transform:none!important}


/* Version 5: aligned editorial layout and published writing */
:root{--reading:780px}
.page-lead,.hero-lead,.prose p,.long-prose p,.career-content p:not(.kicker),.research-streams p,.project-summary,.project-columns p,.mini-projects p,.area-card p,.topic-card p,.project-card p,.writing-intro-grid p,.contact-card p,.cv-profile,.cv-note,.cv-skill-groups p,.featured-writing-copy>p,.latest-writing-card>p,.article-body p,.article-body li,.reference-entry{text-align:justify;text-justify:inter-word;hyphens:auto}
.card-grid{align-items:stretch}.card-grid>article{height:100%;display:flex;flex-direction:column}.card-grid>article p:last-child{margin-bottom:0}.area-card h3,.topic-card h3,.project-card h3{margin-bottom:13px}.area-card p,.topic-card p,.project-card p{line-height:1.72}
.section-heading{align-items:start}.section-heading>p{padding-top:8px}
.writing-hero{background:linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 42%,transparent),transparent)}
.featured-writing-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:72px;align-items:center}.featured-writing-copy h2{font-size:clamp(2.45rem,4.5vw,4.2rem);max-width:880px}.featured-deck{font-family:var(--serif);font-size:1.34rem!important;line-height:1.55!important;color:var(--accent)!important}.writing-meta{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:22px}.writing-meta span{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:var(--accent);border:1px solid var(--line);border-radius:999px;padding:7px 10px;background:var(--surface)}
.featured-writing-visual{min-height:430px;background:var(--accent-dark);color:#fff;border-radius:28px;padding:42px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow)}.visual-label{font-family:var(--serif);font-size:1.2rem;color:#cce7e5}.visual-path{display:grid;gap:17px;font-family:var(--serif);font-size:clamp(1.55rem,3vw,2.45rem)}.visual-path i{font-style:normal;color:#8fc5c7}.featured-writing-visual p{margin:0;color:#bfd4d4;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;line-height:1.8}
.latest-writing-home{background:var(--surface-2)}.latest-writing-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}.latest-writing-grid h2{font-size:clamp(2.3rem,4vw,3.6rem)}.latest-writing-card{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:34px;box-shadow:var(--shadow)}.mini-control-loop{display:flex;flex-wrap:wrap;align-items:center;gap:10px;border-top:1px solid var(--line);padding-top:24px;margin-top:26px}.mini-control-loop span{font-family:var(--serif);font-weight:600}.mini-control-loop i{font-style:normal;color:var(--accent);font-weight:700}
.article-hero{padding:90px 0 76px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 48%,transparent),transparent)}.article-title-wrap{max-width:1030px}.article-back{display:inline-block;margin-bottom:42px;color:var(--muted);font-size:.88rem;font-weight:600}.article-back:hover{color:var(--accent)}.article-hero h1{font-size:clamp(3.15rem,6vw,5.7rem);max-width:1000px}.article-hero .article-deck{max-width:850px;font-family:var(--serif);font-size:clamp(1.3rem,2.2vw,1.75rem);line-height:1.55;color:var(--accent)}.article-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.article-shell{background:var(--surface)}.article-layout{grid-template-columns:240px minmax(0,var(--reading));gap:78px;padding-top:88px}.article-sidebar{padding-right:5px}.toc>a{padding:5px 0;line-height:1.45}.toc>a:hover{color:var(--accent)}.article-author-card{border-top:1px solid var(--line);padding-top:24px;margin-top:28px;display:grid;grid-template-columns:56px 1fr;gap:13px}.article-author-card img{width:56px;height:68px;object-fit:cover;object-position:center 15%;border-radius:10px;background:#fff}.article-author-card strong,.article-author-card span{display:block}.article-author-card span{font-size:.74rem;line-height:1.5;color:var(--muted);margin-top:4px}.article-body{font-size:1.075rem;line-height:1.88}.article-body>p:first-child{font-family:var(--serif);font-size:1.32rem;line-height:1.72;color:var(--text)}.article-body h2{font-size:clamp(2rem,3.5vw,2.75rem);margin-top:2.4em;margin-bottom:.7em;scroll-margin-top:110px}.article-body blockquote{font-family:var(--serif);font-size:1.55rem;line-height:1.58;border-left:4px solid var(--accent);padding:10px 0 10px 28px;margin:42px 0;color:var(--text)}.article-body a{color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.reference-entry{font-size:.94rem;line-height:1.7;padding-left:26px;text-indent:-26px;margin-bottom:1.1em;color:var(--muted)}
.control-loop-figure{margin:48px 0 58px;background:var(--accent-dark);color:#fff;border-radius:26px;padding:32px}.control-loop-heading{display:flex;justify-content:space-between;gap:20px;align-items:end;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:20px;margin-bottom:24px}.control-loop-heading span{font-size:.72rem;text-transform:uppercase;letter-spacing:.13em;color:#b9d9d8}.control-loop-heading strong{font-family:var(--serif);font-size:1.25rem;text-align:right}.control-loop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.loop-stage{min-height:174px;padding:18px;border:1px solid rgba(255,255,255,.18);border-radius:16px;display:flex;flex-direction:column}.loop-stage>span{font-family:var(--serif);font-style:italic;color:#8fc5c7}.loop-stage strong{font-family:var(--serif);font-size:1.35rem;margin:10px 0 7px}.loop-stage small{color:#c8d9d9;line-height:1.55}.loop-return{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding:14px 17px;border-radius:14px;background:rgba(255,255,255,.08);font-size:.78rem;text-transform:uppercase;letter-spacing:.09em;color:#c8d9d9}.loop-return b{font-size:1.5rem;color:#8fc5c7}.control-loop-figure figcaption{font-size:.78rem;line-height:1.55;color:#b9cbcc;margin-top:18px}.article-end{padding:90px 0;background:var(--surface-2)}.article-end p:not(.eyebrow){font-size:1.1rem;color:var(--muted);text-align:justify}
@media(max-width:980px){.featured-writing-grid,.latest-writing-grid{grid-template-columns:1fr;gap:44px}.featured-writing-visual{min-height:340px}.article-layout{grid-template-columns:1fr;gap:42px}.article-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;border-bottom:1px solid var(--line);padding-bottom:28px}.article-sidebar>p,.article-author-card{grid-column:1/-1}.article-author-card{max-width:420px}.control-loop-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.page-lead,.hero-lead,.prose p,.long-prose p,.career-content p:not(.kicker),.research-streams p,.project-summary,.project-columns p,.mini-projects p,.area-card p,.topic-card p,.project-card p,.writing-intro-grid p,.contact-card p,.cv-profile,.cv-note,.cv-skill-groups p,.featured-writing-copy>p,.latest-writing-card>p,.article-body p,.article-body li,.reference-entry,.article-end p:not(.eyebrow){text-align:left;hyphens:none}.article-hero{padding:62px 0 54px}.article-back{margin-bottom:30px}.article-hero h1{font-size:clamp(2.65rem,13vw,4rem)}.article-meta{gap:9px}.article-layout{padding-top:56px;padding-bottom:70px}.article-sidebar{grid-template-columns:1fr}.article-body{font-size:1rem;line-height:1.78}.article-body>p:first-child{font-size:1.18rem}.article-body h2{font-size:clamp(1.85rem,9vw,2.35rem)}.article-body blockquote{font-size:1.3rem;padding-left:20px}.control-loop-figure{padding:23px;margin-inline:-7px}.control-loop-heading{display:block}.control-loop-heading strong{display:block;text-align:left;margin-top:8px}.control-loop-grid{grid-template-columns:1fr}.loop-stage{min-height:0}.featured-writing-visual{min-height:300px;padding:30px}.latest-writing-card{padding:26px}}

/* Version 5.1: balanced paragraph alignment */
.page-lead,.hero-lead,.area-card p,.topic-card p,.project-card p,.contact-card p,.latest-writing-card>p,.reference-entry{text-align:left;hyphens:none}
.prose p,.long-prose p,.career-content p:not(.kicker),.research-streams p,.project-summary,.project-columns p,.mini-projects p,.cv-profile,.cv-note,.cv-skill-groups p,.featured-writing-copy>p,.article-body p,.article-body li,.article-end p:not(.eyebrow){text-align:justify;text-justify:inter-word;hyphens:auto}
.reference-entry{text-align:left!important;text-justify:auto!important;hyphens:none!important}
@media(max-width:680px){.prose p,.long-prose p,.career-content p:not(.kicker),.research-streams p,.project-summary,.project-columns p,.mini-projects p,.cv-profile,.cv-note,.cv-skill-groups p,.featured-writing-copy>p,.article-body p,.article-body li,.article-end p:not(.eyebrow){text-align:left;hyphens:none}}


/* Version 6: Integrated academic and professional background */
.background-hero{background:linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 42%,transparent),transparent)}
.background-overview{display:grid;grid-template-columns:310px minmax(0,780px);gap:88px;align-items:start;justify-content:space-between}
.background-profile{position:sticky;top:112px;align-self:start}
.background-intro-copy{padding-top:4px}
.background-intro-copy h2{max-width:720px;margin-bottom:28px}
.background-intro-copy p{font-size:1.075rem;line-height:1.86}
.background-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.background-facts strong{line-height:1.4}
.background-section-heading{margin-bottom:62px}
.integrated-journey{position:relative;max-width:1030px;margin-inline:auto}
.integrated-journey:before{content:'';position:absolute;left:148px;top:8px;bottom:8px;width:1px;background:var(--line)}
.journey-chapter{display:grid;grid-template-columns:150px minmax(0,1fr);gap:58px;padding:0 0 82px;position:relative}
.journey-chapter:last-child{padding-bottom:0}
.journey-rail{position:relative;text-align:right;padding-right:28px}
.journey-period{display:block;font-family:var(--serif);font-size:1.08rem;font-weight:650;color:var(--accent);line-height:1.3;position:sticky;top:112px}
.journey-dot{position:absolute;right:-8px;top:5px;width:17px;height:17px;border-radius:50%;background:var(--accent);border:4px solid var(--surface-2);outline:1px solid var(--accent)}
.journey-content{padding:0 0 8px}
.journey-content h3{font-size:clamp(2rem,3.5vw,2.85rem);max-width:800px;margin-bottom:22px}
.journey-summary{font-family:var(--serif);font-size:1.22rem;line-height:1.7;max-width:820px;color:var(--text);text-align:justify;text-justify:inter-word;hyphens:auto}
.journey-evidence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:34px}
.journey-evidence{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:25px;min-height:210px;display:flex;flex-direction:column;align-items:flex-start}
.journey-evidence>span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;font-weight:750;color:var(--accent);margin-bottom:15px}
.journey-evidence strong{font-family:var(--serif);font-size:1.24rem;line-height:1.3;margin-bottom:7px}
.journey-evidence p{color:var(--muted);line-height:1.55;margin-bottom:12px;text-align:left!important;hyphens:none!important}
.journey-evidence small{color:var(--muted);line-height:1.55;margin-top:auto}
.journey-evidence-stack strong:not(:first-of-type){border-top:1px solid var(--line);width:100%;padding-top:16px;margin-top:6px}
.journey-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.journey-tags span{font-size:.74rem;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:7px 10px;background:color-mix(in srgb,var(--surface) 74%,transparent)}
.capability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.capability-card{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:30px;display:grid;grid-template-columns:46px 1fr;column-gap:18px;align-content:start;min-height:220px}
.capability-card>span{font-family:var(--serif);font-style:italic;color:var(--accent);font-size:1.05rem}
.capability-card h3{margin:0 0 12px;font-size:1.45rem}
.capability-card p{grid-column:2;color:var(--muted);margin:0;line-height:1.72;text-align:left;hyphens:none}
.method-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.method-groups article{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:27px}
.method-groups h3{margin-bottom:12px}
.method-groups p{color:var(--muted);margin:0;line-height:1.82;text-align:left;hyphens:none}
.background-cv-cta{margin-top:72px;padding:44px;border-radius:24px;background:var(--accent-dark);color:#fff;display:grid;grid-template-columns:1.2fr .8fr;gap:50px;align-items:center}
.background-cv-cta h2{font-size:clamp(2rem,3.4vw,3rem);margin-bottom:0}
.background-cv-cta .eyebrow{color:#bfe3e4}
.background-cv-cta .hero-actions{justify-content:flex-end;margin-top:0}
.background-cv-cta .btn.secondary{background:transparent;border-color:rgba(255,255,255,.35);color:#fff}
.background-preview .experience-list>div{align-items:center}
.redirect-page{min-height:100vh;display:grid;place-items:center;padding:70px 0}.redirect-page .container{max-width:760px;text-align:center}.redirect-page p:not(.eyebrow){color:var(--muted);font-size:1.1rem}

@media(max-width:980px){
  .background-overview{grid-template-columns:1fr;gap:48px}
  .background-profile{position:static;max-width:430px}
  .method-groups{grid-template-columns:1fr}
  .background-cv-cta{grid-template-columns:1fr;gap:28px}
  .background-cv-cta .hero-actions{justify-content:flex-start}
}
@media(max-width:760px){
  .integrated-journey:before{left:8px}
  .journey-chapter{grid-template-columns:1fr;gap:18px;padding-left:34px;padding-bottom:62px}
  .journey-rail{text-align:left;padding-right:0}
  .journey-period{position:static}
  .journey-dot{left:-34px;right:auto;top:2px}
  .journey-evidence-grid,.capability-grid{grid-template-columns:1fr}
  .journey-content h3{font-size:clamp(1.85rem,9vw,2.45rem)}
  .journey-summary{text-align:left;hyphens:none;font-size:1.1rem}
  .background-cv-cta{padding:30px}
}
@media(max-width:520px){
  .background-actions,.background-cv-cta .hero-actions{display:grid;grid-template-columns:1fr;width:100%}
  .background-actions .btn,.background-cv-cta .btn{width:100%}
  .capability-card{grid-template-columns:38px 1fr;padding:24px}
}


/* Version 7: concise navigation, integrated research, and stronger writing */
.site-nav a.nav-featured{font-weight:700;color:var(--accent);padding:8px 13px;border-radius:999px;background:color-mix(in srgb,var(--accent-soft) 65%,transparent)}
.site-nav a.nav-featured:hover,.site-nav a.nav-featured.active{background:var(--accent);color:#fff}
.site-nav a.nav-featured.active:after{display:none}
.research-topic-list{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0 5px}.research-topic-list span{border:1px solid rgba(255,255,255,.22);padding:7px 10px;border-radius:999px;color:#d4e5e5;font-size:.76rem}
.featured-writing-home{background:var(--bg)}
.learning-home-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.learning-home-grid>div:first-child>p:not(.eyebrow){color:var(--muted);font-size:1.08rem;max-width:680px}.learning-home-steps{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:11px;padding:34px;background:var(--surface);border:1px solid var(--line);border-radius:24px}.learning-home-steps span{font-family:var(--serif);font-weight:650}.learning-home-steps i{font-style:normal;color:var(--accent)}
.research-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.research-work-card{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:30px;display:flex;flex-direction:column;min-height:100%}.research-work-card h3{font-size:1.62rem;margin-bottom:15px}.research-work-meta{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:27px}.research-work-meta span{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;font-weight:750;color:var(--accent)}.research-work-lead{color:var(--muted);line-height:1.72}.research-work-card dl{display:grid;gap:0;margin:18px 0 25px}.research-work-card dl>div{padding:15px 0;border-top:1px solid var(--line)}.research-work-card dt{font-size:.71rem;text-transform:uppercase;letter-spacing:.1em;font-weight:750;color:var(--accent);margin-bottom:5px}.research-work-card dd{margin:0;color:var(--muted);line-height:1.62}.research-work-card .text-link{margin-top:auto}
.writing-hero{background:linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 42%,transparent),transparent)}
.footer-links a[href="/contact/"]{margin-top:5px;color:var(--accent)}
@media(max-width:1050px){.research-work-grid{grid-template-columns:1fr}.research-work-card{min-height:auto}.site-nav{gap:14px}.site-nav a{font-size:.84rem}}
@media(max-width:980px){.learning-home-grid{grid-template-columns:1fr;gap:38px}}
@media(max-width:760px){.site-nav a.nav-featured{padding:10px 14px}.learning-home-steps{justify-content:flex-start}.research-topic-list{margin-bottom:10px}}


/* Version 8: calmer editorial typography and consistent alignment */
:root{
  --max:1120px;
  --reading:720px;
  --serif:'Newsreader',Georgia,'Times New Roman',serif;
}
body{
  font-size:16px;
  line-height:1.7;
  letter-spacing:0;
  text-rendering:optimizeLegibility;
}
.container{width:min(calc(100% - 48px),var(--max))}
.narrow{max-width:960px}
.section-pad{padding:88px 0}

h1,h2,h3{
  font-family:var(--serif);
  font-weight:600;
  line-height:1.16;
  letter-spacing:-.025em;
  text-wrap:balance;
}
h1{font-size:clamp(2.75rem,4.5vw,4.35rem)}
h2{font-size:clamp(1.85rem,3vw,2.7rem)}
h3{font-size:1.32rem;line-height:1.28}

.hero{padding-top:64px}
.hero-copy h1{font-size:clamp(3rem,4.9vw,4.7rem);margin-bottom:18px}
.role-line{font-size:clamp(1.25rem,2vw,1.48rem);line-height:1.45;margin-top:-5px}
.hero-lead{font-size:1.13rem;line-height:1.72;max-width:700px}
.hero-grid{gap:62px}

.page-hero{padding:72px 0 54px}
.page-hero .narrow{max-width:960px}
.page-hero h1{font-size:clamp(2.45rem,3.9vw,3.75rem);max-width:900px;margin-bottom:20px}
.page-lead{font-size:1.1rem;line-height:1.7;max-width:740px}

.section-heading{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);
  gap:58px;
  align-items:start;
  margin-bottom:42px;
}
.section-heading>div{max-width:720px}
.section-heading>p{max-width:390px;padding-top:4px;line-height:1.68}
.split-heading{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:72px}
.split-heading>div:first-child{position:static}

/* Left alignment produces more even web typography than full justification. */
.page-lead,.hero-lead,
.prose p,.long-prose p,.career-content p:not(.kicker),.research-streams p,
.project-summary,.project-columns p,.mini-projects p,.area-card p,.topic-card p,.project-card p,
.writing-intro-grid p,.contact-card p,.cv-profile,.cv-note,.cv-skill-groups p,
.featured-writing-copy>p,.latest-writing-card>p,.article-body p,.article-body li,
.article-end p:not(.eyebrow),.journey-summary{
  text-align:left!important;
  text-justify:auto!important;
  hyphens:none!important;
}
.prose p,.long-prose p,.article-body p,.article-body li{max-width:72ch}
.intro-prose{font-size:1.04rem}
.long-prose p{font-size:1.02rem;line-height:1.78}
.prose blockquote{font-size:1.25rem;line-height:1.55}

.area-card,.topic-card,.project-card,.research-work-card,.capability-card,
.journey-evidence,.cv-skill-groups>div{padding:26px;border-radius:18px}
.area-card h3,.topic-card h3,.project-card h3,.research-work-card h3{line-height:1.3}
.card-number{margin-bottom:24px}

.journey-content h3{font-size:clamp(1.75rem,2.8vw,2.35rem);margin-bottom:18px}
.journey-summary{font-size:1.12rem;line-height:1.72;max-width:760px}
.journey-chapter{gap:48px;padding-bottom:68px}
.journey-evidence strong{font-size:1.16rem}
.background-cv-cta h2{font-size:clamp(1.8rem,2.8vw,2.45rem)}

.featured-writing-copy h2{font-size:clamp(2rem,3.2vw,3rem);line-height:1.18}
.latest-writing-grid h2{font-size:clamp(1.95rem,3vw,2.8rem)}
.featured-deck{font-size:1.2rem!important}

.article-hero{padding:72px 0 58px}
.article-title-wrap{max-width:960px}
.article-hero h1{font-size:clamp(2.6rem,4.35vw,4.15rem);max-width:920px}
.article-hero .article-deck{font-size:clamp(1.18rem,1.8vw,1.48rem);max-width:780px}
.article-layout{grid-template-columns:210px minmax(0,var(--reading));gap:64px;padding-top:72px;padding-bottom:88px}
.article-body{font-size:1.04rem;line-height:1.82}
.article-body>p:first-child{font-size:1.2rem;line-height:1.68}
.article-body h2{font-size:clamp(1.72rem,2.6vw,2.25rem);line-height:1.22;margin-top:2.2em}
.article-body blockquote{font-size:1.36rem;line-height:1.55}

.cv-grid{grid-template-columns:210px minmax(0,1fr);gap:64px}
.cv-content{max-width:820px}
.cv-profile{font-size:1.16rem;line-height:1.65}
.cv-entry h2,.publication-entry h2{font-size:1.3rem;line-height:1.3}

.contact-cta .container{max-width:760px}
.site-footer{padding-top:52px}

@media(max-width:980px){
  .section-heading{grid-template-columns:1fr;gap:16px}
  .section-heading>p{max-width:720px;padding-top:0}
  .split-heading{grid-template-columns:1fr;gap:28px}
  .article-layout,.cv-grid{grid-template-columns:1fr;gap:38px}
}
@media(max-width:680px){
  .container{width:min(calc(100% - 30px),var(--max))}
  .section-pad{padding:68px 0}
  .page-hero{padding:58px 0 44px}
  .page-hero h1{font-size:clamp(2.15rem,10vw,3rem)}
  .hero-copy h1{font-size:clamp(2.75rem,14vw,3.9rem)}
  h2{font-size:clamp(1.7rem,8vw,2.3rem)}
  .article-hero{padding:58px 0 46px}
  .article-hero h1{font-size:clamp(2.25rem,10.5vw,3.25rem)}
  .journey-content h3{font-size:1.72rem}
}
