/* base.css — typography, body, global */

body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; background: #faf8f3; color: #2e2820; line-height: 1.6; }
h1,h2,h3,h4,h5,h6 { line-height: 1.2; }
a { text-decoration: none; }

/* icons */
body .wrapper .icon { width: 20px; height: 20px; stroke: currentColor; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }
body .wrapper .icon-lg { width: 24px; height: 24px; stroke: currentColor; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }

/* fade-in scroll animation */
body .wrapper .fade-in { opacity: 0; transform: translateY(20px); transition: opacity 0.5s ease, transform 0.5s ease; }
body .wrapper .fade-in.visible { opacity: 1; transform: translateY(0); }

/* wrapper */
body .wrapper { display: flex; flex-direction: column; min-height: 100vh; }
