/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.absolute{position:absolute}.fixed{position:fixed}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.rounded{border-radius:.25rem}}:root{--text:#333;--muted:#6f6f6f;--heading:#333;--link:#337ab7;--link-hover:#23527c;--border:#ddd;--soft-border:#eee;--page-background:#e5e9e1;--panel:#f4f4f4;--panel-border:#d8dbd5;--navbar:#303030;--surface:#fff;--surface-border:#e3e3e3;--surface-accent:#ccc;--footer:#313131;--footer-text:#999;--body-font:var(--font-manrope), "Helvetica Neue", Helvetica, Arial, sans-serif;--nav-font:var(--font-manrope), "Helvetica Neue", Helvetica, Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}body{background:var(--page-background);color:var(--text);font-family:var(--body-font);text-rendering:optimizelegibility;margin:0;padding-top:51px;font-size:16px;line-height:1.55}::selection{background:#d9edf7}a{color:var(--link);text-decoration:none}a:hover{color:var(--link-hover);text-decoration:underline}a:focus-visible{outline:2px solid var(--link);outline-offset:3px}p,h1,h2,h3{margin-top:0}.external-mark{margin-left:.18em;font-size:.78em;display:inline-block;transform:translateY(-.08em)}.navbar{background:var(--navbar);z-index:1000;border-bottom:1px solid #1f1f1f;min-height:51px;position:fixed;inset:0 0 auto}.navbar-inner{justify-content:space-between;align-items:stretch;max-width:1080px;min-height:50px;margin:0 auto;padding:0 15px;display:flex}.navbar-brand{color:#eee;font-family:var(--nav-font);align-items:center;padding-right:24px;font-size:17px;font-weight:700;display:flex}.navbar-brand span{color:#eee;margin-left:.35em;font-weight:500}.navbar-brand:hover{color:#fff;text-decoration:none}.navbar nav{align-items:stretch;display:flex}.navbar nav>a{color:#ddd;font-family:var(--nav-font);align-items:center;padding:0 15px;font-size:14px;font-weight:600;display:flex}.navbar nav>a:hover{color:#fff;background:#3b3b3b;text-decoration:none}.page-shell{background:var(--panel);border:1px solid var(--panel-border);border-radius:32px;grid-template-columns:245px minmax(0,1fr);gap:42px;max-width:1080px;margin:10px auto 48px;padding:52px 48px 68px;display:grid;box-shadow:0 2px 8px #0000000f}.sidebar{align-self:start;position:sticky;top:78px}.profile{text-align:center}.profile-photo{aspect-ratio:1;object-fit:cover;border:1px solid #ddd;border-radius:50%;width:62%;height:auto;margin:0 auto 18px;display:block}.profile-role{color:#555;max-width:220px;margin:0 auto 15px;font-size:15px;font-style:italic;line-height:1.45}.profile-links{flex-wrap:wrap;justify-content:center;gap:7px 13px;margin-bottom:30px;font-size:14px;display:flex}.section-nav{border-top:1px solid var(--soft-border);flex-direction:column;display:flex}.section-nav a{border-bottom:1px solid var(--soft-border);color:#555;border-right:3px solid #0000;padding:9px 13px;font-size:15px}.section-nav a:hover{background:var(--surface);color:#222;border-right-color:#ccc;text-decoration:none}.content{min-width:0}.content-section{margin-bottom:36px;padding-bottom:20px}.content-section:last-child{margin-bottom:0}.content-section>h2{border-left:3px solid var(--heading);color:var(--heading);font-family:var(--nav-font);letter-spacing:-.01em;margin:0 0 21px;padding-left:12px;font-size:25px;font-weight:600;line-height:1.2}.lead{color:#454545;font-size:19px;line-height:1.58}.about-highlight{color:var(--heading);margin-bottom:0;font-weight:600}.about-details{margin-top:26px}.content-section>p:last-child{margin-bottom:0}.focus-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.focus-grid article{background:var(--surface);border:1px solid var(--surface-border);border-left:4px solid var(--surface-accent);border-radius:5px;padding:19px;box-shadow:inset 0 1px 1px #0000000d}.focus-grid h3,.work-item h3,.career-item h3,.subheading{color:var(--heading);font-family:var(--nav-font);font-weight:600}.focus-grid h3{margin-bottom:10px;font-size:17px}.focus-grid p{color:#555;margin:0;font-size:15px}.work-list,.career-list{gap:12px;display:grid}.work-item,.career-item{background:var(--surface);border:1px solid var(--surface-border);border-left:4px solid var(--surface-accent);border-radius:5px;grid-template-columns:74px minmax(0,1fr);gap:20px;padding:20px;display:grid;box-shadow:inset 0 1px 1px #0000000d}.work-year,.career-period{border:1px solid var(--border);color:#777;font-family:var(--nav-font);letter-spacing:.02em;text-align:center;background:#fff;border-radius:999px;align-self:start;width:fit-content;padding:5px 9px;font-size:13px;font-weight:600}.work-item h3,.career-item h3{margin-bottom:4px;font-size:18px}.work-item p,.career-item p{margin-bottom:8px}.item-meta{color:#777;font-size:14px}.source-link{font-size:14px;font-weight:600}.section-intro{color:#555}.publication-list{counter-reset:publication;gap:10px;margin:18px 0 0;padding:0;list-style:none;display:grid}.publication-list li{background:var(--surface);border:1px solid var(--surface-border);border-left:4px solid var(--surface-accent);counter-increment:publication;border-radius:5px;grid-template-columns:30px minmax(0,1fr);gap:12px;padding:16px 18px;display:grid;box-shadow:inset 0 1px 1px #0000000d}.publication-list li:before{border:1px solid var(--border);color:#777;content:counter(publication) ".";font-family:var(--nav-font);background:#fff;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:13px;display:flex}.publication-list a{font-size:16px;font-weight:600}.publication-list p{color:#777;margin:4px 0 0;font-size:14px}.career-item{grid-template-columns:120px minmax(0,1fr)}.career-period{white-space:nowrap}.subheading{margin-bottom:12px;font-size:18px}.talks-heading{margin-top:30px}.plain-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.plain-list li{background:var(--surface);border:1px solid var(--surface-border);border-left:4px solid var(--surface-accent);border-radius:5px;padding:16px 18px;box-shadow:inset 0 1px 1px #0000000d}.plain-list a{font-weight:600}.plain-list span{color:#777;margin-top:3px;font-size:14px;display:block}footer{background:var(--footer);color:var(--footer-text)}.footer-inner{justify-content:space-between;max-width:1080px;margin:0 auto;padding:30px 15px;font-size:14px;display:flex}.footer-inner p{margin:0}.footer-links a{color:#c7c7c7}.footer-links a:hover{color:#fff}.eyebrow{color:#747b75;letter-spacing:.11em;text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:700}.legal-navbar{background:var(--navbar);z-index:1000;border-bottom:1px solid #1f1f1f;align-items:center;min-height:51px;padding:0 max(20px,50vw - 525px);display:flex;position:fixed;inset:0 0 auto}.legal-navbar>a{color:#eee;font-size:17px;font-weight:700}.legal-navbar>a span{font-weight:500}.legal-navbar>a:hover{color:#fff;text-decoration:none}.legal-shell{background:var(--surface);border:1px solid var(--panel-border);border-radius:28px;max-width:850px;margin:28px auto 56px;padding:54px 68px 62px;box-shadow:0 2px 8px #0000000f}.legal-shell h1{color:var(--heading);letter-spacing:-.04em;margin-bottom:18px;font-size:clamp(32px,5vw,46px);line-height:1.05}.legal-lead{color:#4d514e;margin-bottom:30px;font-size:19px;line-height:1.65}.legal-shell section{border-top:1px solid var(--soft-border);margin-top:30px;padding-top:28px}.legal-shell h2{color:var(--heading);margin-bottom:13px;font-size:21px}.legal-shell p,.legal-shell li{line-height:1.7}.legal-shell ul{padding-left:22px}.legal-shell code{background:#f0f2ef;border:1px solid #e0e4df;border-radius:4px;padding:.1em .32em;font-size:.9em}.privacy-controls{background:#eef2ed;border:1px solid #d8ded5;border-radius:12px;padding:18px}.privacy-controls p{color:#394039;margin-bottom:12px;font-weight:600}.privacy-control-actions{flex-wrap:wrap;gap:9px;display:flex}.privacy-control-actions button{color:#394039;cursor:pointer;font:inherit;background:#fff;border:1px solid #aeb6ad;border-radius:999px;padding:8px 13px;font-size:13px;font-weight:700}.privacy-control-actions button:hover,.privacy-control-actions button.is-selected{color:#fff;background:#303630;border-color:#303630}.privacy-control-actions button:disabled{cursor:wait;opacity:.55}.privacy-control-actions button:focus-visible{outline:2px solid var(--link);outline-offset:2px}.legal-back{margin-top:36px;font-weight:700;display:inline-block}.analytics-shell{max-width:1180px;margin:28px auto 60px;padding:0 20px}.analytics-header{color:#dfe4df;background:#292d2a;border-radius:24px;justify-content:space-between;align-items:flex-start;gap:30px;padding:34px 38px;display:flex}.analytics-header .eyebrow{color:#9eaa9f}.analytics-header h1{color:#fff;letter-spacing:-.04em;margin-bottom:11px;font-size:clamp(30px,5vw,44px);line-height:1.05}.analytics-header p:last-child{max-width:650px;margin:0}.analytics-header nav{flex-shrink:0;gap:9px;display:flex}.analytics-header nav a{color:#f5f7f5;border:1px solid #59615b;border-radius:999px;padding:8px 13px;font-size:13px;font-weight:700}.analytics-header nav a:hover{background:#3a403b;text-decoration:none}.analytics-range{gap:8px;margin-top:22px;display:flex}.analytics-range a{border:1px solid var(--panel-border);color:#4c514d;background:#ffffffa6;border-radius:999px;padding:7px 12px;font-size:13px;font-weight:700}.analytics-range a[aria-current=page]{color:#fff;background:#303630;border-color:#303630}.analytics-range a:hover{text-decoration:none}.analytics-period{color:#737a74;margin:12px 2px 20px;font-size:13px}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px;display:grid}.metric-card,.analytics-panel{background:var(--surface);border:1px solid var(--panel-border);border-radius:16px;box-shadow:0 1px 5px #0000000a}.metric-card{min-width:0;padding:19px 20px}.metric-card p{color:#777e78;letter-spacing:.04em;text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:700}.metric-card strong{color:#303530;overflow-wrap:anywhere;font-size:clamp(20px,2.5vw,29px);line-height:1.15;display:block}.analytics-panel{padding:22px}.panel-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.panel-heading h2{color:#353a36;margin:0;font-size:17px}.panel-heading>p,.panel-heading>span{color:#808680;margin:0;font-size:12px}.analytics-trend{margin-bottom:14px}.daily-bars{align-items:end;gap:clamp(2px,.5vw,7px);height:190px;margin-top:22px;display:flex;overflow:hidden}.daily-column{flex-direction:column;flex:1;justify-content:flex-end;align-items:stretch;min-width:2px;height:100%;display:flex}.daily-count{height:var(--bar-height);background:#677769;border-radius:4px 4px 1px 1px;min-height:3px;display:block}.daily-column small{color:#878d88;white-space:nowrap;height:18px;margin-top:5px;font-size:9px;overflow:visible}.analytics-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.breakdown-list{gap:13px;margin:19px 0 0;padding:0;list-style:none;display:grid}.breakdown-list li>div{justify-content:space-between;gap:12px;font-size:13px;display:flex}.breakdown-list li>div span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.breakdown-list strong{color:#4d554e;flex-shrink:0}.breakdown-meter{background:#edf0ed;border-radius:999px;height:5px;margin-top:6px;display:block;overflow:hidden}.breakdown-meter>span{border-radius:inherit;background:#859687;height:100%;display:block}.empty-state{color:#8a908a;margin:22px 0 0;font-size:13px}.analytics-notes{margin-top:14px}.analytics-notes h2{color:#353a36;margin-bottom:10px;font-size:17px}.analytics-notes ul{color:#5e645f;margin:0;padding-left:19px;font-size:13px}@media (max-width:820px){body{padding-top:0}html{scroll-padding-top:18px}.navbar{position:static}.navbar-inner{flex-direction:column;align-items:flex-start;padding:12px 20px 8px}.navbar-brand{min-height:35px}.navbar nav{flex-wrap:wrap;width:100%}.navbar nav>a{min-height:38px;padding:0 18px 0 0}.page-shell{border-radius:24px;grid-template-columns:1fr;gap:30px;margin:12px;padding:30px 22px 45px}.sidebar{position:static}.profile-photo{width:130px}.section-nav{display:none}.profile-links{margin-bottom:0}.legal-navbar{position:static}.legal-shell{margin:14px 12px 38px;padding:38px 25px 44px}.analytics-shell{margin-top:12px}.analytics-header{flex-direction:column;padding:28px}.metric-grid,.analytics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:610px){body{font-size:15px}.navbar-brand{font-size:16px}.focus-grid{grid-template-columns:1fr}.work-item,.career-item{grid-template-columns:1fr;gap:5px}.career-period,.work-year{padding-top:0}.footer-inner{flex-direction:column;gap:6px}}@media (max-width:560px){.analytics-header nav{flex-wrap:wrap}.metric-grid,.analytics-grid{grid-template-columns:1fr}.daily-bars{height:150px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
