:root{--ink:#1c1b19;--ink-soft:#4a4741;--stone:#ede9e2;--stone-dark:#ddd7cb;--paper:#fff;--forest:#2f4538;--forest-dark:#22332a;--brass:#b08d57;--line:#ddd7cb;--error:#a3372f;--font-display:"Fraunces",Georgia,serif;--font-body:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--radius:3px;--shadow:0 1px 2px rgba(28,27,25,.06),0 4px 16px rgba(28,27,25,.04)}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--stone);color:var(--ink);font-family:var(--font-body);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;color:var(--ink);margin:0 0 .4em;line-height:1.15}h1{font-size:2.2rem}h2{font-size:1.6rem}h3{font-size:1.15rem}a{color:var(--forest);text-decoration:none}a:hover{text-decoration:underline}p{margin:0 0 1em;color:var(--ink-soft)}.eyebrow{font-family:var(--font-body);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);font-weight:600;display:block;margin-bottom:.5em}.container{max-width:1120px;margin:0 auto;padding:0 24px}.container-narrow{max-width:480px;margin:0 auto;padding:0 24px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);font-family:var(--font-body);font-size:.85rem;font-weight:600;letter-spacing:.03em;padding:12px 22px;border-radius:var(--radius);cursor:pointer;transition:opacity .15s ease,transform .1s ease}.btn,.btn:hover{text-decoration:none}.btn:hover{opacity:.85}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-outline{background:transparent;color:var(--ink);border:1px solid var(--ink)}.btn-outline:hover{background:var(--ink);color:var(--paper)}.btn-forest{background:var(--forest);border-color:var(--forest)}.btn-full{width:100%}label{display:block;font-size:.8rem;font-weight:600;margin-bottom:6px;color:var(--ink-soft)}input,select,textarea{width:100%;font-family:var(--font-body);font-size:.95rem;padding:11px 13px;border:1px solid var(--stone-dark);border-radius:var(--radius);background:var(--paper);color:var(--ink)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--forest);box-shadow:0 0 0 3px rgba(47,69,56,.12)}.field{margin-bottom:16px}.error-text{color:var(--error);font-size:.85rem;margin-top:8px}.card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.card,.nav{background:var(--paper)}.nav{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;z-index:10}.nav-brand{font-family:var(--font-display);font-size:1.3rem;font-weight:600;color:var(--ink);letter-spacing:.01em}.nav-links{display:flex;align-items:center;gap:26px}.nav-link{font-size:.85rem;font-weight:500;color:var(--ink-soft);padding-bottom:3px;border-bottom:1px solid transparent}.nav-link.active,.nav-link:hover{color:var(--ink);border-bottom-color:var(--brass);text-decoration:none}.nav-btn{background:none;border:none;font-family:var(--font-body);font-size:.85rem;color:var(--ink-soft);cursor:pointer;padding:0}.nav-btn:hover{color:var(--ink)}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-gap:28px;gap:28px}.product-card{display:block}.product-card img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius);background:var(--stone-dark);margin-bottom:12px}.product-title{font-family:var(--font-body);font-size:.92rem;font-weight:500;color:var(--ink);margin-bottom:4px}.product-price{font-family:var(--font-display);font-size:1rem;color:var(--brass);font-weight:600}.section{padding:48px 0}.text-center{text-align:center}.muted{color:var(--ink-soft);font-size:.88rem}.divider{border:none;border-top:1px solid var(--line);margin:24px 0}.badge{display:inline-block;font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:3px 9px;border-radius:20px;background:var(--stone);color:var(--ink-soft)}.badge-success{background:#e4ede4;color:var(--forest-dark)}.badge-warn{background:#f5e9d8;color:#8a5a1e}.empty-state{text-align:center;padding:60px 20px;color:var(--ink-soft)}