/* K Lab Blog — warm herbal (Fraunces + Hanken Grotesk) */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,500;0,9..144,600;1,9..144,400&family=Hanken+Grotesk:wght@400;500;600;700;800&display=swap');
:root{
  --green:#3d6b27; --green-d:#2b4f18; --green-l:#6aa543; --green-bg:#e8efdf;
  --accent:#d9982f; --ink:#1c2a16; --muted:#566048; --line:#e3dbc8;
  --bg:#f4f0e6; --card:#fff;
  --font-head:"Fraunces",Georgia,serif;
  --font-body:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font-body);background:var(--bg);color:var(--ink);line-height:1.65;font-optical-sizing:auto}
h1,h2,h3{font-family:var(--font-head);letter-spacing:-.01em;line-height:1.2;font-weight:600}
a{color:var(--green-d);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto}

/* header */
.bl-head{background:#fbf9f3;color:var(--ink);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
.bl-head-in{max-width:1000px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;flex-wrap:wrap}
.bl-brand{display:flex;align-items:center;gap:10px;color:var(--ink)}
.bl-brand:hover{text-decoration:none}
.bl-logo{width:auto;height:auto;background:none;border-radius:0;display:flex}
.bl-logo img{width:34px;height:34px}
.bl-wm{line-height:1}
.bl-k{font-family:-apple-system,BlinkMacSystemFont,'SF Pro Display','Segoe UI',Roboto,Helvetica,Arial,sans-serif;font-weight:800;font-size:19px;letter-spacing:-.02em;color:var(--ink)}
.bl-lab{font-family:-apple-system,BlinkMacSystemFont,'SF Pro Display','Segoe UI',Roboto,Helvetica,Arial,sans-serif;font-weight:500;font-size:19px;letter-spacing:.02em;color:var(--green)}
.bl-brand .bl-sub{display:block;font-family:-apple-system,BlinkMacSystemFont,'SF Pro Display','Segoe UI',Roboto,Helvetica,Arial,sans-serif;font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#5d7352;margin-top:2px}
.bl-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.bl-nav a{color:var(--green-d);font-weight:600;font-size:14px;padding:6px 10px;border-radius:8px}
.bl-nav a:hover{background:rgba(61,107,39,.10);text-decoration:none}
.bl-cta{background:var(--green);color:#fff!important;border-radius:8px;padding:7px 13px!important;font-weight:800}
.bl-langs{display:flex;gap:4px;margin-left:4px}
.bl-langs a{font-size:13px;padding:5px 9px;background:rgba(61,107,39,.10);border-radius:8px;color:var(--green-d)}
.bl-langs a.on{background:var(--green);color:#fff!important}

/* layout */
.bl-wrap{max-width:760px;margin:0 auto;padding:28px 18px 60px}
.bl-wrap.wide{max-width:1000px}
.bl-crumb{font-size:13px;color:var(--muted);margin-bottom:14px}
.bl-crumb a{color:var(--muted)}

/* blog home */
.bl-hero{text-align:center;padding:18px 0 26px}
.bl-hero h1{font-size:38px;margin:0 0 10px}
.bl-hero p{font-size:18px;color:var(--muted);max-width:620px;margin:0 auto}
.bl-yt{display:flex;align-items:center;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px 18px;margin:22px 0}
.bl-yt-ic{font-size:30px;flex:none}
.bl-yt b{display:block;font-family:var(--font-head);font-size:18px}
.bl-yt span{color:var(--muted);font-size:14px}
.bl-yt .bl-btn{margin-left:auto}
.bl-btn{display:inline-block;background:var(--green);color:#fff!important;border-radius:10px;padding:11px 18px;font-weight:700;white-space:nowrap}
.bl-btn:hover{background:var(--green-d);text-decoration:none}
.bl-btn.ghost{background:#fff;color:var(--green)!important;border:1px solid var(--line)}

.bl-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px;margin-top:8px;align-items:start}
.bl-card{display:block;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px;color:inherit;transition:box-shadow .18s,transform .18s}
.bl-card:hover{text-decoration:none;box-shadow:0 12px 28px -14px rgba(28,42,22,.25);transform:translateY(-1px)}
.bl-card .tag{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--accent)}
.bl-card h2{font-size:22px;margin:6px 0 8px}
.bl-card p{margin:0;color:var(--muted)}
.bl-card .date{font-size:13px;color:var(--muted);margin-top:10px;font-variant-numeric:tabular-nums}

/* category jump-nav + section headings */
.bl-catnav{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 4px;position:sticky;top:56px;z-index:4;
  background:var(--bg);padding:8px 0;border-bottom:1px solid transparent}
.bl-catnav a{font-size:13px;font-weight:700;color:var(--green-d);background:rgba(61,107,39,.09);
  border:1px solid var(--line);border-radius:999px;padding:6px 13px;transition:background .15s,color .15s}
.bl-catnav a:hover{background:var(--green);color:#fff;border-color:var(--green)}
.bl-cat{grid-column:1/-1;margin:26px 0 2px;padding-left:14px;position:relative;scroll-margin-top:112px;
  font-size:26px;color:var(--green-d);line-height:1.15}
.bl-cat:first-of-type{margin-top:12px}
.bl-cat::before{content:"";position:absolute;left:0;top:4px;bottom:6px;width:5px;border-radius:3px;background:var(--accent)}
.bl-cat .bl-cat-sub{display:block;font-family:var(--font-body);font-weight:400;font-size:14.5px;
  color:var(--muted);letter-spacing:0;margin-top:4px}
@media (max-width:600px){.bl-catnav{top:52px;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}
  .bl-catnav a{flex:0 0 auto}}

/* article */
.bl-art .tag{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--accent)}
.bl-art h1{font-size:34px;margin:6px 0 10px}
.bl-meta{color:var(--muted);font-size:14px;margin-bottom:8px}
.bl-art h2{font-size:24px;margin:30px 0 10px}
.bl-art p{font-size:18px;margin:14px 0}
.bl-art ul,.bl-art ol{font-size:18px;padding-left:22px}
.bl-art li{margin:8px 0}
.bl-fig{margin:28px 0;max-width:640px}
.bl-fig svg{width:100%;height:auto;filter:drop-shadow(0 8px 24px rgba(28,42,22,.08))}
.bl-fig figcaption{font-size:13.5px;color:var(--muted);margin-top:10px;text-align:center;font-style:italic}
.bl-guide{background:#fff;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:14px;padding:16px 20px;margin:28px 0}
.bl-guide-t{font-family:var(--font-head);font-size:19px;font-weight:600;color:var(--green-d);margin-bottom:4px}
.bl-guide p{margin:0 0 12px;font-size:15px;color:var(--muted)}
.bl-callout{background:var(--green-bg);border:1px solid var(--line);border-radius:14px;padding:18px 20px;margin:26px 0}
.bl-callout h3{margin:0 0 6px;font-size:20px}
.bl-disc{font-size:14px;color:var(--muted);font-style:italic;border-top:1px solid var(--line);margin-top:30px;padding-top:16px}
.bl-share{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}

/* footer */
.bl-foot{background:var(--green-d);color:#cfe0c2;font-size:14px}
.bl-foot-in{max-width:1000px;margin:0 auto;padding:26px 18px;display:flex;gap:18px;justify-content:space-between;flex-wrap:wrap}
.bl-foot a{color:#fff}
.bl-foot-links{display:flex;gap:16px;flex-wrap:wrap}

@media (max-width:560px){
  .bl-hero h1{font-size:30px} .bl-art h1{font-size:27px}
  .bl-yt{flex-wrap:wrap} .bl-yt .bl-btn{margin-left:0;width:100%;text-align:center}
}
.bl-hero-img{width:100%;display:block;border-radius:22px;border:1px solid var(--line);aspect-ratio:16/9;object-fit:cover;background:var(--green-bg)}
.bl-reviewed{font-size:13px;color:var(--muted);margin:2px 0 10px;font-style:italic}
.bl-sources{margin:30px 0 8px;border-top:1px solid var(--line);padding-top:16px}
.bl-sources h2{font-size:19px;margin:0 0 8px}
.bl-sources ul{margin:0;padding-left:20px}
.bl-sources li{font-size:14.5px;margin:6px 0}
.bl-sources a{color:var(--green-d);word-break:break-word}
