:root{--bg: #F6F2EA;--surface: #FFFFFF;--surface-2: #FBF8F1;--ink: #1B1A16;--ink-2: #5B5747;--ink-3: #918C7B;--line: #E7E1D4;--line-2: #D9D2C2;--brand: #1C5A43;--brand-press: #154533;--brand-soft: #E4EDE8;--brand-ink: #143E2E;--gold: #C98A2B;--gold-soft: #F5E8D0;--color-bg: var(--bg);--color-surface: var(--surface);--color-text: var(--ink);--color-text-2: var(--ink-2);--color-text-muted: var(--ink-3);--color-border: var(--line);--color-primary: var(--brand);--color-primary-hover:var(--brand-press);--color-primary-text: var(--surface);--font-display: "Bricolage Grotesque", system-ui, sans-serif;--font-body: "Hanken Grotesk", system-ui, sans-serif;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .04);--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .08), 0 1px 2px -1px rgb(0 0 0 / .06);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .08), 0 2px 4px -2px rgb(0 0 0 / .06);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .08), 0 4px 6px -4px rgb(0 0 0 / .06);--shadow-focus: 0 0 0 3px rgba(28, 90, 67, .22);--ease: cubic-bezier(.4, 0, .2, 1);--duration-fast: .12s;--duration-base: .2s}*,*:before,*:after{box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:1rem;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;letter-spacing:-.02em;margin:0;line-height:1.1;color:var(--ink)}a{color:var(--brand);text-decoration:none}a:hover{color:var(--brand-press)}img{display:block;max-width:100%}.wrap{max-width:1100px;margin:0 auto;padding:0 1.5rem}@media (min-width: 640px){.wrap{padding:0 2rem}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:var(--radius-md);padding:.625rem 1.25rem;font-family:var(--font-body);font-size:.9375rem;font-weight:600;line-height:1.25;cursor:pointer;border:none;text-decoration:none;transition:background var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease)}.btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover:not(:disabled){background:var(--brand-press)}.btn-secondary{background:transparent;color:var(--brand);border:1.5px solid var(--brand)}.btn-secondary:hover:not(:disabled){background:var(--brand-soft)}.btn-ghost{background:transparent;color:var(--ink-2)}.btn-ghost:hover:not(:disabled){background:var(--line);color:var(--ink)}.btn-gold{background:var(--gold);color:#fff}.btn-gold:hover:not(:disabled){background:#b07620}.btn-sm{padding:.375rem .875rem;font-size:.875rem}.btn-lg{padding:.875rem 1.75rem;font-size:1.0625rem;border-radius:var(--radius-lg)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.card-hover{transition:box-shadow var(--duration-base) var(--ease),border-color var(--duration-base) var(--ease),transform var(--duration-base) var(--ease)}.card-hover:hover{box-shadow:var(--shadow-md);border-color:var(--line-2);transform:translateY(-2px)}.input{width:100%;border-radius:var(--radius-md);border:1.5px solid var(--line);background:var(--surface-2);padding:.625rem .875rem;font-family:var(--font-body);font-size:.9375rem;color:var(--ink);transition:border-color var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}.input::placeholder{color:var(--ink-3)}.input:hover{border-color:var(--line-2)}.input:focus{outline:none;border-color:var(--brand);background:var(--surface);box-shadow:var(--shadow-focus)}.badge{display:inline-flex;align-items:center;gap:.25rem;border-radius:var(--radius-full);padding:.125rem .625rem;font-size:.75rem;font-weight:600}.badge-brand{background:var(--brand-soft);color:var(--brand-ink)}.badge-gold{background:var(--gold-soft);color:#7a4e0f}.badge-success{background:#dcfce7;color:#15803d}.badge-warning{background:#fff7ed;color:#c2410c}.badge-neutral{background:var(--line);color:var(--ink-2)}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--brand)}.section{padding:5rem 0}.section-sm{padding:3rem 0}.stars{color:var(--gold);letter-spacing:.05em}
