:root{--color-bg: #F5F0E8;--color-bg-alt: #EDE7DB;--color-surface: #FFFFFF;--color-text: #2C2420;--color-text-secondary: #6B5E54;--color-text-muted: #9E958A;--color-accent: #C4654A;--color-accent-hover: #A8523B;--color-accent-soft: rgba(196, 101, 74, .08);--color-sage: #7D8E6E;--color-sage-soft: rgba(125, 142, 110, .1);--color-border: rgba(44, 36, 32, .1);--color-border-strong: rgba(44, 36, 32, .18);--font-display: "Bricolage Grotesque", system-ui, sans-serif;--font-serif: "Instrument Serif", Georgia, serif;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-quart: cubic-bezier(.25, 1, .5, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-display);font-weight:400;line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::selection{background:var(--color-accent);color:#fff}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.reveal{opacity:0;transform:translateY(40px);transition:opacity .9s var(--ease-out-expo),transform .9s var(--ease-out-expo)}.reveal.revealed{opacity:1;transform:translateY(0)}.reveal-left{opacity:0;transform:translate(-50px);transition:opacity .9s var(--ease-out-expo),transform .9s var(--ease-out-expo)}.reveal-left.revealed{opacity:1;transform:translate(0)}.reveal-right{opacity:0;transform:translate(50px);transition:opacity .9s var(--ease-out-expo),transform .9s var(--ease-out-expo)}.reveal-right.revealed{opacity:1;transform:translate(0)}.reveal-scale{opacity:0;transform:scale(.92);transition:opacity .9s var(--ease-out-expo),transform .9s var(--ease-out-expo)}.reveal-scale.revealed{opacity:1;transform:scale(1)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}.reveal-delay-5{transition-delay:.5s}.reveal-delay-6{transition-delay:.6s}.reveal-delay-7{transition-delay:.7s}.reveal-delay-8{transition-delay:.8s}
