@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(../media/dm-sans-latin-ext-wght-normal.0hiocdn10l05a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(../media/dm-sans-latin-wght-normal.0tm8u-h63rec8.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(../media/playfair-display-cyrillic-wght-normal.2k45saqu94y7o.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(../media/playfair-display-vietnamese-wght-normal.1uspqum1g73ck.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(../media/playfair-display-latin-ext-wght-normal.35b9e1hr6h5k1.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(../media/playfair-display-latin-wght-normal.1izqcz-wkfvza.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Playfair Display Variable;font-style:italic;font-display:swap;font-weight:400 900;src:url(../media/playfair-display-cyrillic-wght-italic.1gwx95r0anrw4.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display Variable;font-style:italic;font-display:swap;font-weight:400 900;src:url(../media/playfair-display-vietnamese-wght-italic.0qvysxrjcrilw.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display Variable;font-style:italic;font-display:swap;font-weight:400 900;src:url(../media/playfair-display-latin-ext-wght-italic.2alk5_pwykb7c.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display Variable;font-style:italic;font-display:swap;font-weight:400 900;src:url(../media/playfair-display-latin-wght-italic.3wz967ibaache.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--serif:"Playfair Display Variable", "Playfair Display", Georgia, "Times New Roman", serif;--sans:"DM Sans Variable", "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--dark:#14141f;--darkest:#0f0f18;--cream:#f5f0e8;--navy:#1a1a2e;--gold:#c9a84c;--gold-dark:#9a7d2e;--nav-h:84px;--nav-h-solid:62px;--gutter:clamp(20px, 5vw, 64px)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:var(--nav-h-solid)}body{font-family:var(--sans);color:var(--navy);background:var(--cream);-webkit-font-smoothing:antialiased}img{max-width:100%}::selection{background:var(--gold);color:var(--dark)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.skip-link{z-index:100;background:var(--gold);color:var(--dark);border-radius:2px;padding:10px 16px;font-weight:600;text-decoration:none;position:absolute;top:-60px;left:12px}.skip-link:focus{top:12px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes fadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes underlineGrow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes cueBob{0%,to{opacity:.5;transform:translateY(0)}50%{opacity:1;transform:translateY(7px)}}.fade-up{animation:.8s both fadeUp}.name-underline{background:var(--gold);transform-origin:0;width:100%;height:5px;animation:1.1s cubic-bezier(.16,1,.3,1) .7s both underlineGrow;position:absolute;bottom:0;left:0}.cue-bob{animation:1.8s ease-in-out infinite cueBob}@media (max-width:880px){.hero-grid{justify-items:start;grid-template-columns:1fr!important}.hero-portrait{order:-1;margin-bottom:10px;max-width:440px!important}}@media (max-width:640px){.research-grid,.teaching-grid{grid-template-columns:1fr!important}}.site-nav{z-index:50;padding:0 var(--gutter);height:var(--nav-h);color:var(--cream);-webkit-backdrop-filter:blur(10px);background:#f5f0e800;border-bottom:1px solid #1a1a2e00;justify-content:space-between;align-items:center;gap:16px;transition:height .35s,background .35s,border-color .35s,color .35s;display:flex;position:fixed;top:0;left:0;right:0}.site-nav[data-scrolled]{height:var(--nav-h-solid);color:var(--navy);background:#f5f0e8eb;border-bottom-color:#1a1a2e1a}body:has(.mnav[open]) .site-nav{height:var(--nav-h-solid);color:var(--navy);background:#f5f0e8eb;border-bottom-color:#1a1a2e1a}.nav-brand{color:inherit;align-items:center;gap:10px;min-width:0;text-decoration:none;display:flex}.nav-brand img{width:auto;height:36px;transition:height .35s;display:block}.site-nav[data-scrolled] .nav-brand img{height:28px}.nav-brand-name{font-family:var(--serif);letter-spacing:.01em;white-space:nowrap;font-size:19px;font-weight:700}.nav-brand-sub{letter-spacing:.22em;text-transform:uppercase;opacity:.55;white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:600;overflow:hidden}.nav-right{align-items:center;gap:clamp(14px,2.4vw,34px);display:flex}.nav-links{align-items:center;gap:clamp(14px,2.4vw,34px);list-style:none;display:none}.nav-link{letter-spacing:.02em;color:#f5f0e8c7;white-space:nowrap;font-size:13.5px;font-weight:500;text-decoration:none;transition:color .25s;position:relative}.site-nav[data-scrolled] .nav-link{color:#1a1a2eb8}body:has(.mnav[open]) .nav-link{color:#1a1a2eb8}.nav-link:hover,html:not([data-spying]) .nav-link[aria-current],.nav-link.is-active{color:var(--gold)!important}.nav-social{align-items:center;gap:12px;display:none}.social-link{color:inherit;opacity:.75;justify-content:center;align-items:center;transition:opacity .2s;display:flex}.social-link:hover{opacity:1}.lang-switch{border:1px solid #f5f0e847;border-radius:999px;align-items:center;gap:2px;margin-left:6px;padding:3px;display:flex}.site-nav[data-scrolled] .lang-switch{border-color:#1a1a2e33}body:has(.mnav[open]) .lang-switch{border-color:#1a1a2e33}.lang-switch a{letter-spacing:.08em;color:#f5f0e8b3;border-radius:999px;padding:5px 11px;font-size:11px;font-weight:700;text-decoration:none;transition:background .25s,color .25s}.site-nav[data-scrolled] .lang-switch a{color:#1a1a2e99}body:has(.mnav[open]) .lang-switch a{color:#1a1a2e99}.lang-switch a[aria-current]{background:var(--gold);color:var(--dark)!important}.mnav>summary{top:0;right:var(--gutter);z-index:51;height:var(--nav-h);cursor:pointer;width:32px;color:var(--cream);flex-direction:column;justify-content:center;gap:5px;list-style:none;transition:height .35s;display:flex;position:fixed}.mnav>summary::-webkit-details-marker{display:none}.site-nav[data-scrolled]~.mnav>summary,.mnav[open]>summary{height:var(--nav-h-solid);color:var(--navy)}.mnav>summary span{background:currentColor;width:22px;height:2px;transition:transform .3s,opacity .3s;display:block}.mnav[open]>summary span:first-child{transform:translateY(7px)rotate(45deg)}.mnav[open]>summary span:nth-child(2){opacity:0}.mnav[open]>summary span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mnav-panel{z-index:49;padding:calc(var(--nav-h-solid) + 16px) clamp(20px, 6vw, 40px) clamp(20px, 6vw, 40px);background:linear-gradient(160deg,#f8f3ec 0%,#f5f0e8 45%,#eee6d6 100%);flex-direction:column;animation:.45s cubic-bezier(.16,1,.3,1) mnavIn;display:flex;position:fixed;inset:0;overflow-y:auto}@keyframes mnavIn{0%{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:none}}.mnav-link{font-family:var(--serif);letter-spacing:.01em;color:var(--navy);border-bottom:1px solid #1a1a2e1a;padding:14px 0;font-size:22px;font-weight:600;text-decoration:none}html:not([data-spying]) .mnav-link[aria-current],.mnav-link.is-active{color:var(--gold)}.mnav-social{color:var(--navy);align-items:center;gap:18px;margin-top:24px;display:flex}body:has(.mnav[open]){overflow:hidden}@media (min-width:781px){.nav-links,.nav-social{display:flex}.mnav{display:none}}@media (max-width:780px){.nav-right{margin-right:44px}}.book{perspective:1500px;cursor:pointer;width:200px;font:inherit;color:inherit;text-align:center;background:0 0;border:0;flex-direction:column;align-items:center;padding:0;display:flex;position:relative}.book>span{display:block}.book-scene{width:185px;height:272px;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.16,1,.3,1);position:relative;transform:rotateY(-34deg)}.book:hover .book-scene,.book:focus-visible .book-scene{transform:rotateY(-8deg)translateY(-12px)}.book-caption{width:230px;height:190px;margin-top:8px;position:relative}.book-label,.book-detail{text-align:center;flex-direction:column;align-items:center;display:flex;position:absolute;inset:0}.book-label{transition:opacity .3s}.book-detail{opacity:0;transition:opacity .35s,transform .35s;transform:translateY(16px)}.book:hover .book-label,.book:focus-visible .book-label{opacity:0}.book:hover .book-detail,.book:focus-visible .book-detail{opacity:1;transform:none}@media (hover:none){.book-scene{transform:rotateY(-20deg)}}.book-modal{background:var(--cream);width:calc(100% - 40px);max-width:560px;max-height:85vh;color:var(--navy);border:0;border-radius:4px;margin:auto;padding:clamp(28px,4vw,44px);position:fixed;inset:0;overflow-y:auto;box-shadow:0 40px 90px #0006}.book-modal::backdrop{background:#0f0f18bf}.book-modal-close{color:var(--gold-dark);cursor:pointer;background:0 0;border:none;font-size:24px;line-height:1;position:absolute;top:16px;right:16px}body:has(.book-modal:popover-open){overflow:hidden}.chip{letter-spacing:.01em;color:var(--navy);white-space:nowrap;border:1px solid #1a1a2e2e;border-radius:999px;padding:9px 18px;font-size:13px;font-weight:600;text-decoration:none;transition:background .2s,border-color .2s}.chip:hover{border-color:var(--gold)}.chip[aria-current]{background:var(--gold);border-color:var(--gold);color:var(--dark)}.article-card{color:inherit;background:#fff;border:1px solid #1a1a2e1f;border-radius:6px;flex-direction:column;text-decoration:none;transition:border-color .2s,transform .2s;display:flex;overflow:hidden}.article-card:hover{border-color:var(--gold);transform:translateY(-2px)}.footer-link{color:#f5f0e899;font-size:13px;text-decoration:none}.footer-link:hover{color:var(--gold)}.payload-richtext{color:var(--navy);font-size:clamp(15px,1.8vw,17px);line-height:1.8}.payload-richtext>*+*{margin-top:1.2em}.payload-richtext h1,.payload-richtext h2,.payload-richtext h3{font-family:var(--serif);color:var(--navy);margin-top:1.6em;font-weight:600;line-height:1.3}.payload-richtext h1{font-size:clamp(24px,3vw,32px)}.payload-richtext h2{font-size:clamp(21px,2.6vw,27px)}.payload-richtext h3{font-size:clamp(18px,2.2vw,21px)}.payload-richtext a{color:var(--gold)}.payload-richtext img{border-radius:4px;width:100%;height:auto;display:block}.payload-richtext ul,.payload-richtext ol{padding-left:1.4em}.payload-richtext blockquote{border-left:3px solid var(--gold);color:#1a1a2ebf;padding-left:1.1em;font-style:italic}
