/* ============================================================
   Columned "site-map" footer (footer-claims.php).
   Shared by the pages that opt into the columned footer via
   get_footer( 'claims' ) — currently the Claims and Insurance
   Calculator templates. Enqueued from functions.php on those
   templates only, so it never touches the approved global footer.
   ============================================================ */
.cl-footer{ background:#fff; border-top:1px solid var(--line); }
.cl-footer__top{
  display:grid; grid-template-columns:1.7fr 1fr 1.25fr 1.35fr; gap:2.5rem;
  padding-block:clamp(2.5rem,5vw,3.75rem);
}
.cl-footer__logo{ display:inline-block; }
.cl-footer__logo img{ width:96px; height:96px; border-radius:50%; }
.cl-footer__about{ margin:1rem 0 1.25rem; max-width:22rem; font-size:.9rem; line-height:1.6; color:var(--gray); }
.cl-footer__social{ list-style:none; display:flex; gap:.6rem; margin:0; padding:0; }
.cl-footer__social a{
  display:grid; place-items:center; width:38px; height:38px; border-radius:50%;
  background:var(--accent-soft); color:var(--accent);
  transition:background var(--t), color var(--t);
}
.cl-footer__social a:hover{ background:var(--accent); color:#fff; }
.cl-footer__social .ico{ width:17px; height:17px; }
.cl-footer__h{ font-size:1rem; font-weight:700; color:var(--dark); margin:0 0 1.15rem; }
.cl-footer__col ul{ list-style:none; margin:0; padding:0; display:grid; gap:.7rem; }
.cl-footer__col a{ color:var(--gray); font-size:.9rem; text-decoration:none; transition:color var(--t); }
.cl-footer__col a:hover{ color:var(--accent); }
.cl-footer__contact ul{ gap:.95rem; }
.cl-footer__contact li{ display:flex; align-items:flex-start; gap:.65rem; font-size:.9rem; color:var(--gray); }
.cl-footer__ico{ display:grid; place-items:center; flex:none; color:var(--accent); margin-top:.05rem; }
.cl-footer__ico .ico{ width:17px; height:17px; }
.cl-footer__contact a{ color:var(--gray); text-decoration:none; transition:color var(--t); }
.cl-footer__contact a:hover{ color:var(--accent); }

.cl-footer__bottom{ border-top:1px solid var(--line); }
.cl-footer__bottom-inner{
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
  padding-block:1.25rem; font-size:.85rem; color:var(--gray-light);
}
.cl-footer__bottom-inner p{ margin:0; }
.cl-footer__bottom-inner ul{
  list-style:none; margin:0; padding:0; display:flex; align-items:center; gap:1.25rem;
}
.cl-footer__bottom-inner li{ position:relative; }
.cl-footer__bottom-inner li + li::before{
  content:""; position:absolute; left:-.65rem; top:50%; transform:translateY(-50%);
  width:1px; height:.85rem; background:var(--line);
}
.cl-footer__bottom-inner a{ color:var(--gray); text-decoration:none; transition:color var(--t); }
.cl-footer__bottom-inner a:hover{ color:var(--accent); }

@media (max-width:900px){
  .cl-footer__top{ grid-template-columns:1fr 1fr; gap:2rem; }
  .cl-footer__brand{ grid-column:1 / -1; }
}
@media (max-width:560px){
  .cl-footer__top{ grid-template-columns:1fr; }
  .cl-footer__bottom-inner{ flex-direction:column; text-align:center; }
}
