/* Professional footer structure shared across all four preview pages. */
footer.shared-footer{display:block;background:#131F33;color:#ffffffb3;padding:88px clamp(24px,5vw,80px) 48px;font-family:Poppins,sans-serif;font-size:15px;border:0}
footer.shared-footer .wrap{width:100%;max-width:1180px;margin:0 auto;padding:0}
footer.shared-footer .footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px}
footer.shared-footer .brand{display:inline-block;padding:0;border:0}
footer.shared-footer .footer-logo{width:190px;height:auto;filter:brightness(0) invert(1)}
footer.shared-footer .tagline{font-size:15px;line-height:1.6;margin-top:20px;max-width:26em;color:inherit}
footer.shared-footer .fcol h5{font-family:Poppins,sans-serif;font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:white;margin:0 0 20px}
footer.shared-footer .fcol a{display:block;padding:6px 0;border:0;border-radius:0;font-size:15px;color:inherit;text-decoration:none;background:transparent}
footer.shared-footer .footer-base{border-top:1px solid #ffffff25;margin-top:64px;padding-top:28px;font-size:12px}
footer.shared-footer .footer-badges{display:flex;align-items:center;gap:24px;max-width:1180px;margin:30px auto 0}
footer.shared-footer .footer-badges img{width:100px;height:76px;object-fit:contain;background:white;border-radius:8px;padding:8px}
.personal footer.shared-footer,.home-preview footer.shared-footer{background:#BEE7E7;color:#26395B}
.community footer.shared-footer{background:#E5E9FD;color:#26395B}
.personal footer.shared-footer .fcol h5,.community footer.shared-footer .fcol h5{color:#26395B}
.personal footer.shared-footer .footer-logo,.community footer.shared-footer .footer-logo{filter:none}
.personal footer.shared-footer .tagline,.community footer.shared-footer .tagline{color:#26395B}
.personal footer.shared-footer .footer-base,.community footer.shared-footer .footer-base{border-color:#26395b25}
@media(max-width:800px){footer.shared-footer .footer-grid{grid-template-columns:1fr 1fr;gap:35px}footer.shared-footer{padding-top:60px}}
@media(max-width:480px){footer.shared-footer .footer-grid{grid-template-columns:1fr;gap:30px}footer.shared-footer .footer-base{margin-top:40px}}
footer.shared-footer .footer-grid .footer-badges{margin:24px 0 0;gap:16px}
footer.shared-footer .footer-base{display:flex;justify-content:space-between;align-items:center;gap:24px}
footer.shared-footer .footer-social{display:flex;align-items:center;justify-content:flex-end;gap:24px;margin-left:auto}
footer.shared-footer .footer-social span{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:6px;border:0;background:transparent;color:inherit}
footer.shared-footer .footer-social svg{width:32px;height:32px;fill:currentColor}
footer.shared-footer .footer-social a:focus-visible{outline:2px solid currentColor;outline-offset:4px}
@media(max-width:480px){footer.shared-footer .footer-base{flex-wrap:wrap}.footer-social{margin-left:auto}}
footer.shared-footer .footer-mission{font-family:Poppins,sans-serif;font-size:12px;line-height:1.65;width:100%;max-width:none;margin:48px 0 24px;color:inherit}
footer.shared-footer .footer-mission+.footer-base{margin-top:0}

/* Tablet: brand above one row of Offers, Audiences and Company. */
@media(min-width:621px) and (max-width:1000px){
  footer.shared-footer .footer-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:36px 24px;
  }
  footer.shared-footer .footer-grid > :first-child{grid-column:1 / -1}
  footer.shared-footer .fcol{min-width:0}
}

/* A compact logo centered between copyright and social links below the divider. */
footer.shared-footer .footer-base{display:grid;grid-template-columns:1fr auto 1fr}
footer.shared-footer .footer-base-brand{justify-self:center;line-height:0}
footer.shared-footer .footer-base .footer-logo{width:120px!important;height:auto!important}
footer.shared-footer .footer-grid .tagline{margin-top:0}
@media(max-width:620px){
  footer.shared-footer .footer-base{grid-template-columns:1fr auto;gap:20px}
  footer.shared-footer .footer-base .footer-social{grid-column:1 / -1;justify-self:center;margin-left:0}
  footer.shared-footer .footer-base .footer-logo{width:104px!important}
}

/* Wide screens: two substantial badges occupy the left half of the footer. */
@media(min-width:1001px){
  footer.shared-footer .footer-grid{
    grid-template-columns:minmax(0,3fr) repeat(3,minmax(0,1fr));
    gap:clamp(16px,2vw,24px);
    align-items:start;
  }
  footer.shared-footer .footer-grid .footer-badges{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
    margin:0;
    width:100%;
  }
  footer.shared-footer .footer-grid .footer-badges img{
    box-sizing:border-box;
    width:100%;
    height:auto;
    aspect-ratio:4 / 3;
    object-fit:contain;
    padding:14px;
  }
  footer.shared-footer .fcol{min-width:0}
}

/* Center the paired badges across 80% of the viewport on smaller screens. */
@media(max-width:1000px){
  footer.shared-footer .footer-grid > :first-child{grid-column:1 / -1;min-width:0}
  footer.shared-footer .footer-grid .footer-badges{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    width:80vw;
    max-width:none;
    margin:0;
    position:relative;
    left:50%;
    transform:translateX(-50%);
    gap:clamp(12px,3vw,24px);
  }
  footer.shared-footer .footer-grid .footer-badges img{
    box-sizing:border-box;
    width:100%;
    height:auto;
    aspect-ratio:4 / 3;
    object-fit:contain;
    padding:clamp(8px,2vw,14px);
  }
}

/* Center the link columns as one group, retaining left-aligned list text. */
@media(max-width:1000px){
  footer.shared-footer .footer-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    width:80vw;
    max-width:none;
    margin:0 auto;
    gap:36px clamp(12px,3vw,24px);
  }
  footer.shared-footer .footer-grid > .fcol{text-align:left;min-width:0}
}
