
:root{--bg:#faf9f7;--ink:#1a1a1a;--muted:#666;--accent:#2f6f4e}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.55}
a{color:var(--accent);text-decoration:none}
header{position:sticky;top:0;background:#fff;border-bottom:1px solid #eee;z-index:4}
.nav{max-width:1100px;margin:0 auto;display:flex;gap:18px;align-items:center;padding:14px 18px}
.nav a.logo{font-weight:700}
.container{max-width:1100px;margin:0 auto;padding:20px}
.hero{display:grid;gap:18px;grid-template-columns:1.2fr .8fr;align-items:center;padding:28px 0}
.hero img{width:100%;border-radius:10px;display:block}
.badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.badge{background:#eef6f0;color:#235f44;border:1px solid #cfe7d9;padding:6px 10px;border-radius:100px;font-size:13px}
h1{margin:0 0 8px;font-size:34px}
.sub{color:var(--muted)}
.section{padding:26px 0;border-top:1px solid #eee}
.grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
figure{margin:0;background:#fff;border:1px solid #eee;border-radius:12px;overflow:hidden}
figure img{width:100%;display:block}
figcaption{padding:10px 12px;font-size:14px;color:#333;border-top:1px solid #eee}
footer{margin:40px 0 80px;text-align:center;color:#555}
/* Reviews carousel */
.reviews{margin-top:10px}
.reviews .panel{display:none;opacity:0;transition:opacity .4s ease}
.reviews .panel.active{display:block;opacity:1}
.dots{display:flex;gap:8px;justify-content:center;margin-top:10px}
.dots button{width:10px;height:10px;border-radius:50%;border:0;background:#ddd;cursor:pointer}
.dots button.active{background:#666}
.rating-badge{margin:6px 0 12px;font-size:15px;color:#333}
