/* ============================================================
   Centered footer brand block — applied to CAQA and VET Sector
   sites only (Career Calling family keeps its own footer).
   Mirrors the caqa-consulting reference: logo, description and
   social icons centered. Higher-specificity selectors so the
   base chassis rules (and media-query-buried variants) lose.
   ============================================================ */
.footer .f-brandrow,
.foot2 .f-brandrow{
  align-items:center;
  text-align:center;
}
.footer .f-brandrow p,
.foot2 .f-brandrow p{
  margin-left:auto;
  margin-right:auto;
  max-width:860px;
}
.footer .f-brandrow .socials,
.foot2 .f-brandrow .socials{
  justify-content:center;
}
.footer .f-brandrow>a.brand{
  justify-content:center;
}

/* with page-level newsletter cards removed, the family wall now sits directly
   against the footer — close any body-background seam between them */
section.cqsvc + footer.footer{margin-top:0}
section.cqsvc{margin-bottom:0}

/* some chassis pull the newsletter card upward (negative margin straddle);
   when the CAQA family wall sits directly above it inside the footer, that
   pull makes the card overlap the wall's tiles — neutralise it there only */
.footer .cqsvc + .f-news{margin-top:28px}

/* chassis footers carry absolutely-positioned decorative pseudo-elements
   (angled panels, hex patterns) designed for the old layouts; the canonical
   footer's static content must always paint ABOVE them */
.footer{position:relative;isolation:isolate}
.footer::before,
.footer::after{z-index:-1}

/* canonical CAQA footer link grid: three balanced columns, centered as a
   block AND centered within (kills the empty 4th grid track that left
   dead space on the right) */
.footer .container.f-grid,
.footer .f-grid{
  grid-template-columns:repeat(3,minmax(220px,320px));
  justify-content:center;
  gap:44px 64px;
  text-align:center;
}
.footer .f-grid h4{text-align:center}
.footer .f-grid h4::after{margin-left:auto;margin-right:auto}
.footer .f-grid ul{padding:0;list-style-position:inside}
.footer .f-grid ul[style*="columns"]{text-align:left;column-gap:34px}
.footer .f-grid ul[style*="columns"] li{text-align:left}
@media (max-width:1020px){
  .footer .container.f-grid,
  .footer .f-grid{grid-template-columns:repeat(2,minmax(200px,300px))}
}
@media (max-width:640px){
  .footer .container.f-grid,
  .footer .f-grid{grid-template-columns:minmax(0,340px)}
}

/* canonical CAQA contact column (satellite chassis lacks these rules) */
.footer .f-contact{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px;align-items:center}
.footer .f-contact li{display:flex;gap:12px;align-items:flex-start;justify-content:center;text-align:left;min-width:230px}
.footer .f-contact li svg{width:20px;height:20px;flex:none;margin-top:2px}
.footer .f-contact li span{display:block;font-size:.9rem;line-height:1.65}
.footer .f-contact li span b{display:block;letter-spacing:.06em;margin-bottom:2px}
.footer .f-contact a{color:inherit}

/* CAQA Groups sister-sites strip (canonical CAQA footer) */
.f-sister{
  width:min(1240px,92%);margin:6px auto 0;padding:16px 0 6px;
  display:flex;flex-direction:column;gap:10px;align-items:center;text-align:center;
  border-top:1px solid rgba(255,255,255,.12);
}
.f-sister span{
  font-size:11px;letter-spacing:.3em;text-transform:uppercase;opacity:.55;
}
.f-sister nav{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px}
.f-sister nav a{
  font-size:.82rem;text-decoration:none;color:inherit;opacity:.75;
  transition:opacity .25s,color .25s;
}
.f-sister nav a:hover{opacity:1;color:var(--gold,inherit)}

/* grid-footer variant (caqa-rto): brand column becomes a full-width
   centered band above the link columns */
/* host chassis pins the first grid child with grid-column:auto !important,
   so this scoped override must carry importance + higher specificity */
.footer .f-grid > .f-about.f-about,
.footer .f-grid .f-about{
  grid-column:1/-1 !important;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.footer .f-grid .f-about p{
  max-width:860px;
  margin-left:auto;
  margin-right:auto;
}
.footer .f-grid .f-about .socials{
  justify-content:center;
}
.footer .f-grid .f-about .f-logo{
  margin-left:auto;
  margin-right:auto;
}
