:root{--color-ivory:#f7f3ea;--color-cream:#efe7da;--color-linen:#dfd3bf;--color-stone:#d8d0c3;--color-taupe:#a89178;--color-champagne:#c8a15a;--color-muted-gold:#a98245;--color-charcoal:#11100e;--color-espresso:#211a15;--color-paper:#fffefa;--color-sage:#dce7d6;--color-amber:#efe1b9;--color-orange:#e7b77a;--color-burgundy:#7f1d1d;--color-grey:#d8d0c3;--color-info:#d8e4e8;--bg:var(--color-ivory);--page-shell:var(--color-linen);--surface:var(--color-cream);--surface-soft:var(--color-paper);--surface-strong:var(--color-espresso);--border:var(--color-stone);--text:var(--color-charcoal);--text-soft:var(--color-espresso);--text-muted:#f7f3eac7;--accent:var(--color-champagne);--accent-strong:var(--color-muted-gold);--success:var(--color-sage);--warning:var(--color-amber);--danger:var(--color-burgundy);--info:var(--color-info)}
:root{--font-ui:var(--font-inter), ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:var(--font-libre-baskerville), Georgia, "Times New Roman", serif;--font-size-xs:.75rem;--font-size-sm:.8125rem;--font-size-md:.9375rem;--font-size-base:1rem;--font-size-lg:1.25rem;--font-size-xl:1.5rem;--font-size-2xl:2rem;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-tight:1.1;--line-heading:1.2;--line-body:1.5;--tracking-none:0;--tracking-label:.1em;--tracking-wide:.14em}
:root{--space-0:0;--space-1:2px;--space-2:4px;--space-3:6px;--space-4:8px;--space-5:10px;--space-6:12px;--space-7:14px;--space-8:16px;--space-9:20px;--space-10:24px;--space-11:28px;--space-12:32px;--space-13:40px;--space-14:48px;--space-15:56px;--space-16:64px;--space-17:72px;--space-18:96px;--space-xs:var(--space-2);--space-sm:var(--space-4);--space-md:var(--space-6);--space-lg:var(--space-8);--space-xl:var(--space-10);--space-2xl:var(--space-12);--space-3xl:var(--space-14);--space-4xl:var(--space-17)}
:root{--touch-target:44px;--touch-target-lg:48px;--header-height:72px;--page-gutter:clamp(20px, 4vw, 48px);--content-max:1180px;--nav-width:252px}
:root{--radius-none:0;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-pill:999px;--radius-control:var(--radius-md);--radius-control-compact:var(--radius-sm)}
:root{--shadow-none:none;--shadow-sm:0 1px 2px #11100e0a;--shadow-md:0 10px 30px #11100e0f;--shadow-lg:0 18px 48px #11100e1a}
:root{--duration-fast:.15s;--duration-base:.18s;--duration-slow:.22s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--duration-cinematic:.9s;--duration-cinematic-slow:1.2s;--ease-cinematic:cubic-bezier(.22, 1, .36, 1)}
:root{--z-base:0;--z-header:20;--z-drawer:40;--z-modal:60;--z-toast:80}


*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{-moz-text-size-adjust:100%;text-size-adjust:100%;min-height:100%}body{min-height:100vh}img,picture,svg,canvas,video{max-width:100%;display:block}button,input,textarea,select{font:inherit}button{appearance:none;color:inherit;background:0 0;border:0}a{color:inherit;text-decoration:none}ul,ol{list-style:none}table{border-collapse:collapse;border-spacing:0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
html{background:var(--page-shell);color:var(--text)}body{background:var(--page-shell);color:var(--text);font-family:var(--font-ui);font-size:var(--font-size-md);font-synthesis:none;line-height:var(--line-body);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::selection{background:#c8a15a59}h1,h2,h3,h4,h5,h6{color:var(--text);font-weight:var(--font-weight-semibold);line-height:var(--line-heading)}p{max-width:70ch}strong,b{font-weight:var(--font-weight-semibold)}input,select,textarea{color:var(--text);background:var(--surface-soft)}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.font-display{font-family:var(--font-display)}.tnum{font-variant-numeric:tabular-nums}.container{width:100%;margin-inline:auto;padding-inline:clamp(1.25rem,4vw,5.5rem)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}


