/* Blog listing page */

.dark-block{background:linear-gradient(165deg,#081327 0%,#0d2148 55%,#123362 100%);}
.blog-page .hero{padding:44px 0;color:var(--white);background:none;}
.blog-page .hero h1{margin:0;font-size:40px;font-weight:800;letter-spacing:.01em;line-height:1.05;}
.blog-page .hero p{margin:16px 0 0;font-size:15px;color:var(--muted);max-width:62ch;line-height:1.6;}

.blog-page .nav a[href="/blog/"],
.blog-page .mobile-nav a[href="/blog/"]{opacity:1;}

.filters{padding:26px 0;border-bottom:1px solid var(--border);}
.filters__row{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;-ms-overflow-style:none;scrollbar-width:none;}
.filters__row::-webkit-scrollbar{display:none;}
.filter-btn{
  flex:0 0 auto;
  padding:9px 18px;
  border-radius:999px;
  border:1.5px solid var(--border);
  background:var(--white);
  color:var(--muted-dark);
  font-size:13px;
  font-weight:600;
  white-space:nowrap;
  transition:all .2s ease;
}
.filter-btn:hover{border-color:var(--blue-600);color:var(--blue-600);}
.filter-btn.is-active{background:var(--navy-900);border-color:var(--navy-900);color:var(--white);}

.posts{padding:40px 0 60px;}
.posts__grid{display:grid;grid-template-columns:1fr;gap:24px;}
.post-card{
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:22px;
  border:1px solid var(--border);
  border-radius:var(--radius-md);
  transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.post-card:hover{border-color:var(--blue-600);box-shadow:0 16px 30px -18px rgba(12,28,58,.35);transform:translateY(-2px);}
.post-card__tag{
  align-self:flex-start;
  font-size:11px;
  font-weight:700;
  letter-spacing:.03em;
  text-transform:uppercase;
  color:var(--blue-600);
  background:#eaf0fb;
  padding:5px 11px;
  border-radius:999px;
}
.post-card h3{margin:0;font-size:17px;font-weight:800;line-height:1.3;color:var(--navy-900);}
.post-card p{
  margin:0;
  font-size:13px;
  color:var(--muted-dark);
  line-height:1.55;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.post-card__more{
  margin-top:auto;
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:13px;
  font-weight:700;
  color:var(--blue-600);
}
.post-card__more svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease, stroke-width .2s ease;}
.post-card:hover .post-card__more svg{transform:translateX(4px);stroke-width:2.6;}
.posts__empty{display:none;text-align:center;color:var(--muted-dark);font-size:14px;padding:40px 0;}

.eyebrow{font-size:22px;font-weight:800;letter-spacing:.02em;text-align:center;margin:0 0 34px;}
.contact{padding:56px 0;background:linear-gradient(160deg,#0c1c3a,#081327);color:var(--white);}
.contact h2{color:var(--white);}
.contact form{display:flex;flex-direction:column;gap:16px;}
.field{display:flex;flex-direction:column;gap:8px;}
.field label{font-size:12px;color:var(--muted);}
.field input,.field select,.field textarea{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.25);
  border-radius:10px;
  padding:13px 14px;
  color:var(--white);
  font-size:14px;
  outline:none;
  font-family:inherit;
}
.field select{appearance:none;-webkit-appearance:none;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="2"><polyline points="6 9 12 15 18 9"/></svg>');background-repeat:no-repeat;background-position:right 14px center;background-size:16px;}
.field textarea{resize:vertical;min-height:100px;}
.field input::placeholder,.field textarea::placeholder{color:rgba(255,255,255,.45);}
.attach{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--white);opacity:.85;cursor:pointer;}
.attach svg{width:16px;height:16px;}
.consent{display:flex;align-items:flex-start;gap:10px;font-size:12px;color:var(--muted);line-height:1.5;}
.consent input{margin-top:2px;accent-color:var(--blue-600);}
.consent a{text-decoration:underline;}
.contact .btn--filled-white{align-self:center;margin-top:6px;min-width:200px;}

@media (min-width:560px){
  .blog-page .hero h1{font-size:50px;}
  .posts__grid{grid-template-columns:1fr 1fr;}
}

@media (min-width:1024px){
  .blog-page .hero h1{font-size:56px;}
  .blog-page .hero p{font-size:16px;}
  .eyebrow{font-size:28px;}
  .posts__grid{grid-template-columns:repeat(3,1fr);gap:28px;}
  .contact__inner{display:flex;gap:60px;align-items:flex-start;}
  .contact h2{text-align:left;flex:0 0 30%;margin:0;}
  .contact form{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:16px 24px;}
  .field--full{grid-column:1 / -1;}
  .contact .btn--filled-white{grid-column:1 / -1;justify-self:start;margin-top:0;}
}
