:root{--color-bg: #fafafa;--color-surface: #ffffff;--color-text: #1a1a1a;--color-muted: #6b6b6b;--color-accent: #2d2d2d;--color-border: #e4e4e4;--color-subtle: #f3f2ef;--font-heading: "Instrument Serif", "Georgia", serif;--font-body: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", monospace;--text-xs: .64rem;--text-sm: .8rem;--text-base: 1rem;--text-md: 1.125rem;--text-lg: 1.25rem;--text-xl: 1.563rem;--text-2xl: 1.953rem;--text-3xl: 2.441rem;--text-4xl: 3.052rem;--text-hero: 3.815rem;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--space-9: 80px;--space-10: 96px;--space-11: 128px;--layout-max-width: 1120px;--layout-gutter: 40px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;text-size-adjust:100%}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:1.65;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:400;line-height:1.15;letter-spacing:-.02em;color:var(--color-text)}h1{font-size:var(--text-hero);margin-bottom:var(--space-5)}h2{font-size:var(--text-2xl);margin-bottom:var(--space-4)}h3{font-size:var(--text-lg);font-family:var(--font-body);font-weight:600;letter-spacing:-.01em;line-height:1.3;margin-bottom:var(--space-3)}h4{font-size:var(--text-md);font-family:var(--font-body);font-weight:500}p{max-width:60ch;margin-bottom:var(--space-4)}p:last-child{margin-bottom:0}a{color:inherit;text-decoration:none}.site-header{padding:var(--space-5) var(--layout-gutter);border-bottom:1px solid var(--color-border);display:flex;justify-content:center;background:var(--color-surface);position:sticky;top:0;z-index:100}.site-header nav{display:flex;justify-content:space-between;width:100%;max-width:var(--layout-max-width);align-items:center}.brand{font-family:var(--font-body);font-weight:700;font-size:var(--text-md);letter-spacing:-.03em;text-decoration:none;color:var(--color-text)}.nav-links{display:flex;align-items:center;gap:var(--space-6)}.nav-links a{text-decoration:none;color:var(--color-muted);font-size:var(--text-sm);font-weight:500;letter-spacing:.02em;transition:color .2s ease}.nav-links a:hover{color:var(--color-text)}.nav-links .action-link{color:var(--color-text);border:1px solid var(--color-border);padding:var(--space-2) var(--space-5);font-weight:600;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;transition:background .2s ease,color .2s ease}.nav-links .action-link:hover{background:var(--color-text);color:var(--color-bg)}main{max-width:var(--layout-max-width);margin:0 auto;padding:var(--space-10) var(--layout-gutter) var(--space-11);min-height:80vh}.site-footer{border-top:1px solid var(--color-border);padding:var(--space-8) var(--layout-gutter);display:flex;justify-content:center;background:var(--color-surface)}.footer-inner{display:flex;justify-content:space-between;align-items:flex-start;width:100%;max-width:var(--layout-max-width);gap:var(--space-8)}.footer-col{display:flex;flex-direction:column;gap:var(--space-3)}.footer-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.12em;font-weight:600;opacity:.4;margin-bottom:var(--space-2)}.footer-links{display:flex;flex-direction:column;gap:var(--space-2)}.footer-links a{font-size:var(--text-sm);color:var(--color-muted);transition:color .2s}.footer-links a:hover{color:var(--color-text)}.newsletter-inline{display:flex;align-items:center;gap:var(--space-2)}.newsletter-inline input{border:none;border-bottom:1px solid var(--color-border);padding:var(--space-2) 0;font-family:var(--font-body);font-size:var(--text-sm);width:200px;background:transparent;color:var(--color-text);transition:border-color .2s}.newsletter-inline input:focus{outline:none;border-bottom-color:var(--color-text)}.newsletter-inline button{background:none;border:none;cursor:pointer;font-size:var(--text-lg);color:var(--color-muted);transition:color .2s;padding:0}.newsletter-inline button:hover{color:var(--color-text)}.footer-copy{font-size:var(--text-xs);color:var(--color-muted);opacity:.5}@media(max-width:768px){:root{--text-hero: 2.5rem;--layout-gutter: 24px}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-xl)}.nav-links{display:none}main{padding:var(--space-8) var(--layout-gutter) var(--space-9)}.footer-inner{flex-direction:column;gap:var(--space-6)}}
