:root{--bg: #FAF8F5;--accent: #7A3B34;--text: #2B2724;--text-soft: #5C5650;--rule: #7A3B34;--serif: "Fraunces", Georgia, "Times New Roman", serif;--sans: "Inter", system-ui, -apple-system, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{margin:0;background-color:var(--bg);color:var(--text);font-family:var(--sans);font-size:17px;line-height:1.6;font-weight:400;display:flex;flex-direction:column;min-height:100vh}.page{flex:1;width:100%;max-width:720px;margin:0 auto;padding:96px 24px 64px}.wordmark{font-family:var(--sans);font-size:18px;font-weight:500;color:var(--accent);text-transform:uppercase;letter-spacing:.15em;margin-bottom:96px}.rule{display:block;width:40px;height:2px;background-color:var(--rule);margin-bottom:36px}.hero-headline{font-family:var(--serif);font-weight:400;font-size:40px;line-height:1.2;letter-spacing:-.01em;color:var(--text);margin:0 0 28px}.hero-subline{font-family:var(--sans);font-size:18px;line-height:1.6;color:var(--text-soft);margin:0;max-width:620px}.section{margin-top:96px}.section-title{font-family:var(--sans);font-size:14px;font-weight:500;color:var(--accent);text-transform:uppercase;letter-spacing:.15em;margin:0 0 32px}.items{display:flex;flex-direction:column;gap:36px}.item-title{font-family:var(--sans);font-size:16px;font-weight:500;color:var(--accent);margin:0 0 8px}.item-body,.about-body{font-family:var(--sans);font-size:17px;line-height:1.6;color:var(--text);margin:0}.contact-line{font-family:var(--sans);font-size:17px;line-height:1.6;color:var(--text);margin:0 0 4px}.contact-email{color:var(--accent);text-decoration:none}.contact-email:hover{text-decoration:underline}.footer{text-align:center;font-family:var(--sans);font-size:13px;color:var(--text-soft);padding:0 24px 48px}.fade-in{opacity:0;transform:translateY(8px);animation:fade-in .7s ease-out forwards}.hero.fade-in{animation-delay:60ms}.section.fade-in:nth-of-type(1){animation-delay:.14s}.section.fade-in:nth-of-type(2){animation-delay:.22s}.section.fade-in:nth-of-type(3){animation-delay:.3s}@keyframes fade-in{to{opacity:1;transform:translateY(0)}}@media (max-width: 600px){.page{padding:64px 20px 48px}.wordmark{margin-bottom:64px;font-size:16px}.hero-headline{font-size:30px}.hero-subline{font-size:17px}.section{margin-top:72px}}@media (prefers-reduced-motion: reduce){.fade-in{animation:none;opacity:1;transform:none}}
