:root{--cream:#f5f1ea;--cream-deep:#efe8dc;--cream-deeper:#e8dfcf;--bone:#faf6ee;--canvas-gray:#ded6c8;--charcoal:#2a2520;--charcoal-soft:#3a332c;--ink:#1f1a15;--sage:#7a8770;--sage-deep:#5a6651;--sage-light:#9aa890;--warm-brown:#6b5a4c;--warm-brown-2:#8a7563;--tan:#a8967f;--faint-draft:#9c8b78;--border-1:#2a252014;--border-2:#2a25201a;--border-3:#2a25201f;--border-4:#2a252024;--font-display:"Cormorant Garamond", Georgia, serif;--font-ui:"Inter", sans-serif;--t-hover:.3s ease;--t-state:.4s ease;--t-reveal:.55s ease;--sidebar-w:268px;--source-rail-w:380px;--screen-px:72px;--screen-pt:62px;--screen-pb:90px;--max-w:1280px;--reading-w:680px;--grid-gap:22px}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{font-family:var(--font-display);background:var(--cream);color:var(--charcoal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::selection{background:var(--sage);color:var(--cream)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#2a252029}::-webkit-scrollbar-thumb:hover{background:#2a252047}a{cursor:pointer;text-decoration:none}p,h1,h2,h3{margin:0}@keyframes mgRise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes mgFade{0%{opacity:0}to{opacity:1}}@keyframes mgPulse{0%,to{opacity:.35}50%{opacity:1}}.card-hover{transition:transform var(--t-state), border-color var(--t-state)}.card-hover:hover{transform:translateY(-4px);border-color:var(--sage)!important}.cluster-other{transition:transform var(--t-state), border-color var(--t-state), background var(--t-state)}.cluster-other:hover{transform:translateY(-4px);border-color:var(--sage)!important;background:var(--bone)!important}.btn-cta{transition:background var(--t-state)}.btn-cta:hover{background:var(--sage-deep)!important}.btn-text-arrow{transition:color var(--t-hover)}.btn-text-arrow:hover{color:var(--sage-deep)!important}.nav-row{transition:border-color var(--t-hover), background var(--t-hover)}.chip{transition:all var(--t-hover)}.format-tab{transition:color var(--t-hover), border-color var(--t-hover)}.format-tab:hover{color:var(--charcoal)!important}.anim-rise{animation:.6s both mgRise}.anim-fade{animation:.6s both mgFade}.pulse{animation:2.4s infinite mgPulse}.pulse-fast{animation:2.2s infinite mgPulse}
