@font-face{font-family:'Fraunces';font-style:normal;font-weight:600 800;font-display:swap;src:url(/fonts/Fraunces.woff2) format('woff2')}
@font-face{font-family:'Nunito Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/NunitoSans.woff2) format('woff2')}
:root{--bg:#fbf6ee;--fg:#2b2622;--muted:#6f655c;--accent:#b5562b;--accent2:#d9822b;--gold:#e0a43a;--sage:#6f8f5a;--navy:#2f3a5a;--card:#fff;--line:#eadfce;--cream:#f6ead8;--r:16px;--shadow:0 6px 24px rgba(91,58,41,.08)}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font:17px/1.7 'Nunito Sans',system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--fg);background:var(--bg)}
h1,h2,h3,.logo{font-family:'Fraunces',Georgia,serif;line-height:1.2;color:#3a2a20}
a{color:var(--accent)}img{max-width:100%;height:auto;display:block}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}.narrow{max-width:760px;margin:0 auto}
header.site{background:rgba(251,246,238,.92);backdrop-filter:blur(6px);position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:10px;padding-bottom:10px}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.45rem;text-decoration:none;color:#3a2a20}.logo img{width:38px;height:38px}.logo span{color:var(--accent)}
nav a{margin-left:18px;text-decoration:none;color:var(--muted);font-weight:700;font-size:.95rem}nav a:hover{color:var(--accent)}
.hero{background:linear-gradient(135deg,#f6e3c9,#f3d2b0 60%,#efc39b);border-bottom:1px solid var(--line)}
.hero .wrap{display:grid;grid-template-columns:1.1fr 1fr;gap:28px;align-items:center;padding-top:44px;padding-bottom:44px}
.hero h1{font-size:2.8rem;margin:0 0 .3em}.hero p{font-size:1.15rem;color:#5b4636;margin:0 0 1em}
.hero img{border-radius:var(--r);box-shadow:var(--shadow)}
.pill{display:inline-block;background:#fff;border:1px solid var(--line);border-radius:999px;padding:4px 12px;font-size:.85rem;font-weight:700;color:var(--accent);margin:0 6px 6px 0}
main{padding:34px 0 56px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}
.post-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:transform .15s}
.post-card:hover{transform:translateY(-3px)}.post-card img{background:#f3e3cf;aspect-ratio:2/1;object-fit:cover;width:100%}
.post-card .body{padding:16px 18px 20px}.post-card h3{margin:.2em 0 .35em;font-size:1.25rem}.post-card p{margin:0;color:var(--muted);font-size:.95rem}
.meta{color:var(--muted);font-size:.9rem}
.post-hero{border-radius:var(--r);box-shadow:var(--shadow);margin:6px 0 18px;aspect-ratio:2/1;object-fit:cover;width:100%}
article h1{font-size:2.3rem;margin:.2em 0 .2em}article h2{margin-top:1.8em;font-size:1.6rem}
.byline{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.92rem;margin-bottom:6px}.byline img{width:32px;height:32px}
.disclosure{background:#fff4e6;border:1px solid #f0d6bd;border-left:5px solid var(--accent2);border-radius:10px;padding:10px 14px;font-size:.92rem;margin:14px 0 20px}
.quick{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:6px 4px 10px;margin:20px 0 26px}
.quick h2{margin:12px 16px 6px;font-size:1.3rem}
.qt{width:100%;border-collapse:collapse;font-size:.95rem}.qt th{text-align:left;color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;padding:8px 12px;border-bottom:1px solid var(--line)}
.qt td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:middle}.qt tr:last-child td{border-bottom:0}
.qt tr.top td{background:#fff7ec}.qt .ic{font-size:1.4rem;width:44px;text-align:center}
.qt a.name{font-weight:700;text-decoration:none;color:var(--fg)}.qt a.name:hover{color:var(--accent)}
.btn{display:inline-block;background:var(--accent);color:#fff;text-decoration:none;font-weight:800;padding:12px 20px;border-radius:12px;min-height:44px;box-shadow:0 3px 0 #8f3f22;transition:filter .15s,transform .1s}
.btn:hover{filter:brightness(1.06)}.btn:active{transform:translateY(2px);box-shadow:0 1px 0 #8f3f22}
.btn.sm{padding:8px 14px;font-size:.88rem;min-height:36px;white-space:nowrap}.btn.ghost{background:#fff;color:var(--accent);border:2px solid var(--accent);box-shadow:none}
.toc{background:var(--cream);border-radius:var(--r);padding:14px 18px;margin:0 0 20px}.toc strong{display:block;margin-bottom:4px}
.toc ol{margin:0;padding-left:1.2em;columns:2;column-gap:28px}.toc a{text-decoration:none}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:20px;margin:22px 0;display:grid;grid-template-columns:120px 1fr;gap:20px;scroll-margin-top:80px}
.card .tile{width:120px;height:120px;border-radius:14px;background:linear-gradient(135deg,#f6e3c9,#efc39b);display:flex;align-items:center;justify-content:center;font-size:3.4rem}
.card h3{margin:0 0 .2em;font-size:1.3rem}.badge{display:inline-block;background:var(--sage);color:#fff;font-size:.78rem;font-weight:800;border-radius:999px;padding:3px 10px;margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}
.facts{margin:.4em 0 .6em;padding-left:1.2em}.price{font-weight:800;font-size:1.15rem;color:#3a2a20}.small{font-size:.84rem;color:var(--muted)}
.author{display:flex;gap:16px;align-items:flex-start;background:var(--cream);border-radius:var(--r);padding:18px;margin-top:34px}.author img{width:56px;height:56px;flex:none}
footer.site{background:#3a2a20;color:#e9dccb;padding:36px 0 26px;font-size:.92rem}
footer.site .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px}footer.site a{color:#f2c46b}footer.site h4{font-family:'Fraunces',serif;color:#fff;margin:0 0 8px;font-size:1.05rem}
footer.site .disc{border-top:1px solid #5b4636;margin-top:20px;padding-top:14px}
@media (max-width:800px){.hero .wrap{grid-template-columns:1fr;padding-top:28px;padding-bottom:28px}.hero h1{font-size:2.1rem}footer.site .cols{grid-template-columns:1fr}.toc ol{columns:1}}
@media (max-width:620px){body{font-size:16px}article h1{font-size:1.75rem}nav a{margin-left:12px}.logo{font-size:1.2rem}
.card{grid-template-columns:1fr;gap:12px}.card .tile{width:100%;height:90px;font-size:2.6rem}
.qt thead{display:none}.qt tr{display:grid;grid-template-columns:44px 1fr auto;gap:2px 8px;padding:10px 8px;border-bottom:1px solid var(--line)}.qt td{border:0;padding:0}
.qt td.ic{grid-row:span 2}.qt td.bf{grid-column:2;font-size:.85rem;color:var(--muted)}.qt td.pr{grid-column:3;grid-row:1;text-align:right;font-weight:700}.qt td.go{grid-column:3;grid-row:2;text-align:right}}

.links{max-width:520px;margin:0 auto;text-align:center}.links h1{margin:.3em 0 .1em;font-size:2rem}.lavatar{width:88px;height:88px;margin:0 auto}
.linkbtn{display:flex;align-items:center;gap:14px;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:10px;margin:14px 0;text-decoration:none;color:var(--fg);font-weight:800;font-family:'Fraunces',Georgia,serif;font-size:1.05rem;line-height:1.3;transition:transform .15s}
.linkbtn:hover{transform:translateY(-2px)}.linkbtn img{width:110px;height:62px;object-fit:cover;border-radius:10px;flex:none;background:#f3e3cf}
.linkbtn.plain{justify-content:center;background:var(--accent);color:#fff;border:0;padding:16px}.links .disclosure{text-align:left;margin-top:22px}
/* partner (non-Amazon) posts */
.partners-section{margin-top:44px;padding-top:26px;border-top:2px dashed var(--line)}.partners-section h2{margin-top:0}
.post-card.partner-card{border-color:#c9d3e6;background:#f7f9fd}.partner-card .meta{color:var(--navy);font-weight:700}
.partner-pill{color:var(--navy);border-color:#c9d3e6;background:#eef2fa;margin-top:4px}
.disclosure.partner-disclosure{background:#eef2fa;border-color:#c9d3e6;border-left-color:var(--navy)}
.partner-author{background:#eef2fa}
/* hub + internal linking */
.hub-cta{display:flex;flex-direction:column;gap:4px;background:#fff7ec;border:1px solid var(--line);border-left:6px solid var(--accent);border-radius:var(--r);padding:16px 20px;margin:28px 0 8px;text-decoration:none;color:inherit;box-shadow:var(--shadow)}
.hub-cta strong{font-family:'Fraunces',serif;font-size:1.35rem}.hub-cta:hover{border-left-color:var(--accent2)}.hub-cta .pill{align-self:flex-start;margin:0}
.hub h1{font-size:2.4rem;margin:.3em 0 .2em}.hub .lede{font-size:1.1rem;color:var(--muted);max-width:760px}
.more-guides{background:#fff7ec;border:1px solid var(--line);border-radius:var(--r);padding:18px 22px;margin:32px 0}
.more-guides h2{margin-top:0}.more-guides ul{margin:.6em 0 0;padding-left:1.2em}.more-guides li{margin:.35em 0}.more-guides a{font-weight:700}
.hub{padding-top:28px}
