/* Public pages use a medium, readable base scale. */
body{font-size:15px!important;line-height:1.5}
.hubex-public-header{
  position:relative;
  z-index:1200;
  display:flex;
  align-items:center;
  width:100%;
  min-height:76px;
  padding:10px clamp(20px,4vw,56px);
  border-bottom:1px solid #d9e5f2;
  background:#fff;
  box-sizing:border-box;
  font-family:Arial,sans-serif;
}

/* Original public footer appearance: a light contact bar, not a separate dark site section.
   Text and links are still populated from the single shared company/contact settings source. */
.hubex-public-footer.contact-footer{
  display:grid;
  grid-template-columns:minmax(230px,1.35fr) minmax(180px,.9fr) minmax(220px,1fr) auto;
  align-items:center;
  gap:26px;
  min-height:68px;
  /* Keep a clear separation from the page content above the shared footer. */
  margin-top:clamp(24px,3vw,48px);
  padding:12px clamp(20px,4vw,56px);
  background:#eaf4ff;
  color:#10233d;
  font-family:Arial,sans-serif;
}
.hubex-public-footer.contact-footer .help-copy,
.hubex-public-footer.contact-footer .footer-phone,
.hubex-public-footer.contact-footer address{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  margin:0;
  color:#10233d;
  font-size:16px;
  font-style:normal;
  line-height:1.35;
  text-decoration:none;
}
.hubex-public-footer.contact-footer .help-copy b{font-size:16px;line-height:1.35}
.hubex-public-footer.contact-footer .footer-phone{font-weight:700;white-space:nowrap}
.hubex-public-footer.contact-footer .address-icon,
.hubex-public-footer.contact-footer .footer-phone-icon{
  position:relative;
  display:inline-flex;
  flex:0 0 28px;
  width:28px;
  height:28px;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#d8eaff;
  color:#1261d8;
}
.hubex-public-footer.contact-footer .footer-phone-icon::after{content:"\260E";font-size:17px;line-height:1}
.hubex-public-footer.contact-footer .address-icon::after{content:"\2022";font-size:28px;line-height:.7}
.hubex-public-footer.contact-footer .footer-cta{
  display:inline-flex;
  min-height:42px;
  align-items:center;
  justify-content:center;
  padding:0 18px;
  border-radius:12px;
  background:#1261d8;
  color:#fff!important;
  font-size:16px;
  font-weight:800;
  text-decoration:none;
  white-space:nowrap;
}
.hubex-public-footer.contact-footer .footer-cta:hover{background:#0d53bf;color:#fff!important}
@media (max-width:850px){
  .hubex-public-footer.contact-footer{grid-template-columns:1fr 1fr;gap:14px;padding:18px 22px}
  .hubex-public-footer.contact-footer .footer-cta{justify-self:start}
}
@media (max-width:560px){
  .hubex-public-footer.contact-footer{grid-template-columns:1fr;gap:12px;padding:18px 20px}
  .hubex-public-footer.contact-footer .footer-cta{width:100%;justify-self:stretch}
}
.hubex-public-brand{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:230px;
  color:#12213a;
  text-decoration:none;
}
.hubex-public-brand img{
  width:48px;
  height:48px;
  border-radius:14px;
  object-fit:contain;
}
.hubex-public-brand span{display:grid;gap:3px}
.hubex-public-brand b{font-size:19px;line-height:1.05;color:#56647c}
.hubex-public-brand small{font-size:11px;font-weight:800;color:#56647c}
.hubex-public-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:26px;
  margin-left:auto;
}
.hubex-public-nav a{
  color:#17263d;
  font-size:15px;
  font-weight:850;
  text-decoration:none;
}
.hubex-public-nav a:hover,.hubex-public-nav a[aria-current="page"]{color:#096ede}
.hubex-public-nav .hubex-public-calculate{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 19px;
  border-radius:12px;
  background:#116fe4;
  color:#fff;
  box-shadow:0 12px 28px rgba(17,111,228,.2);
}
/* Calculate is a stable navigation action: do not recolour, lift or animate on hover/current state. */
.hubex-public-nav .hubex-public-calculate:hover,
.hubex-public-nav .hubex-public-calculate:focus,
.hubex-public-nav .hubex-public-calculate[aria-current="page"]{
  background:#116fe4;
  color:#fff;
  box-shadow:0 12px 28px rgba(17,111,228,.2);
  transform:none;
}
.hubex-public-account{
  display:grid;
  width:44px;
  height:44px;
  margin-left:26px;
  place-items:center;
  border:1px solid #d5e3f1;
  border-radius:50%;
  background:#fff;
  color:#0abf68;
  box-shadow:0 10px 25px rgba(15,35,65,.08);
  text-decoration:none;
}
.hubex-public-account svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8}
.hubex-public-menu{display:none}
.hubex-public-footer{margin-top:44px;background:#0d1e35;color:#dce8f7;font-family:Arial,sans-serif}.hubex-public-footer-main{display:grid;grid-template-columns:1.35fr 1.25fr .7fr;gap:36px;align-items:start;max-width:1280px;margin:0 auto;padding:38px clamp(22px,5vw,72px)}.hubex-public-footer a{color:inherit;text-decoration:none}.hubex-public-footer-brand{display:flex;align-items:center;gap:12px}.hubex-public-footer-brand img{width:50px;height:50px;border-radius:14px;object-fit:contain;background:#fff}.hubex-public-footer-brand span{display:grid;gap:3px}.hubex-public-footer-brand b{font-size:18px;color:#fff}.hubex-public-footer-brand small{font-size:12px;font-weight:700;color:#a9bdd5}.hubex-public-footer-contact{display:grid;gap:9px;font-size:14px}.hubex-public-footer-contact a{color:#fff;font-weight:750}.hubex-public-footer-contact span{color:#b6c8dd;line-height:1.45}.hubex-public-footer-main>nav{display:grid;gap:10px;font-size:14px;font-weight:750}.hubex-public-footer-main>nav a:hover,.hubex-public-footer-bottom a:hover{color:#65b1ff}.hubex-public-footer-bottom{display:flex;justify-content:space-between;gap:18px;max-width:1280px;margin:0 auto;padding:17px clamp(22px,5vw,72px);border-top:1px solid rgba(202,220,242,.15);color:#a9bdd5;font-size:12px}.hubex-public-footer-bottom nav{display:flex;flex-wrap:wrap;gap:16px}
@media(max-width:820px){
  .hubex-public-header{min-height:74px;padding:10px 16px;gap:10px}
  .hubex-public-brand{min-width:0;gap:10px}
  .hubex-public-brand img{width:48px;height:48px;border-radius:14px}
  .hubex-public-brand b{font-size:17px}
  .hubex-public-brand small{font-size:11px}
  .hubex-public-menu{
    display:grid;
    width:44px;
    height:44px;
    margin-left:auto;
    place-items:center;
    border:1px solid #d5e3f1;
    border-radius:13px;
    background:#f5f9ff;
    color:#116fe4;
    font-size:23px;
    font-weight:900;
  }
  .hubex-public-nav{
    position:absolute;
    top:calc(100% + 8px);
    right:14px;
    display:none;
    width:min(280px,calc(100vw - 28px));
    padding:14px;
    border:1px solid #d9e5f2;
    border-radius:18px;
    background:#fff;
    box-shadow:0 20px 50px rgba(11,35,70,.18);
  }
  .hubex-public-header.is-menu-open .hubex-public-nav{display:grid;gap:6px}
  .hubex-public-nav a{padding:12px 14px;border-radius:11px}
  .hubex-public-nav .hubex-public-calculate{min-height:46px;padding:0 14px}
  .hubex-public-account{width:46px;height:46px;margin-left:0}
  .hubex-public-account svg{width:23px;height:23px}
  .hubex-public-footer{margin-top:30px}.hubex-public-footer-main{grid-template-columns:1fr;gap:24px;padding-block:30px}.hubex-public-footer-bottom{flex-direction:column;padding-block:16px}.hubex-public-footer-bottom nav{gap:12px}
}

/* The shared footer uses SVG icons: no font glyphs or encoding-dependent symbols. */
.hubex-public-footer.contact-footer .footer-help-icon,
.hubex-public-footer.contact-footer .footer-phone-icon,
.hubex-public-footer.contact-footer .address-icon{position:relative;display:inline-flex;flex:0 0 28px;width:28px;height:28px;align-items:center;justify-content:center;border-radius:50%;background:#d8eaff;color:#1261d8}
.hubex-public-footer.contact-footer .footer-help-icon svg,
.hubex-public-footer.contact-footer .footer-phone-icon svg,
.hubex-public-footer.contact-footer .address-icon svg{width:16px;height:16px;fill:currentColor;display:block}
.hubex-public-footer.contact-footer .footer-phone-icon::after,.hubex-public-footer.contact-footer .address-icon::after{content:none}
.hubex-public-footer-wrap .footer-legal-links{margin-top:24px}
.hubex-public-footer-wrap .copyright{margin-bottom:22px}
