
:root{
  --bg:#F9F7F4;
  --card:#FFFFFF;
  --text:#2A2A2A;
  --muted:#8B877D;
  --sage:#A7BFA0;
  --sage-dark:#2D6A4F;
  --border:#EDEAE4;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.6}
h1,h2,h3{font-family:"Playfair Display",Georgia,serif;color:#1E1E1B;letter-spacing:.2px}
a{color:var(--sage-dark);text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1100px;margin:0 auto;padding:24px}
.site-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--border);position:sticky;top:0;background:rgba(249,247,244,.92);backdrop-filter:blur(8px);z-index:20}
.logo{display:flex;gap:10px;align-items:center;font-weight:700;color:var(--text)}
.nav a{margin:0 10px;color:var(--text);opacity:.9}
.nav a:hover{opacity:1;color:var(--sage-dark)}
.affiliate-banner{background:#F2EFEA;color:#6B705C;font-size:.9rem;padding:8px 16px;text-align:center;border-bottom:1px solid var(--border)}
.hero{padding:32px 0}
.hero h1{font-size:clamp(30px,4vw,44px);margin:0 0 8px}
.search{display:flex;gap:8px;margin-top:12px}
.search input{flex:1;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:#FFFFFF;color:var(--text)}
.search button{padding:10px 16px;border-radius:12px;border:1px solid var(--border);background:var(--sage);color:#0b0b0f;cursor:pointer;font-weight:600}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.card{background:var(--card);border:1px solid var(--border);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 6px 18px rgba(0,0,0,.05)}
.card img{width:100%;height:180px;object-fit:cover;background:#eee}
.card .pad{padding:16px}
.card h3{margin:0 0 8px;font-size:1.15rem}
.badge{display:inline-block;font-size:.75rem;padding:3px 9px;border:1px solid var(--border);border-radius:999px;color:#6B705C;background:#F2EFEA;margin-right:6px}
.btn{display:inline-block;background:var(--sage-dark);color:#fff;padding:10px 14px;border-radius:12px;border:0;font-weight:700;cursor:pointer}
.btn.secondary{background:transparent;color:var(--sage-dark);border:1px solid var(--sage-dark)}
.site-footer{border-top:1px solid var(--border);padding:24px;text-align:center;color:var(--muted)}
.footer-links{display:flex;gap:14px;justify-content:center;margin-bottom:8px;flex-wrap:wrap}
.prose h1,.prose h2{margin-top:0}
.prose{max-width:800px;margin:0 auto}
.page-header h1{margin:0 0 8px}
.contact-form{max-width:600px;margin:0 auto;display:grid;gap:12px}
.contact-form input,.contact-form textarea{width:100%;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:#FFFFFF;color:var(--text)}
.checkbox{display:flex;gap:8px;align-items:flex-start}
.note{color:var(--muted);font-size:.95rem}
.cookie-banner{position:fixed;bottom:16px;left:16px;right:16px;background:var(--card);border:1px solid var(--border);border-radius:16px;padding:12px 16px;display:flex;justify-content:space-between;align-items:center;gap:12px;box-shadow:0 2px 10px rgba(0,0,0,.08)}
.preview-price{color:var(--muted);font-size:.85rem}
