:root{--color-bg:#f6f3ee;--color-bg-strong:#efe9df;--color-surface:#fffdf9e0;--color-surface-strong:#fffdfa;--color-surface-muted:#f1ece3;--color-border:#3e33231f;--color-border-strong:#3e332338;--color-text:#171411;--color-text-soft:#5e584f;--color-text-faint:#8a8378;--color-accent:#23463d;--color-accent-strong:#173029;--color-accent-soft:#e9f1ef;--color-success:#25624f;--color-warning:#91601d;--color-danger:#9f4639;--shadow-sm:0 10px 30px #2e251c14;--shadow-md:0 24px 60px #2e251c1f;--radius-sm:12px;--radius-md:20px;--radius-lg:28px;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4.5rem;--container-max:1180px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;width:100%;min-height:100%}body{width:100%;min-height:100vh;color:var(--color-text);font-family:var(--font-sans),sans-serif;background:radial-gradient(circle at top left, #23463d14, transparent 28%),radial-gradient(circle at bottom right, #91601d14, transparent 32%),linear-gradient(180deg, #fbfaf7 0%, var(--color-bg) 100%)}body:before{content:"";pointer-events:none;opacity:.45;background-image:linear-gradient(#17141108 1px,#0000 1px),linear-gradient(90deg,#17141108 1px,#0000 1px);background-size:32px 32px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(circle,#000 35%,#0000 80%);mask-image:radial-gradient(circle,#000 35%,#0000 80%)}body>*{z-index:1;position:relative}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}img,svg{max-width:100%;display:block}::selection{background:#23463d29}:focus-visible{outline-offset:2px;outline:2px solid #23463d73}h1,h2,h3,h4{letter-spacing:-.01em}p{line-height:1.65}.page-section{width:min(100% - 2rem,var(--container-max));margin:0 auto}@keyframes fade-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes float-in{0%{opacity:0;transform:translateY(24px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:640px){.page-section{width:min(100% - 1.25rem,var(--container-max))}}
