@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;0,900;1,400&family=DM+Sans:wght@300;400;500&display=swap");:root{--bg-light:#f0f5f0;--bg-mid:#e2ede2;--white:#f7faf7;--green-deep:#1a2e1a;--green-dark:#243d24;--green-mid:#3a6b3a;--green-base:#4e8b4e;--green-light:#7ab87a;--green-pale:#b8d8b8;--accent:#8faf6a;--accent-light:#b8cf9a;--text-dark:#1a2e1a;--text-mid:#3a5c3a;--text-light:#6a8c6a}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body,html{overflow-x:hidden}body{font-family:DM Sans,sans-serif;background-color:var(--bg-light);color:var(--text-dark)}h1,h2,h3{font-family:Playfair Display,serif}body:before{content:"";position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none;z-index:9999;opacity:.35}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-mid)}::-webkit-scrollbar-thumb{background:var(--green-light);border-radius:3px}