/* Blog — standalone page (blog.html). Same shell pattern as faq.css's
   .faq-page: a centered content column under the shared header/footer.
   Articles are full mini-posts directly on the page (not teasers with a
   "read more" link to a detail page that doesn't exist) — there is
   nothing here for a click to fail to deliver on. */
:root{
  --blue-dark:#0f3d28;
  --blue-mid:#1f7a52;
  --blue-bright:#27935f;
  --accent-orange:#f39c1f;
}

.blog-page{max-width:1400px;margin:0 auto;padding:32px 16px 64px;}
.blog-page .breadcrumb{margin:0 0 18px;font-size:13px;color:#6b8f7e;}
.blog-page .breadcrumb a{color:var(--blue-mid);text-decoration:none;font-weight:500;}
.blog-page .breadcrumb a:hover{text-decoration:underline;}

.blog-page-header{margin-bottom:30px;}
.blog-page-title{margin:0 0 10px;font-size:32px;font-family:var(--font-heading);font-weight:700;color:var(--blue-dark);}
.blog-page-intro{margin:0;max-width:620px;font-size:15px;line-height:1.6;color:#4a6d5c;font-weight:400;}

.blog-category{margin-top:40px;}
.blog-category:first-of-type{margin-top:0;}
.blog-category-title{
  margin:0 0 14px;
  font-size:13px;
  font-family:var(--font-heading);
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--blue-mid);
}

.blog-article-list{display:flex;flex-direction:column;gap:14px;}

.blog-article{
  background:#fff;
  border-radius:22px;
  box-shadow:0 4px 14px -9px rgba(15,31,61,.28);
  padding:22px 26px 24px;
}

.blog-article-meta{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
  font-size:12px;
  font-weight:400;
  color:#6b8f7e;
}
.blog-article-tag{
  padding:3px 10px;
  border-radius:999px;
  background:#eafaf2;
  color:var(--blue-mid);
  font-size:11px;
  font-weight:500;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.blog-article-dot{width:3px;height:3px;border-radius:50%;background:#b7c2cf;flex:0 0 auto;}

.blog-article-title{margin:0 0 10px;font-size:18px;font-family:var(--font-heading);font-weight:700;color:var(--blue-dark);}

.blog-article p{margin:0 0 10px;font-size:14px;line-height:1.65;color:#3a495b;font-weight:400;}
.blog-article p:last-child{margin-bottom:0;}

.blog-contact-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  margin-top:44px;
  padding:26px 28px;
  border-radius:22px;
  background:linear-gradient(135deg, var(--blue-dark), var(--blue-mid));
  color:#fff;
}
.blog-contact-cta h3{margin:0 0 4px;font-size:17px;font-family:var(--font-heading);font-weight:600;}
.blog-contact-cta p{margin:0;font-size:13px;opacity:.85;font-weight:400;}
.blog-contact-cta a{
  flex:0 0 auto;
  padding:11px 22px;
  border-radius:999px;
  background:#fff;
  color:var(--blue-dark);
  font-weight:600;
  font-size:13px;
  text-decoration:none;
  white-space:nowrap;
  transition:background .16s ease;
}
.blog-contact-cta a:hover{background:#eafaf2;}

@media (max-width:640px){
  .blog-page-title{font-size:26px;}
  .blog-article{padding:18px 18px 20px;}
  .blog-contact-cta{flex-direction:column;align-items:flex-start;}
}
