:root{--color-bg:#faf6f0;--color-sand:#f1e8dc;--color-surface:#fff;--color-text:#1f2d2b;--color-text-muted:#56625f;--color-primary:#2f5d57;--color-primary-hover:#244a45;--color-primary-soft:#e4ede9;--color-accent:#a9553a;--color-accent-on-dark:#f2c9b5;--color-line:#e6dccf;--color-input-border:#cfc3b4;--color-placeholder:#e9dfd2;--font-heading:"Fraunces", Georgia, serif;--font-body:"Inter", system-ui, sans-serif;--fs-h1:38px;--fs-h2:30px;--fs-body:16px;--fs-label:13px;--lh-body:1.6;--ls-label:.08em;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-heading:500;--radius-card:16px;--radius-card-lg:18px;--radius-photo:20px;--radius-photo-lg:24px;--radius-pill:999px;--radius-arch:999px 999px 24px 24px;--space-section:56px;--gutter:24px;--container:1200px;--tap-min:48px;--motion-duration:.7s;--motion-ease:cubic-bezier(.2,.7,.2,1);--motion-stagger-hero:90ms;--motion-stagger:80ms;--motion-distance:24px}@media (min-width:1024px){:root{--fs-h1:60px;--fs-h2:44px;--fs-body:17px;--space-section:104px}}@font-face{font-family:Inter;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/inter-latin-wght-normal.woff2)format("woff2")}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/fraunces-latin-500-normal.woff2)format("woff2")}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{background-color:var(--color-bg);min-height:100vh;color:var(--color-text);font-family:var(--font-body);font-size:var(--fs-body);font-weight:var(--fw-regular);line-height:var(--lh-body);-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-heading);font-weight:var(--fw-heading);text-wrap:balance;line-height:1.15}h1{font-size:var(--fs-h1)}h2{font-size:var(--fs-h2)}img,picture,svg{max-width:100%;display:block}img{height:auto}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit}:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}html{scroll-behavior:auto!important}}
