:root{--paper:#fbf8f3;--cream:#fffdf9;--ink:#322f2a;--muted:#6f6a62;--clay:#c2724e;--clay-deep:#a3573a;--sage:#7c9885;--sage-deep:#4f6b58;--gold:#c89a4d;--line:#ece4d7;--shadow-lg:0 24px 60px -20px rgba(70,55,40,.30);--maxw:1100px;--read:720px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:'Nunito Sans',-apple-system,sans-serif;font-size:18px;line-height:1.75;-webkit-font-smoothing:antialiased}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
h1,h2,h3,h4{font-family:'Fraunces',Georgia,serif;font-weight:600;line-height:1.15;letter-spacing:-.01em}
a{color:var(--clay-deep)}
.mk{width:34px;height:34px}
.eyebrow{font-weight:800;font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--clay)}
.hd{position:sticky;top:0;z-index:40;background:rgba(251,248,243,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.hd__in{display:flex;align-items:center;gap:22px;height:68px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:'Fraunces',serif;font-weight:600;font-size:1.28rem;color:var(--ink)}
.nav{display:flex;gap:22px;margin-left:6px}
.nav a{text-decoration:none;color:var(--ink);font-weight:700;font-size:15px;opacity:.82}
.nav a:hover{opacity:1;color:var(--clay-deep)}
.btn{margin-left:auto;display:inline-flex;align-items:center;gap:8px;background:var(--clay);color:#fff;text-decoration:none;font-weight:800;font-size:14.5px;padding:11px 20px;border-radius:999px;border:0;cursor:pointer;transition:.18s}
.btn:hover{background:var(--clay-deep);transform:translateY(-1px)}
.btn--lg{padding:15px 28px;font-size:16px}
.crumb{font-size:13px;color:var(--muted);margin-bottom:14px}
.crumb a{color:var(--muted);text-decoration:none}.crumb a:hover{color:var(--clay-deep)}
.crumb span{margin:0 6px;opacity:.5}
/* article */
.article__head{padding:44px 24px 8px;max-width:var(--read)}
.article__k{font-weight:800;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--clay)}
.article h1{font-size:clamp(2rem,5vw,2.9rem);margin:10px 0 12px}
.article__meta{color:var(--muted);font-size:14.5px;margin:0}
.prose{max-width:var(--read);padding-top:14px;padding-bottom:30px}
.prose p{margin:0 0 20px}
.prose h2{font-size:1.62rem;margin:38px 0 14px}
.prose h3{font-size:1.28rem;margin:28px 0 10px;color:var(--sage-deep)}
.prose ul,.prose ol{margin:0 0 22px;padding-left:24px}
.prose li{margin:0 0 9px}
.prose a{color:var(--clay-deep);text-decoration:underline;text-decoration-color:rgba(162,87,58,.35);text-underline-offset:2px}
.prose a:hover{text-decoration-color:var(--clay-deep)}
.prose strong{color:#231f1b}
.prose blockquote{margin:24px 0;padding:14px 20px;background:var(--cream);border-left:4px solid var(--sage);border-radius:0 10px 10px 0;color:#46443f}
.prose blockquote p:last-child{margin:0}
.prose table{width:100%;border-collapse:collapse;margin:8px 0 24px;font-size:15px;background:var(--cream);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.prose th{background:var(--sage-deep);color:#fff;text-align:left;padding:10px 12px;font-size:13.5px}
.prose td{padding:10px 12px;border-top:1px solid var(--line);vertical-align:top}
.prose h2:first-child,.prose h3:first-child{margin-top:0}
.prose hr{border:0;border-top:1px solid var(--line);margin:30px 0}
/* product card in articles */
.pcard{display:grid;grid-template-columns:200px 1fr;gap:22px;align-items:center;margin:40px 0 10px;padding:22px;background:var(--cream);border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 30px -18px rgba(70,55,40,.3)}
.pcard__media{display:block;border-radius:12px;overflow:hidden;background:#f3ede2}
.pcard__media img{width:100%;display:block}
.pcard__k{font-weight:800;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.pcard__body h3{font-size:1.32rem;margin:5px 0 6px}
.pcard__body p{margin:0 0 14px;color:var(--muted);font-size:15px}
.pcard__row{display:flex;align-items:center;gap:16px}
.pcard__price{font-family:'Fraunces',serif;font-weight:600;font-size:1.35rem}
.pbtn{background:var(--clay);color:#fff;text-decoration:none;font-weight:800;font-size:14px;padding:11px 20px;border-radius:999px}
.pbtn:hover{background:var(--clay-deep)}
/* related */
.rel{border-top:1px solid var(--line);margin-top:36px;padding-top:26px;padding-bottom:10px}
.rel__h{font-size:1.3rem;margin:0 0 16px}
.rel__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.rel__card{display:block;text-decoration:none;color:var(--ink);background:var(--cream);border:1px solid var(--line);border-radius:14px;padding:18px;transition:.2s}
.rel__card:hover{transform:translateY(-3px);box-shadow:0 14px 30px -18px rgba(70,55,40,.35)}
.rel__k{font-weight:800;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--clay)}
.rel__card h4{font-size:1.05rem;margin:7px 0 12px;line-height:1.25}
.rel__more{font-weight:800;font-size:13px;color:var(--clay-deep)}
/* blog index */
.bhero{padding:58px 0 26px;text-align:center}
.bhero h1{font-size:clamp(2rem,5vw,3rem);margin:14px 0 12px}
.bhero p{color:var(--muted);font-size:1.15rem;max-width:60ch;margin:0 auto}
.bsec{padding:26px 24px}
.bsec__h{font-size:1.5rem;display:flex;align-items:center;gap:12px;margin:18px 0 18px}
.dot{width:14px;height:14px;border-radius:50%;display:inline-block}.dot.puppy{background:var(--clay)}.dot.mem{background:var(--sage)}
.bgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.bcard{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);background:var(--cream);border:1px solid var(--line);border-radius:16px;padding:22px;transition:.2s}
.bcard:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.bcard__k{font-weight:800;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--clay)}
.bcard h3{font-size:1.22rem;margin:10px 0 9px;line-height:1.25}
.bcard p{color:var(--muted);font-size:14.5px;margin:0 0 16px;flex:1}
.bcard__more{font-weight:800;font-size:13px;color:var(--clay-deep)}
.bcta{padding:30px 24px 70px}
.bcta__box{background:linear-gradient(150deg,var(--sage-deep),#3f5749);color:#fff;border-radius:22px;padding:46px;text-align:center}
.bcta__box h2{font-size:1.8rem;color:#fff}
.bcta__box p{color:rgba(255,255,255,.88);margin:10px 0 22px}
/* product page */
.pp-hero{padding:34px 0 8px}
.pp-hero__in{display:grid;grid-template-columns:420px 1fr;gap:46px;align-items:center}
.pp-hero__media{border-radius:18px;overflow:hidden;background:#f3ede2;box-shadow:var(--shadow-lg)}
.pp-hero__media img{width:100%;display:block}
.pp-hero__body h1{font-size:clamp(1.9rem,4vw,2.6rem);margin:6px 0 10px}
.pp-tag{font-family:'Fraunces',serif;font-style:italic;font-size:1.2rem;color:var(--muted);margin:0 0 22px}
.pp-buyrow{display:flex;align-items:center;gap:18px;margin-bottom:12px}
.pp-price{font-family:'Fraunces',serif;font-weight:600;font-size:2rem}
.pp-buy{background:var(--clay);color:#fff;text-decoration:none;font-weight:800;font-size:16px;padding:14px 28px;border-radius:999px;box-shadow:0 10px 24px -10px rgba(162,87,58,.7);transition:.18s}
.pp-buy:hover{background:var(--clay-deep);transform:translateY(-2px)}
.pp-note{font-size:13.5px;color:var(--muted);margin:0;display:flex;align-items:center;gap:6px}
.pp-body{padding-top:18px}
.pp-body h2{color:var(--ink)}
/* footer */
.ft{background:#2c2924;color:#cfc7ba;margin-top:30px;padding:48px 0 36px}
.ft__in{text-align:center}
.ft .brand{color:#fff;justify-content:center;margin-bottom:10px}
.ft p{font-size:14px;margin:6px 0}
.ft__links a{color:#cfc7ba;text-decoration:none}.ft__links a:hover{color:#fff}
.ft__c{color:#8c8475;font-size:12.5px;margin-top:14px}
@media (max-width:900px){.pp-hero__in{grid-template-columns:1fr;gap:24px}.pp-hero__media{max-width:420px}}
@media (max-width:820px){.rel__grid,.bgrid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){body{font-size:17px}.nav{display:none}.pcard{grid-template-columns:1fr;text-align:left}.pcard__media{max-width:200px}.rel__grid,.bgrid{grid-template-columns:1fr}.pp-buyrow{flex-wrap:wrap}}
