*{box-sizing:border-box}body{margin:0;font:17px/1.65 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#2b2a26;background:#fbf8f2}
a{color:#3f6248}img{max-width:100%;height:auto;display:block}
.wrap{max-width:1140px;margin:0 auto;padding:0 18px}
header.site{background:#fff;border-bottom:1px solid #ece5d8}
.top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:14px 0}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:#2b2a26}
.logo b{font-family:Georgia,serif;font-size:1.45rem;letter-spacing:.3px}
nav a{margin-left:16px;text-decoration:none;color:#555;font-size:.95rem}
.ad{margin:18px auto;text-align:center;border:1px dashed #d9cfbd;border-radius:10px;color:#9a907e;font-size:.8rem;display:flex;align-items:center;justify-content:center}
.ad a{color:#9a907e}.ad-leader{max-width:728px;min-height:90px}.ad-content{min-height:250px;max-width:336px}.ad-side{min-height:600px;width:300px}
.hero{padding:34px 0 10px;text-align:center}.hero h1{font-family:Georgia,serif;font-size:2.2rem;margin:.2em 0}.hero p{color:#666;max-width:640px;margin:0 auto}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px;padding:24px 0 40px}
.card{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.07);text-decoration:none;color:inherit;transition:transform .15s}
.card:hover{transform:translateY(-3px)}.card img{aspect-ratio:4/3;object-fit:cover;width:100%}.card div{padding:14px 16px 18px}.card h2{font-family:Georgia,serif;font-size:1.15rem;margin:0 0 6px}.card p{margin:0;color:#666;font-size:.92rem}
.layout{display:grid;grid-template-columns:1fr;gap:34px;padding:26px 0 50px}
@media(min-width:1000px){.layout{grid-template-columns:minmax(0,1fr) 300px}}
aside{display:none}@media(min-width:1000px){aside{display:block}}
article h1{font-family:Georgia,serif;font-size:2rem;line-height:1.2;margin:.2em 0 .4em}
article h2{font-family:Georgia,serif;font-size:1.4rem;margin:1.6em 0 .4em}
.disc{background:#f1ede3;border-left:4px solid #3f6248;padding:10px 14px;font-size:.88rem;border-radius:6px}
.hero-img{border-radius:14px;margin:16px 0;aspect-ratio:4/3;object-fit:cover;width:100%}
.shop{background:#fff;border:1px solid #ece5d8;border-radius:12px;padding:6px 20px 14px;margin-top:28px}
.pin{max-width:340px;margin:30px auto;text-align:center;font-size:.85rem;color:#777}.pin img{border-radius:12px}
.credit{font-size:.8rem;color:#888}
footer{background:#2f3b31;color:#d9dfd5;padding:26px 0;font-size:.9rem}footer a{color:#fff;margin-right:14px}
.page{max-width:760px;padding:30px 18px 60px}
.sec-h{display:flex;justify-content:space-between;align-items:baseline;margin-top:26px;border-bottom:2px solid #3f6248}.sec-h h2{font-family:Georgia,serif;font-size:1.6rem;margin:0 0 6px}.sec-h a{font-size:.95rem}
.tag{display:inline-block;background:#3f6248;color:#fff;font-size:.72rem;letter-spacing:.5px;text-transform:uppercase;padding:2px 8px;border-radius:20px;margin-bottom:6px}
.research{background:#eef3ee;border:1px solid #cfdccf;padding:10px 14px;border-radius:8px;font-size:.9rem}
.sources{font-size:.9rem}