@font-face{font-family:"Rakuten Sans";src:local("Rakuten Sans Regular"),url("assets/fonts/rakuten-sans-regular.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Rakuten Sans";src:local("Rakuten Sans Bold"),url("assets/fonts/rakuten-sans-bold.woff2") format("woff2");font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:"Rakuten Serif";src:local("Rakuten Serif Regular"),url("assets/fonts/rakuten-serif-regular.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Rakuten Serif";src:local("Rakuten Serif Bold"),url("assets/fonts/rakuten-serif-bold.woff2") format("woff2");font-style:normal;font-weight:700;font-display:swap}
:root{color-scheme:light;--panel-max-width:860px;--paper:#e7e6dd;--ink:#282923;--muted:#65665d;--line:#9b9d90;--sans:"Rakuten Sans","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--serif:"Rakuten Serif","Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif}
*{box-sizing:border-box}
body{margin:0;min-height:100svh;padding:38px;background:#d6d6cc;color:var(--ink);font-family:var(--serif);-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:5;opacity:.105;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' filter='url(%23n)' opacity='.5' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}
button,a,summary{-webkit-tap-highlight-color:transparent}
button,a,summary.ink-focus{outline-offset:6px}
.ink-focus{outline:2px solid var(--ink);outline-offset:5px}
.display{width:100%;max-width:var(--panel-max-width);margin:0 auto;border:1px solid var(--ink);background:var(--paper);display:flex;flex-direction:column}
.status-bar{height:49px;padding:0 30px;border-bottom:1px solid var(--ink);display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:1.8px}
main{padding:0 46px;flex:none;display:flex;flex-direction:column}
.intro{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;padding:60px 0 54px;gap:36px}
h1{font-family:var(--serif);font-weight:400;letter-spacing:-9px;font-size:clamp(98px,13vw,170px);line-height:1;margin:0}.name-period{font-size:.66em}
.intro-copy{border-left:1px solid var(--line);padding:8px 0 8px 34px}.eyebrow{font-size:10px;letter-spacing:1.8px;margin:0 0 18px;color:var(--muted)}.role{font-size:22px;margin:0 0 16px;letter-spacing:-.5px}.bio{font-size:14px;line-height:1.8;margin:0}
.contact-links{margin-top:28px;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--ink)}.contact-links a{color:inherit;text-decoration:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:24px 23px;font-size:16px}.contact-links a+a{border-left:1px solid var(--line)}.contact-links a.ink-hover,.contact-links a.ink-focus{background:var(--ink);color:var(--paper)}.contact-links a.ink-focus{outline-offset:3px}.contact-links a svg{width:22px;height:22px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.3}
.work-section{--experience-inset:23px;margin-top:0;border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:15px;cursor:pointer;padding:24px var(--experience-inset)}summary::-webkit-details-marker{display:none}.experience-title{font-family:var(--serif);font-size:35px;display:flex;align-items:center;gap:17px;letter-spacing:-.9px}.record-count{font:11px var(--sans);border:1px solid var(--line);padding:3px 5px;letter-spacing:0}.expand-label{display:flex;gap:22px;align-items:center;font-size:10px;letter-spacing:1.3px}.plus{width:15px;height:15px;position:relative}.plus::before,.plus::after{content:"";position:absolute;background:currentColor;top:7px;left:0;width:15px;height:1px}.plus::after{transform:rotate(90deg)}details[open] .plus::after{display:none}.open-label{display:none}details[open] .open-label{display:inline}details[open] .closed-label{display:none}summary.ink-hover,summary.ink-focus{background:var(--ink);color:var(--paper)}summary:is(.ink-hover,.ink-focus) .record-count{border-color:currentColor}
.table-head,.jobs li{display:grid;grid-template-columns:1fr 1.05fr 1.2fr;gap:20px}.table-head{font-size:10px;letter-spacing:1.5px;color:var(--muted);border-bottom:1px dashed var(--line);padding:2px 0 15px}.jobs{padding:0;margin:0;list-style:none}.jobs li{padding:21px 0;border-bottom:1px solid #bfc0b4;font-size:13px;align-items:baseline}.jobs li:last-child{border-bottom:0}.jobs h2,.jobs p{font:inherit;margin:0}.jobs h2{font-weight:400}.job-date{font-family:var(--serif);font-size:12px;color:var(--muted)}.sample-label{color:var(--muted);font-size:10px;margin:8px 0 23px}
.page-end{display:flex;justify-content:space-between;align-items:center;margin-top:0;padding:46px 0 28px;font-size:9px;letter-spacing:1.4px;color:var(--muted);gap:16px}.ink-scale{display:flex;gap:5px}.ink-scale i{height:9px;width:9px;background:var(--ink);border:1px solid var(--ink)}.ink-scale i:nth-child(2){background:#77796c}.ink-scale i:nth-child(3){background:#b5b6a8}.ink-scale i:nth-child(4){background:transparent}
.quote-bar{display:flex;align-items:stretch;border-top:1px solid var(--ink);min-height:94px}.quote-display{position:relative;flex:1;min-width:0;overflow:hidden}.quote-content{display:flex;gap:19px;align-items:center;min-height:94px;padding:17px 30px}.quote-mark{font-family:var(--serif);font-size:45px;line-height:1;align-self:center;padding-top:8px}.quote-content p{margin:0;font-family:var(--serif);font-size:19px;line-height:1.4}.quote-content .quote-caption{font:9px var(--sans);letter-spacing:1.2px;margin-top:8px;color:var(--muted)}.quote-caption>span:first-child{padding:0 7px}.quote-controls{display:flex;align-items:center;padding:0 20px;gap:6px}.quote-controls button{display:grid;place-items:center;width:40px;height:40px;background:none;color:var(--ink);border:0;position:relative;cursor:pointer}.quote-controls svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.3}.quote-controls .play-icon{display:none}#pause-quotes[aria-pressed="true"] .pause-icon{display:none}#pause-quotes[aria-pressed="true"] .play-icon{display:block}
@media(min-width:1500px){body{padding-top:60px}.intro{padding-top:75px;padding-bottom:70px}}
@media(max-width:800px){body{padding:20px}main{padding:0 27px}.intro{gap:20px;padding:47px 0}h1{font-size:110px;letter-spacing:-6px}.intro-copy{padding-left:23px}.role{font-size:18px}.bio{font-size:12px}.desktop-break{display:none}.contact-links a{font-size:13px;padding:20px 14px}.experience-title{font-size:30px}.status-bar{padding:0 25px}}
@media(max-width:560px){body{padding:12px}.status-bar{height:41px;padding:0 20px;font-size:9px}main{padding:0 21px}.intro{grid-template-columns:1fr;gap:26px;padding:37px 0 33px}h1{font-size:112px;letter-spacing:-6px}.intro-copy{border-left:0;padding:0}.eyebrow{font-size:9px;margin-bottom:12px}.role{font-size:19px;margin-bottom:10px}.bio{font-size:12px}.contact-links{grid-template-columns:repeat(2,1fr)}.contact-links a{font-size:13px;padding:18px}.contact-links a:nth-child(3){border-left:0}.contact-links a:nth-child(n+3){border-top:1px solid var(--line)}.work-section{--experience-inset:18px;margin-top:0}.experience-title{font-size:29px;gap:12px}.expand-label{gap:12px;font-size:8px}summary{padding:18px var(--experience-inset)}.table-head{display:none}.jobs li{grid-template-columns:1fr auto;gap:8px 12px;padding:19px 0}.job-date{grid-column:2;grid-row:1;font-size:10px}.jobs h2{grid-column:1;grid-row:1}.jobs p{grid-column:1/-1;color:var(--muted);font-size:12px}.page-end{font-size:7px;letter-spacing:1px;padding:38px 0 23px}.quote-bar{min-height:0;flex-direction:column}.quote-display{flex:none}.quote-content{padding:14px 15px 6px;gap:10px;min-height:0}.quote-mark{font-size:31px}.quote-content p{font-size:16px}.quote-content .quote-caption{font-size:7px;letter-spacing:.6px}.quote-controls{padding:0 15px 8px;gap:6px;flex-direction:row;justify-content:flex-end}.quote-controls button{width:32px;height:32px}.ghost-text{left:38px;font-size:16px;top:25px}}




:root{--surround:#d6d6cc;--job-line:#bfc0b4}
:root[data-theme="night"]{color-scheme:dark;--paper:#282b27;--ink:#e3e4d9;--muted:#b1b6a7;--line:#777e6f;--surround:#1c1f1b;--job-line:#565e50}
body{background:var(--surround)}
.profile-filename{letter-spacing:1.2px;text-transform:none}
#clock{font-variant-numeric:tabular-nums;letter-spacing:1px;white-space:nowrap;min-width:8ch;text-align:right}
.page-end{align-items:flex-end;padding-top:40px;gap:24px}
.currently-reading p{margin:0}
.reading-label{font-size:8px;letter-spacing:1.5px;margin-bottom:10px!important}
.book-title{font-family:var(--serif);font-size:17px;letter-spacing:0;line-height:1.4;color:var(--ink)}
.book-author{font-size:10px;letter-spacing:.1px;line-height:1.6;margin-top:4px!important}
.ink-scale{gap:5px;flex-shrink:0;align-items:center;align-self:flex-end}
.ink-scale button{width:29px;height:32px;border:0;background:none;padding:7px;position:relative;color:var(--ink);cursor:pointer}
.ink-scale button span{display:block;width:15px;height:15px;background:#282b27;border:1px solid var(--ink)}
.ink-scale button[data-theme-choice="paper"] span{background:#cccdbd}
.ink-scale button[aria-pressed="true"]::after,.quote-controls button[aria-pressed="true"]::after,.quote-controls button.ink-clicked::after{content:"";position:absolute;bottom:0;left:7px;right:7px;border-bottom:2px solid var(--ink)}
.ink-scale button.ink-hover,.quote-controls button.ink-hover{background:var(--line)}
.jobs li{border-color:var(--job-line)}
.ink-film{position:fixed;z-index:10000;pointer-events:none;contain:strict;background:#000;opacity:1}
.ink-film[data-phase="paper"]{background:var(--paper);opacity:1}
.ink-film[data-phase="residual"]{background:#000;opacity:.14}
.ink-film[data-phase="settled"]{background:#000;opacity:.035}
@media(max-width:560px){.page-end{align-items:flex-start;flex-direction:column;gap:15px;padding-top:32px}.book-title{font-size:16px}.book-author{font-size:9px}.ink-scale{align-self:flex-end}.quote-content .quote-caption{font-size:7px}}


.display-settings{display:flex;gap:17px;align-items:center;flex-shrink:0}
#ink-effects{font:8px var(--sans);letter-spacing:.9px;color:var(--muted);background:none;border:0;padding:9px 5px;cursor:pointer;white-space:nowrap}
#ink-effects span{color:var(--ink);border-bottom:1px solid var(--line);margin-left:3px}
#ink-effects.ink-hover{background:var(--line);color:var(--ink)}
@media(max-width:700px){.page-end{flex-wrap:wrap}.display-settings{margin-left:auto}}
@media(max-width:560px){.display-settings{align-self:flex-end}}


.status-bar,.eyebrow,.expand-label,.table-head,.sample-label,.reading-label,.book-author{font-family:var(--sans)}
.status-bar{font-size:12px;letter-spacing:1.2px}
#clock{letter-spacing:.4px}
h1{letter-spacing:-.055em;display:flex;flex-direction:column;align-items:flex-start;width:max-content;max-width:100%}
h1 .surname{display:block;align-self:flex-start;font-size:clamp(36px,4.5vw,56px);line-height:1.1;letter-spacing:.045em;margin-top:8px}
@media(max-width:560px){h1 .surname{font-size:38px;margin-top:6px}.status-bar{font-size:11px}}


html:where([data-theme="night"]) body::before{display:none}
html:where([data-theme="night"]) .display{position:relative;isolation:isolate}
html:where([data-theme="night"]) .display::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  opacity:.09;mix-blend-mode:screen;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E");
}
html:where([data-theme="night"]) .display>*{position:relative;z-index:1}
.status-bar{display:grid;grid-template-columns:1fr auto 1fr;gap:12px}
.profile-filename{justify-self:start}
.display-label{justify-self:center;font-size:9px;letter-spacing:1.3px;color:var(--muted);white-space:nowrap}
#clock{justify-self:end}
@media(max-width:560px){.status-bar{gap:8px;padding-inline:16px}.display-label{font-size:8px;letter-spacing:.6px}}





.display{overflow-anchor:none}
.ink-film[data-mode="partial"][data-phase="transfer"]{background:var(--refresh-ink);mix-blend-mode:normal;opacity:.72}
.ink-film[data-mode="partial"][data-phase="residual"]{background:var(--refresh-ink);opacity:.18}
.ink-film[data-mode="partial"][data-phase="settled"]{background:var(--refresh-ink);opacity:.035}
.ink-film[data-mode="local"][data-phase="invert"]{background:#000;mix-blend-mode:normal;opacity:1}
.ink-film[data-mode="local"][data-phase="clear"]{background:#fff;mix-blend-mode:normal;opacity:1}
.ink-film[data-mode="local"][data-phase="settled"]{background:none;mix-blend-mode:normal;opacity:0}
:root{--refresh-ink:#000}
:root[data-theme="night"]{--refresh-ink:#fff}
.ink-film[data-mode="full"][data-phase="clear"]{background:#000}
.ink-film[data-mode="full"][data-phase="paper"]{background:#fff}



.experience-content{padding:16px var(--experience-inset) 8px}

@media(max-width:360px){.experience-title{font-size:25px;gap:8px}.expand-label{gap:8px}}
