/* ==========================================================================
   Gerun Pack — Blog (list + article) styles
   Loaded only on /blog/ list page and article pages (bloglist.html / blog.html)
   Palette matches the site's quote block: green #4f7d22 / #3f6419
   ========================================================================== */

/* ---------- page hero (list + article) ---------- */
/* top padding clears the fixed navbar (80px desktop / 50px <=991px) */
.bl_hero{background:linear-gradient(120deg,#f4f7ef 0%,#e8f1da 100%);border-bottom:1px solid #e3e8dc;padding:96px 0 26px;}
.bl_hero_h1{font-size:29px;line-height:1.32;font-weight:800;color:#22301a;margin:0 0 8px;letter-spacing:-.01em;border:none;padding:0;}
.bl_hero_sub{font-size:14.5px;line-height:1.7;color:#5b6b4f;margin:0;max-width:760px;}
.bl_hero .bl_crumb{margin:0 0 10px;}
.bl_hero .bl_article_meta{border-bottom:none;padding:0;margin:6px 0 0;}
@media (max-width:991px){.bl_hero{padding:66px 0 22px;}}
@media (max-width:767px){.bl_hero{padding:62px 0 20px;}.bl_hero_h1{font-size:23px;}.bl_hero_sub{font-size:13.5px;}}

/* ---------- list page ---------- */
.bl_intro{color:#5b6b4f;font-size:15px;line-height:1.78;margin:0 0 26px;padding:0 0 20px;border-bottom:1px solid #e8ede3;}
.bl_list{display:flex;flex-direction:column;gap:22px;}

.bl_card{display:flex;gap:20px;background:#fff;border:1px solid #e6ebe0;border-radius:12px;padding:16px;transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease;}
.bl_card:hover{box-shadow:0 10px 26px rgba(79,125,34,.10);transform:translateY(-2px);border-color:#d5e0c8;}

.bl_thumb{flex:0 0 220px;height:150px;border-radius:9px;overflow:hidden;display:block;background:linear-gradient(135deg,#4f7d22,#8cb84f);}
.bl_thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease;}
.bl_card:hover .bl_thumb img{transform:scale(1.05);}
.bl_ph{display:block;width:100%;height:100%;}
/* PbootCMS falls back to /static/images/nopic.png when a post has no cover image:
   hide it so the thumb shows the green gradient instead of a broken-image icon */
.bl_thumb img[src*="nopic"]{display:none;}

.bl_body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;}
.bl_meta{font-size:12.5px;color:#8a957f;margin-bottom:8px;letter-spacing:.02em;}
.bl_meta time{color:#6f7d63;}
.bl_meta .bl_sep{color:#c9d3bf;margin:0 6px;}
.bl_title{font-size:20px;line-height:1.42;margin:0 0 10px;font-weight:700;}
.bl_title a{color:#22301a;text-decoration:none;transition:color .15s;}
.bl_title a:hover{color:#4f7d22;}
.bl_excerpt{font-size:14.5px;line-height:1.72;color:#5a6553;margin:0 0 14px;}
.bl_more{margin-top:auto;font-size:13.5px;font-weight:600;color:#4f7d22;text-decoration:none;}
.bl_more .bl_arrow{margin-left:4px;transition:margin .2s ease;display:inline-block;}
.bl_more:hover .bl_arrow{margin-left:9px;}
.bl_more:hover{color:#3f6419;}

@media (max-width:767px){
  .bl_card{flex-direction:column;gap:14px;}
  .bl_thumb{flex:none;width:100%;height:190px;}
  .bl_title{font-size:18px;}
  .bl_intro{font-size:14.5px;}
}

/* ---------- article page ---------- */
.bl_crumb{font-size:13px;color:#8a957f;margin:0 0 16px;line-height:1.6;}
.bl_crumb a{color:#4f7d22;text-decoration:none;}
.bl_crumb a:hover{text-decoration:underline;}
.bl_crumb .bl_csep{color:#c9d3bf;margin:0 7px;}
.bl_crumb .bl_ccur{color:#93a089;}

.bl_h1{font-size:30px;line-height:1.32;color:#1f2b18;margin:0 0 14px;font-weight:800;letter-spacing:-.01em;}
.bl_article_meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;color:#8a957f;padding:0 0 18px;margin:0 0 24px;border-bottom:1px solid #e8ede3;}
.bl_article_meta .bl_author{color:#4f7d22;font-weight:600;}
.bl_article_meta .bl_dot{color:#c9d3bf;}

.bl_content{font-size:16.5px;line-height:1.82;color:#333d2c;word-wrap:break-word;}
.bl_content p{margin:0 0 1.15em;}
.bl_content h2{font-size:23px;line-height:1.36;color:#1f2b18;margin:1.7em 0 .6em;font-weight:700;padding:0;border:none;}
.bl_content h3{font-size:19px;line-height:1.42;color:#2a3a20;margin:1.45em 0 .5em;font-weight:700;}
.bl_content h4{font-size:17px;line-height:1.45;color:#2a3a20;margin:1.25em 0 .45em;font-weight:700;}
.bl_content ul,.bl_content ol{margin:0 0 1.15em;padding-left:1.35em;}
.bl_content li{margin-bottom:.45em;}
.bl_content a{color:#3f6419;text-decoration:underline;text-underline-offset:2px;}
.bl_content a:hover{color:#2f4c11;}
.bl_content img{max-width:100%;height:auto;border-radius:8px;display:block;margin:1.4em auto;}
.bl_content blockquote{margin:1.4em 0;padding:14px 20px;background:#f5f8f1;border-left:4px solid #9dc46a;border-radius:0 8px 8px 0;color:#41503a;}
.bl_content blockquote p:last-child{margin-bottom:0;}
.bl_content table{width:100%;border-collapse:collapse;margin:1.4em 0;font-size:14.5px;}
.bl_content th,.bl_content td{border:1px solid #dfe6d7;padding:9px 12px;text-align:left;vertical-align:top;}
.bl_content th{background:#f3f7ee;font-weight:700;color:#2a3a20;}
.bl_content code{background:#f1f5ec;padding:2px 6px;border-radius:4px;font-size:.92em;}
.bl_content hr{border:none;border-top:1px solid #e8ede3;margin:2em 0;}

@media (max-width:767px){
  .bl_h1{font-size:24px;}
  .bl_content{font-size:16px;line-height:1.78;}
  .bl_content h2{font-size:20px;}
  .bl_content h3{font-size:18px;}
  .bl_content table{font-size:13.5px;}
}

/* ---------- in-article CTA ---------- */
.bl_cta{margin:34px 0 0;background:#4f7d22;border-radius:12px;padding:26px 28px;display:flex;flex-wrap:wrap;align-items:center;gap:18px;justify-content:space-between;}
.bl_cta p{color:#eef4e6;font-size:15px;line-height:1.65;margin:0;flex:1 1 300px;}
.bl_cta strong{display:block;color:#fff;font-size:19px;margin-bottom:6px;font-weight:700;}
.bl_cta a{flex:0 0 auto;background:#fff;color:#3f6419;font-weight:700;font-size:15px;padding:12px 26px;border-radius:8px;text-decoration:none;transition:background .2s;}
.bl_cta a:hover{background:#eaf3dd;color:#33510f;}
@media (max-width:767px){.bl_cta{padding:22px 20px;}.bl_cta a{width:100%;text-align:center;}}

/* ---------- sidebar ---------- */
.bl_side_list{list-style:none;padding:0;margin:0;}
.bl_side_list li{padding:9px 0;border-bottom:1px dashed #e2e8da;line-height:1.6;}
.bl_side_list li:last-child{border-bottom:none;}
.bl_side_list a{color:#4a5540;font-size:14px;text-decoration:none;display:block;}
.bl_side_list a:hover{color:#4f7d22;}
.bl_side_list .bl_side_date{display:block;font-size:11.5px;color:#a3ada0;margin-top:3px;}

.bl_side_cta{margin-top:22px;background:#f4f7ef;border:1px solid #e3e8dc;border-radius:10px;padding:20px;text-align:center;}
.bl_side_cta p{font-size:13.5px;color:#5a6553;line-height:1.65;margin:0 0 14px;}
.bl_side_cta a{display:inline-block;background:#3f6419;color:#fff;font-size:14px;font-weight:600;padding:10px 22px;border-radius:7px;text-decoration:none;transition:background .2s;}
.bl_side_cta a:hover{background:#33510f;color:#fff;}
