@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/hanken-grotesk-var.woff2) format("woff2")}@font-face{font-family:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/instrument-serif-400.woff2) format("woff2")}@font-face{font-family:"Instrument Serif";font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/instrument-serif-italic.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500.woff2) format("woff2")}:root{--color-primary: #26211b;--color-secondary: #6e665b;--color-background: #f7f2ea;--color-surface: #fbf7f0;--color-surface-sunken: #f0e8db;--color-text: #26211b;--color-text-muted: #6e665b;--color-accent: #a24e2b;--color-accent-strong: #7f3c20;--color-accent-soft: rgba(162, 78, 43, .1);--color-border: #e6dccb;--color-focus: #a24e2b;--font-family-base: "Hanken Grotesk", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-family-heading: var(--font-family-base);--font-family-serif: "Instrument Serif", Georgia, "Times New Roman", serif;--font-family-mono: "IBM Plex Mono", ui-monospace, "SF Mono", "Menlo", monospace;--font-size-base: 16px;--line-height-base: 1.6;--font-weight-base: 400;--font-weight-heading: 600;--font-scale-ratio: 1.25;--spacing-unit: 8px;--container-max-width: 1200px;--section-gap: 80px;--radius-base: 8px;--radius-button: 8px;--shadow-sm: 0 1px 2px rgba(38, 33, 27, .05);--shadow-md: 0 6px 24px rgba(38, 33, 27, .08);--button-bg: var(--color-accent);--button-text: #ffffff;--button-radius: var(--radius-button);--button-padding-x: 20px;--button-padding-y: 12px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--color-background);color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:var(--line-height-base);font-weight:var(--font-weight-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-heading);font-weight:var(--font-weight-heading);line-height:1.15;letter-spacing:-.02em}h1{font-size:var(--font-size-h1, 2.5rem)}h2{font-size:var(--font-size-h2, 2rem)}h3{font-size:var(--font-size-h3, 1.5rem)}.serif-accent{font-family:var(--font-family-serif);font-style:italic;font-weight:400;letter-spacing:0}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}::selection{background:var(--color-accent-soft);color:var(--color-accent-strong)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:3px}.container{width:100%;max-width:var(--container-max-width);margin-inline:auto;padding-inline:calc(var(--spacing-unit) * 2)}.site-main>*+*,app-section-renderer+app-section-renderer{display:block}app-section-renderer{display:block;margin-block:var(--section-gap)}.button{display:inline-block;background:var(--button-bg);color:var(--button-text);border:1px solid transparent;border-radius:var(--button-radius);padding:var(--button-padding-y) var(--button-padding-x);font:inherit;font-weight:500;cursor:pointer;text-decoration:none;line-height:1.2;transition:background-color .18s ease,transform .05s ease,border-color .18s ease}.button:hover{background:var(--color-accent-strong);text-decoration:none}.button:active{transform:translateY(1px)}.button:disabled{opacity:.55;cursor:not-allowed}.button--secondary{background:transparent;color:var(--color-text);border:1px solid var(--color-border)}.button--secondary:hover{background:var(--color-surface-sunken);border-color:var(--color-text-muted)}@media(prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}
