:root{--paper:#f6f4ee;--ink:#222722;--muted:#6b716a;--line:#d9d8d0;--green:#43685d;--sand:#e8e2d5;--max:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Assistant","DM Sans",sans-serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.wrap,.topbar{width:min(var(--max),calc(100% - 72px));margin-inline:auto}.topbar{height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;gap:10px;font:600 18px "Frank Ruhl Libre",serif}.mark{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--green);border-radius:50%;color:var(--green);font:500 18px "Frank Ruhl Libre",serif}.topbar nav{display:flex;align-items:center;gap:24px;color:#555c55;font-size:14px}.topbar nav a:hover,.footer a:hover{color:var(--green)}.language-toggle{border:1px solid var(--line);background:transparent;padding:6px 12px;border-radius:30px;color:var(--green);font:600 12px "DM Sans",sans-serif;cursor:pointer}.hero{min-height:590px;padding-block:80px 70px;display:grid;grid-template-columns:1.05fr .85fr;align-items:center;gap:9%;position:relative}.hero-copy{max-width:610px}.overline,.section-label{color:var(--green);font:600 11px "DM Sans","Assistant",sans-serif;letter-spacing:.09em}.overline{margin:0 0 21px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:"Frank Ruhl Libre",serif;font-weight:500;letter-spacing:-.025em}h1{font-size:clamp(54px,6.7vw,83px);line-height:1.08;margin:0 0 22px;max-width:650px}.hero-bio{font-size:20px;color:#4e554e;line-height:1.75;max-width:560px;margin-bottom:12px}.hero-topics{font-size:17px;color:var(--muted);line-height:1.8;max-width:560px;margin-bottom:24px}.text-link{display:inline-flex;gap:15px;align-items:center;border-bottom:1px solid var(--green);padding-bottom:5px;color:var(--green);font-weight:600;font-size:15px}.portrait-wrap{justify-self:center;width:min(100%,390px);position:relative;padding:18px 18px 42px;background:#eeece5;border:1px solid #e5e2d9}.portrait-frame{height:380px;overflow:hidden;background:#e8e2d5}.portrait-frame img{width:100%;height:100%;object-fit:cover;display:block}.portrait-caption{position:absolute;bottom:11px;right:20px;color:#6e756d;font-size:12px}.section-label{display:flex;gap:15px;align-items:center}.section-label span:first-child{opacity:.52}.writing,.serial,.reflections,.research,.podcast,.contact{border-top:1px solid var(--line);padding-top:72px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin:34px 0 27px}.section-heading h2,.research-heading h2,.podcast h2,.contact h2,.serial h2{font-size:clamp(38px,4.5vw,58px);line-height:1.17;margin:0}.section-heading h2{max-width:610px}.section-heading p{max-width:350px;margin:0 0 5px;color:var(--muted)}.filters{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 25px}.filter{background:transparent;border:1px solid var(--line);border-radius:99px;padding:7px 14px;font:500 13px "Assistant",sans-serif;color:#636a62;cursor:pointer}.filter.active,.filter:hover{background:var(--green);border-color:var(--green);color:white}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:96px}.article-card{min-height:250px;padding:22px 24px 25px;background:#eeece5;border:1px solid #e5e2d9;display:flex;flex-direction:column;align-items:flex-start}.article-meta{width:100%;display:flex;justify-content:space-between;font:500 10px "DM Sans",sans-serif;letter-spacing:.06em;color:var(--green);margin-bottom:25px}.article-card h3{font:500 26px/1.25 "Frank Ruhl Libre",serif;margin:0 0 12px}.article-card p{color:#666d65;font-size:15px;line-height:1.65;margin-bottom:16px}.card-link{margin-top:auto;color:var(--green);font-weight:600;font-size:13px;border-bottom:1px solid #9caca2}.serial{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;padding-block:80px 90px}.serial-art{background:#eeece5;border:1px solid #e5e2d9;padding:20px}.serial-art img{display:block;width:100%}.serial-copy .section-label{margin-bottom:30px}.serial-overline{margin-bottom:15px}.serial h2{margin-bottom:18px}.serial-intro{font-size:17px;color:#5e655e;line-height:1.8;margin-bottom:24px}.story-list{border-top:1px solid var(--line)}.story-item{display:grid;grid-template-columns:35px 1fr 18px;gap:14px;align-items:start;padding:15px 0;border-bottom:1px solid var(--line)}.story-item>span:first-child{color:var(--green);font:500 12px "DM Sans",sans-serif;padding-top:4px}.story-item b{display:block;font:500 21px "Frank Ruhl Libre",serif}.story-item small{display:block;color:var(--muted);font-size:13px;margin-top:4px}.story-item i{color:var(--green);font-style:normal}.empty-note{padding:17px 18px;background:#eeece5;border:1px solid #e5e2d9;color:#666d65;font-size:14px}.reflections{padding-bottom:96px}.reflection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:35px}.reflection-card{position:relative;min-height:220px;padding:22px 24px;background:#ebe7dc;border:1px solid #e2ded3;overflow:hidden}.reflection-number{color:var(--green);font:500 11px "DM Sans",sans-serif}.reflection-card h3{font:500 27px "Frank Ruhl Libre",serif;margin:22px 0 8px}.reflection-card p{color:#666d65;font-size:15px;max-width:300px}.reflection-mark{position:absolute;bottom:-34px;left:18px;font-size:108px;color:#d9d3c5;line-height:1}.research{display:grid;grid-template-columns:.7fr 1.3fr;gap:9%;padding-bottom:95px}.research-heading h2{margin:32px 0 13px}.research-heading p,.podcast-top>p{color:var(--muted);max-width:410px}.publication-list{border-top:1px solid var(--line)}.publication{display:grid;grid-template-columns:55px 1fr 25px;gap:15px;align-items:start;padding:21px 0;border-bottom:1px solid var(--line)}.pub-year{color:var(--green);font:500 12px "DM Sans",sans-serif;padding-top:5px}.pub-main h3{font:600 16px/1.4 "DM Sans",sans-serif;margin:0 0 5px}.pub-main p{font-size:13px;color:var(--muted);margin:0}.publication>a{color:var(--green);font-size:19px}.podcast{padding-bottom:90px}.podcast-top{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:31px}.podcast-top h2{margin-top:30px}.podcast-top>p{margin:0 0 7px}.episode{display:grid;grid-template-columns:120px 1fr auto;gap:20px;align-items:center;padding:20px 0;border-top:1px solid var(--line)}.episode:last-child{border-bottom:1px solid var(--line)}.episode-date{font:500 12px "DM Sans",sans-serif;color:var(--green)}.episode h3{font:500 23px "Frank Ruhl Libre",serif;margin:0 0 3px}.episode p{margin:0;color:var(--muted);font-size:14px}.episode>a{font-size:13px;color:var(--green);font-weight:600}.contact{padding-bottom:76px}.contact-row{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:31px 0 0}.contact h2{font-size:clamp(35px,4vw,52px)}.contact-links{display:flex;gap:23px}.contact-links a{font-size:14px;color:var(--green);border-bottom:1px solid #9caca2;padding-bottom:3px}.footer{border-top:1px solid var(--line);height:74px;display:flex;justify-content:space-between;align-items:center;color:#777d75;font-size:12px}.footer a{color:var(--green)}
html[dir="ltr"] body{font-family:"DM Sans",sans-serif}html[dir="ltr"] .wordmark{font-family:"DM Sans",sans-serif;font-size:15px}html[dir="ltr"] .article-card h3,html[dir="ltr"] .episode h3,html[dir="ltr"] .story-item b{font-family:"Frank Ruhl Libre",serif}
@media(max-width:850px){.wrap,.topbar{width:calc(100% - 44px)}.topbar nav{gap:15px;font-size:12px}.hero{min-height:auto;padding-block:64px 70px;grid-template-columns:1fr 300px;gap:25px}.portrait-frame{height:320px}.hero-bio{font-size:18px}.hero-topics{font-size:15px}.writing,.serial,.reflections,.research,.podcast,.contact{padding-top:58px}.section-heading,.podcast-top{display:block}.section-heading p,.podcast-top>p{margin-top:18px}.article-grid,.reflection-grid{grid-template-columns:1fr 1fr}.serial{grid-template-columns:1fr;gap:35px}.serial-art{max-width:600px}.research{grid-template-columns:1fr;gap:24px;padding-bottom:75px}}
@media(max-width:560px){.wrap,.topbar{width:calc(100% - 34px)}.topbar{height:70px}.topbar nav{gap:10px}.topbar nav a{font-size:10px}.wordmark{font-size:16px}.language-toggle{padding:5px 9px;font-size:10px}.hero{padding-top:55px;grid-template-columns:1fr;gap:30px}.hero-copy{order:1}.portrait-wrap{order:2;width:min(85%,330px);justify-self:center}.portrait-frame{height:310px}h1{font-size:54px}.hero-bio{font-size:17px}.hero-topics{font-size:15px}.section-heading h2,.research-heading h2,.podcast h2,.contact h2,.serial h2{font-size:42px}.article-grid,.reflection-grid{grid-template-columns:1fr}.article-card{min-height:210px}.reflection-card{min-height:190px}.publication{grid-template-columns:42px 1fr 18px;gap:9px}.pub-main h3{font-size:14px}.episode{grid-template-columns:1fr auto;gap:9px}.episode-date{grid-column:1/-1}.episode>a{grid-column:2;grid-row:2}.contact-row{display:block}.contact-links{margin-top:23px;flex-wrap:wrap}.footer{height:auto;min-height:74px;gap:8px;flex-wrap:wrap;padding:18px 0}.footer span:nth-child(2){flex-basis:100%;order:3}}

/* Serial story chapters */
.story-chapter{border-bottom:1px solid var(--line)}.story-chapter .story-item{list-style:none;cursor:pointer}.story-chapter .story-item::-webkit-details-marker{display:none}.story-chapter .story-item i{font-size:12px;white-space:nowrap}.story-body{max-width:780px;padding:10px 48px 28px;color:#454c45}.story-body p{font-size:17px;line-height:1.9;margin:0 0 17px}.story-body .previous-summary{padding:12px 15px;background:#eeece5;color:#626960;font-size:15px}@media(max-width:560px){.story-body{padding:8px 14px 22px}.story-body p{font-size:16px}}

/* Chapter cards and illustrations */
.story-chapter{border-bottom:1px solid var(--line)}.story-chapter .story-item{display:grid;grid-template-columns:38px 150px minmax(0,1fr) auto;align-items:center;list-style:none;cursor:pointer}.story-chapter .story-item::-webkit-details-marker{display:none}.chapter-number{color:var(--green);font:500 12px "DM Sans",sans-serif}.chapter-thumb{display:block;width:150px;aspect-ratio:3/2;object-fit:cover;border:1px solid #e5e2d9}.chapter-info{min-width:0}.chapter-info b{display:block;font:500 21px "Frank Ruhl Libre",serif}.chapter-info small{display:block;color:var(--muted);font-size:13px;margin-top:4px}.story-chapter .story-item i{font-size:12px;white-space:nowrap}.story-body{max-width:780px;padding:10px 48px 28px;color:#454c45}.story-body p{font-size:17px;line-height:1.9;margin:0 0 17px}.story-body .previous-summary{padding:12px 15px;background:#eeece5;color:#626960;font-size:15px}.story-body blockquote{margin:0 0 18px;padding:14px 20px;border-right:3px solid var(--green);background:#eeece5;font:500 19px/1.8 "Frank Ruhl Libre",serif}.chapter-info{font-weight:400}html[dir="ltr"] .chapter-info b{font-family:"Frank Ruhl Libre",serif}@media(max-width:680px){.story-chapter .story-item{grid-template-columns:25px 92px minmax(0,1fr);gap:10px}.chapter-thumb{width:92px}.story-chapter .story-item i{grid-column:3;justify-self:start;margin-top:4px}.chapter-info b{font-size:18px}.chapter-info small{font-size:12px}.story-body{padding:8px 14px 22px}.story-body p{font-size:16px}}

/* Visual polish and explicit bidirectional text handling */
.portrait-wrap{border-radius:8px;box-shadow:10px 10px 0 rgba(67,104,93,.10)}.portrait-frame{height:auto;aspect-ratio:1/1;border-radius:5px}.portrait-frame img{object-position:center 45%}.topbar nav a{white-space:nowrap}.article-card{border-radius:5px;transition:transform .18s ease,box-shadow .18s ease}.article-card:hover{transform:translateY(-3px);box-shadow:0 8px 22px rgba(34,39,34,.07)}.chapter-thumb{border-radius:4px}.story-body{unicode-bidi:plaintext}.pub-main h3,.pub-main p{unicode-bidi:plaintext}.hero-copy,.section-heading,.research-heading,.podcast-top,.contact-row{text-align:start}@media(max-width:560px){.topbar{gap:8px}.topbar nav{flex:1;justify-content:center;flex-wrap:wrap;row-gap:1px}.portrait-frame{height:auto;aspect-ratio:1/1}}
.story-body .featured-paragraph{margin:0 0 18px;padding:14px 20px;border-right:3px solid var(--green);background:#eeece5;font:500 19px/1.8 "Frank Ruhl Libre",serif}
html[dir="ltr"] .story-body .featured-paragraph{border-right:0;border-left:3px solid var(--green)}
html[dir="ltr"] .story-body blockquote{border-right:0;border-left:3px solid var(--green)}

/* Research cards */
.research{display:block;padding:76px 0 96px}
.research-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin:0 0 32px}
.research-headline .section-label{margin-bottom:22px}
.research-heading h2{margin:0}
.research-heading>p{max-width:430px;margin:0 0 7px;color:var(--muted)}
.publication-list{display:grid;grid-template-columns:1fr;gap:13px;border:0}
.publication-card{min-width:0;overflow:hidden;background:#eeece5;border:1px solid #e5e2d9;border-radius:7px;display:grid;grid-template-columns:240px minmax(0,1fr);align-items:stretch;transition:transform .18s ease,box-shadow .18s ease}
.publication-card:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(34,39,34,.08)}
.publication-image{display:block;width:240px;height:160px;align-self:center;object-fit:cover;background:#202a34}
.publication-content{display:flex;flex:1;flex-direction:column;padding:22px 24px 24px}
.publication-meta{display:flex;justify-content:space-between;gap:14px;color:var(--green);font:600 11px "DM Sans",sans-serif;letter-spacing:.04em;margin:0 0 15px}
.publication-card h3{font:600 19px/1.45 "DM Sans",sans-serif;margin:0 0 8px;unicode-bidi:plaintext}
.publication-byline{font:600 13px/1.5 "DM Sans","Assistant",sans-serif;color:#59625a;margin:0 0 16px;unicode-bidi:plaintext}
.explanation-link{align-self:flex-start;margin-top:10px;padding-bottom:3px;border-bottom:1px solid #9caca2;color:var(--green);font-size:13px;font-weight:600}
.publication-link{align-self:flex-start;margin-top:19px;padding-bottom:3px;border-bottom:1px solid #9caca2;color:var(--green);font-size:13px;font-weight:600}
@media(max-width:760px){.research-heading{display:block}.research-heading>p{margin-top:18px}.publication-list{grid-template-columns:1fr}}
@media(max-width:680px){.publication-card{grid-template-columns:1fr}.publication-image{width:100%;height:190px;align-self:stretch;object-fit:cover}}
@media(max-width:560px){.research{padding:60px 0 72px}.publication-content{padding:19px}.publication-card h3{font-size:17px}.publication-image{height:180px}}

/* Contact form */
.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:8%;padding:76px 0 84px}
.contact-copy .section-label{margin-bottom:24px}
.contact-copy h2{margin:0 0 14px}
.contact-note{font-size:18px;color:#59625a;margin:0 0 23px}
.contact-linkedin{display:inline-flex;align-items:center;color:var(--green);font-size:14px;border-bottom:1px solid #9caca2;padding-bottom:3px}
.contact-form{display:grid;grid-template-columns:1fr;gap:8px}
.contact-form label{font-size:13px;font-weight:600;color:#50584f;margin-top:5px}
.contact-form input:not([type="hidden"]):not(.contact-honeypot),.contact-form textarea{width:100%;border:1px solid #d9d8d0;border-radius:5px;background:#fbfaf6;color:var(--ink);padding:11px 13px;font:400 15px/1.5 "Assistant",sans-serif;direction:inherit}
.contact-form textarea{resize:vertical;min-height:130px}
.contact-form input:focus,.contact-form textarea:focus{outline:2px solid rgba(67,104,93,.24);border-color:var(--green)}
.contact-form button{justify-self:start;margin-top:8px;border:0;border-radius:5px;background:var(--green);color:white;padding:11px 21px;font:600 14px "Assistant",sans-serif;cursor:pointer}
.contact-form button:hover{background:#35554b}
.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;opacity:0}
html[dir="ltr"] .contact-form input,html[dir="ltr"] .contact-form textarea{font-family:"DM Sans",sans-serif}
@media(max-width:760px){.contact{grid-template-columns:1fr;gap:28px;padding:60px 0 70px}}

/* Simple-explanation placeholders */
.explanations-page{padding:72px 0 90px}
.explanations-page h1{font-size:clamp(40px,5vw,64px);margin:24px 0 12px}
.explanations-intro{color:var(--muted);margin-bottom:36px}
.explanation-list{border-top:1px solid var(--line)}
.explanation-entry{padding:23px 0;border-bottom:1px solid var(--line);scroll-margin-top:24px}
.explanation-entry>span{font:600 11px "DM Sans",sans-serif;letter-spacing:.04em;color:var(--green)}
.explanation-entry h2{font:600 18px/1.5 "DM Sans",sans-serif;letter-spacing:0;margin:8px 0}
.explanation-entry p{font-size:14px;color:var(--muted);margin:0}
.back-link{color:var(--green);font-size:14px;border-bottom:1px solid #9caca2;padding-bottom:3px}
.explanation-header-actions{display:flex;align-items:center;gap:18px}
.explanation-copy{max-width:820px;margin-top:18px}
.explanation-copy p{font-size:17px!important;line-height:1.9;color:#454c45!important;margin:0 0 16px!important}
.explanation-copy[dir="ltr"]{font-family:"DM Sans",sans-serif}
html[dir="ltr"] .explanation-entry h2{font-family:"DM Sans",sans-serif}
html[dir="ltr"] .section-label,html[dir="ltr"] .explanations-intro,html[dir="ltr"] .explanation-entry{text-align:left}
@media(max-width:560px){.explanation-header-actions{gap:12px}.explanation-header-actions .back-link{font-size:12px}.explanation-copy p{font-size:16px!important}}

/* X-ray beam passing through a crystal, used as the personal-site mark */
.mark svg{display:block;width:17px;height:17px;overflow:visible}
.mark svg path{fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
