.menu-toggle{display:none}.site-footer{display:block;padding:55px 4vw 24px;margin-top:65px}.footer-top{display:grid;grid-template-columns:1.3fr 1.5fr 1fr;gap:45px}.footer-name{font:23px Arial,sans-serif;letter-spacing:-.8px;color:#10151a}.footer-name span{display:block;font:10px/1.7 monospace;letter-spacing:0;margin-top:12px}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:15px 25px}.footer-links>.meta{grid-column:1/-1;margin-bottom:8px}.footer-contact{display:flex;flex-direction:column;gap:15px}.footer-contact>.meta{margin-bottom:8px}.site-footer a:hover{text-decoration:underline;text-underline-offset:4px}.footer-bottom{border-top:1px solid #ccd0cf;margin-top:45px;padding-top:22px;display:flex;justify-content:space-between;gap:20px}.menu-toggle:focus-visible{outline-offset:3px}img,video{max-width:100%}iframe{max-width:100%}
@media(max-width:700px){body>header{position:relative;z-index:100;padding:16px 5vw;min-height:76px}body.menu-open{overflow:hidden}body.menu-open>header{position:fixed;inset:0 0 auto;background:#f4f3ef}body.menu-open>main{padding-top:104px}.menu-toggle{display:flex;flex-direction:column;gap:7px;align-items:center;justify-content:center;position:relative;z-index:102;width:44px;height:44px;padding:0;border:1px solid #aeb5b4;background:transparent;color:#10151a;cursor:pointer}.menu-toggle span{width:21px;height:1px;background:currentColor;transition:transform .4s cubic-bezier(.22,1,.36,1)}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}body>header>nav{position:fixed;inset:76px 0 0;background:#f4f3ef;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;max-width:none;padding:35px 7vw max(35px,env(safe-area-inset-bottom));overflow:auto;visibility:hidden;opacity:0;clip-path:inset(0 0 100% 0);transition:clip-path .5s cubic-bezier(.22,1,.36,1),opacity .3s,visibility .5s;pointer-events:none}body.menu-open>header>nav{visibility:visible;opacity:1;clip-path:inset(0);pointer-events:auto}body>header>nav a{font-size:clamp(28px,8vw,44px);letter-spacing:-1.5px;min-height:70px;border-bottom:1px solid #ccd0cf;padding:14px 0;opacity:0;transform:translateY(14px);transition:opacity .4s,transform .45s;transition-delay:0s}body.menu-open>header>nav a{opacity:1;transform:none;transition-delay:calc(var(--nav-order)*55ms + 100ms)}body>header>nav a:after{display:none}.site-footer{padding:40px 5vw 24px}.footer-top{grid-template-columns:1fr 1fr;gap:35px 22px}.footer-name{grid-column:1/-1}.footer-links{grid-template-columns:1fr;gap:8px}.footer-contact{gap:8px}.site-footer a:not(.footer-name){min-height:34px;display:flex;align-items:center}.footer-bottom{font-size:9px;align-items:center;margin-top:30px}.footer-bottom a{white-space:nowrap}.content .button{max-width:100%;overflow-wrap:anywhere}.cv-download{max-width:100%;min-height:46px}.cv-download .cv-format{margin-left:6px;font-size:8px}.cv-download .cv-icon{flex:0 0 44px}.page-title{font-size:clamp(46px,12vw,76px);overflow-wrap:normal}.research-hero h1{font-size:clamp(44px,13.5vw,54px)}.tour-heading{flex-wrap:wrap}.tour-heading>div{min-width:0;flex:1}.tour-heading .tour-mark{width:65px}.tour-heading .tour-social{gap:8px}.tour-heading .cv-download{font-size:10px}.tour-heading .cv-icon{flex-basis:34px}.research-hero .cv-format{display:none}main{min-width:0}.px-film-dialog{max-height:90dvh;overflow:auto}}
@media(prefers-reduced-motion:reduce){body>header>nav,.menu-toggle span,body>header>nav a{transition:none!important}}
/* A quiet, persistent navigation across every page. */
body>header{position:sticky;top:0;z-index:100;background:#f4f3ef;transition:background .3s,box-shadow .3s;isolation:isolate}body.is-scrolled>header{background:rgba(244,243,239,.94);backdrop-filter:blur(16px);box-shadow:0 1px 0 #10151a22}html{scroll-padding-top:100px}.site-footer.footer-minimal{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 4vw;margin-top:60px;font:11px/1.6 monospace;border-top:1px solid #10151a22}.footer-minimal>div{display:flex;gap:24px}.inline-film{display:block;width:100%;aspect-ratio:16/9;margin-top:35px;background:#10151a}.inline-film iframe{display:block;width:100%;height:100%;border:0}.home-page .activity-entry{min-height:110px}
@media(max-width:700px){body>header,body.menu-open>header{position:sticky;top:0;inset:auto;min-height:76px}body.menu-open>main{padding-top:28px}.site-footer.footer-minimal{padding:22px 5vw;gap:12px;font-size:9px;flex-wrap:wrap}.footer-minimal>div{gap:20px}}
@media(max-width:700px){body>header,body.menu-open>header{inset:0 0 auto;top:0}}
/* A fixed mobile menu must not be trapped by header backdrop filtering. */
@media(max-width:700px){body.is-scrolled>header{backdrop-filter:none;background:#f4f3ef}body.menu-open>header{backdrop-filter:none;background:#f4f3ef}body>header>nav{height:calc(100dvh - 76px);bottom:auto}}
