:root{--color-bg: #ffffff;--color-text: #0a0a0a;--color-muted: #737373;--color-border: #e0e0e0;--color-nav-bg: #0a0a0a;--color-nav-text: #ffffff;--color-nav-muted: rgba(255, 255, 255, .45);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;--font-display: "Cormorant Garamond", Georgia, "Times New Roman", serif;--max-width: 1280px;--nav-height: 56px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh;display:flex;flex-direction:column}img{max-width:100%;height:auto;display:block}.site-header{background:var(--color-nav-bg);position:sticky;top:0;z-index:100;height:var(--nav-height);display:flex;align-items:center}.nav-inner{max-width:var(--max-width);width:100%;margin:0 auto;padding:0 2rem;display:flex;align-items:center;gap:2.5rem}.wordmark{color:var(--color-nav-text);text-decoration:none;font-size:.8125rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;flex-shrink:0}.primary-nav ul{display:flex;gap:0;list-style:none}.nav-link{display:block;padding:0 .875rem;height:var(--nav-height);line-height:var(--nav-height);color:var(--color-nav-muted);text-decoration:none;font-size:.6875rem;font-weight:400;letter-spacing:.1em;text-transform:uppercase;transition:color .15s;white-space:nowrap}.nav-link:hover,.nav-link.active{color:var(--color-nav-text)}.search-btn{margin-left:auto;background:none;border:none;cursor:pointer;color:var(--color-nav-muted);display:flex;align-items:center;justify-content:center;padding:.5rem;transition:color .15s;flex-shrink:0}.search-btn:hover{color:var(--color-nav-text)}.nav-toggle{display:none;background:none;border:none;cursor:pointer;color:var(--color-nav-muted);align-items:center;justify-content:center;padding:.5rem;transition:color .15s;flex-shrink:0}.nav-toggle:hover{color:var(--color-nav-text)}main{flex:1;max-width:var(--max-width);margin:0 auto;padding:0 2rem 5rem;width:100%}h1{font-family:var(--font-display);font-weight:300;letter-spacing:-.02em}footer{border-top:1px solid var(--color-border)}.footer-inner{max-width:var(--max-width);margin:0 auto;padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center}.footer-wordmark{font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-muted)}.footer-copy{font-size:.75rem;color:var(--color-border)}.search-modal{position:fixed;inset:0;z-index:1000;display:none;align-items:flex-start;justify-content:center;padding:8vh 1rem 1rem}.search-modal.open{display:flex}.search-backdrop{position:absolute;inset:0;background:#0a0a0ab3}.search-panel{position:relative;background:var(--color-bg);width:100%;max-width:580px;max-height:72vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 32px 64px #0000003d}.search-panel-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--color-border)}.search-label{font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-muted)}.search-panel-header button{background:none;border:none;font-size:1.25rem;cursor:pointer;color:var(--color-muted);padding:0 .25rem;line-height:1;transition:color .15s}.search-panel-header button:hover{color:var(--color-text)}#search-container{padding:1rem;overflow-y:auto}.pagefind-ui__search-input{border-radius:0!important;font-size:1rem!important;border:1px solid var(--color-border)!important}.pagefind-ui__results-area{margin-top:1rem}@media(max-width:900px){.nav-link{padding:0 .625rem;font-size:.625rem}}@media(max-width:680px){.nav-inner{gap:0;padding:0 1rem}.wordmark{margin-right:auto}.nav-toggle{display:flex}.primary-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--color-nav-bg);border-top:1px solid rgba(255,255,255,.08);box-shadow:0 12px 24px #0000004d}.primary-nav.open{display:block}.primary-nav ul{flex-direction:column}.nav-link{height:auto;line-height:1;padding:1rem 1.5rem;font-size:.8125rem;border-bottom:1px solid rgba(255,255,255,.06)}.search-btn{margin-left:1rem}}
