/* The blog footer owns its layout: it does not inherit the site's generic footer grids. */
.blog-footer-v45 { margin-block-start:56px; padding:44px 0 24px; background:#0c2637; color:#f1f6fa; border-block-start:4px solid #41b49b; font-family:inherit; text-align:start; }
.blog-footer-v45,.blog-footer-v45 * { box-sizing:border-box; }
.blog-footer-v45 .bf-inner { width:min(calc(100% - 40px),1180px); margin-inline:auto; min-width:0; }
.blog-footer-v45 .bf-brand { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-block-end:26px; margin-block-end:26px; border-block-end:1px solid #345062; }
.blog-footer-v45 .bf-brand-link { display:inline-flex; align-items:center; gap:12px; flex:none; color:#fff; text-decoration:none; min-height:44px; }
.blog-footer-v45 .bf-brand-link img { width:40px; height:40px; flex:none; }
.blog-footer-v45 .bf-brand-link strong { font-size:20px; font-weight:750; line-height:1.4; }
.blog-footer-v45 .bf-brand p { max-width:420px; margin:0; color:#c2d3df; font-size:14px; line-height:1.8; }
.blog-footer-v45 .bf-groups { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:24px; }
.blog-footer-v45 .bf-group { min-width:0; padding:0; }
.blog-footer-v45 .bf-group h2 { margin:0 0 10px; color:#fff; font-size:15px; font-weight:700; line-height:1.7; overflow-wrap:anywhere; }
.blog-footer-v45 .bf-group ul { display:grid; gap:0; list-style:none; padding:0; margin:0; }
.blog-footer-v45 .bf-group li { margin:0; min-width:0; }
.blog-footer-v45 .bf-group a { display:flex; align-items:center; width:fit-content; max-width:100%; min-height:44px; padding:8px 0; color:#c2d3df; font-size:14px; line-height:1.6; text-decoration:none; overflow-wrap:anywhere; }
.blog-footer-v45 a:hover { color:#fff; text-decoration:underline; text-underline-offset:4px; }
.blog-footer-v45 a:focus-visible { outline:3px solid #75e3c7; outline-offset:3px; border-radius:4px; }
.blog-footer-v45 .bf-bottom { display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; padding-block-start:24px; margin-block-start:28px; border-block-start:1px solid #345062; }
.blog-footer-v45 .bf-languages { display:flex; align-items:center; gap:12px; flex-wrap:wrap; min-width:0; }
.blog-footer-v45 .bf-languages>span { color:#c2d3df; font-size:13px; }
.blog-footer-v45 .bf-languages>div { display:flex; gap:8px; flex-wrap:wrap; }
.blog-footer-v45 .bf-languages a { display:flex; align-items:center; justify-content:center; min-height:44px; padding:8px 14px; border:1px solid #4d6a7b; border-radius:9px; color:#edf5fb; font-size:13px; text-decoration:none; }
.blog-footer-v45 .bf-languages a[aria-current="page"] { background:#d8f5eb; border-color:#d8f5eb; color:#103e33; font-weight:700; }
.blog-footer-v45 .bf-copyright { display:grid; gap:4px; margin:0; color:#b6c9d7; font-size:12px; line-height:1.7; }
@media(max-width:760px) {
  .blog-footer-v45 { padding-block-start:32px; margin-block-start:40px; }
  .blog-footer-v45 .bf-brand { flex-direction:column; align-items:flex-start; gap:12px; }
  .blog-footer-v45 .bf-brand p { max-width:100%; }
  .blog-footer-v45 .bf-groups { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .blog-footer-v45 .bf-group { padding:14px; background:#153346; border:1px solid #345062; border-radius:12px; }
  .blog-footer-v45 .bf-group h2 { font-size:14px; margin-block-end:6px; }
  .blog-footer-v45 .bf-group a { font-size:13px; width:100%; }
  .blog-footer-v45 .bf-bottom { display:grid; gap:20px; margin-block-start:24px; }
  .blog-footer-v45 .bf-languages { display:grid; gap:10px; }
  .blog-footer-v45 .bf-languages>div { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
  .blog-footer-v45 .bf-languages a { padding-inline:6px; }
}
@media(max-width:360px) {
  .blog-footer-v45 .bf-inner { width:calc(100% - 28px); }
  .blog-footer-v45 .bf-group { padding:12px 10px; }
  .blog-footer-v45 .bf-brand-link strong { font-size:18px; }
}
