/* Site footer: tinted gradient, logo colour, menu column skin for the inner navigation blocks. */
.pb-footer { background: linear-gradient(to bottom, rgba(25,55,152,0.08) 0%, rgba(25,55,152,0.04) 60%, #ffffff 100%); font-family: "Source Sans 3", ui-sans-serif, system-ui, sans-serif; }
.pb-footer__logo svg { display: block; height: 100%; width: auto; }

/* The menus wrapper spans the two middle grid columns and lays its columns out itself. */
.pb-footer__menus { display: grid; grid-template-columns: 1fr; gap: 2rem; align-items: start; }
@media (min-width: 768px) { .pb-footer__menus { grid-column: 2 / span 2; grid-template-columns: 1fr 1fr; } }
.pb-footer__menus .wp-block-navigation[role="group"] { display: block; }

/* A footer column is a core Group holding Heading + Navigation pairs. */
.pb-footer__col { display: flex; flex-direction: column; align-items: center; gap: 1rem; }
@media (min-width: 768px) { .pb-footer__col { align-items: flex-start; } .pb-footer__col--first { padding-right: 1rem; } }
.pb-footer__col .pb-footer__col-title { margin: 0; font-family: inherit; font-size: 1rem; font-weight: 700; line-height: 1.5; color: #000; text-transform: none; letter-spacing: 0; }
.pb-footer__col .pb-footer__col-title + .pb-footer__col-title, .pb-footer__col .wp-block-navigation + .pb-footer__col-title { margin-top: 1rem; }
.pb-footer__col .wp-block-navigation { font-size: 1rem; }
.pb-footer__col .wp-block-navigation .wp-block-navigation__container { flex-direction: column; align-items: center; gap: 1rem; }
@media (min-width: 768px) { .pb-footer__col .wp-block-navigation .wp-block-navigation__container { align-items: flex-start; } }
.pb-footer__col .wp-block-navigation-item__content { color: #000; text-decoration: none; padding: 0; font-weight: 400; line-height: 1.5; transition: color 0.2s; }
.pb-footer__col .wp-block-navigation-item__content:hover { color: #193798; }
.pb-footer__col .wp-block-navigation__responsive-container-open { display: none; }
.pb-footer__col .wp-block-navigation__responsive-container:not(.is-menu-open) { display: block; position: static; }

/* Core's flow block-gap margins would stack with the column gap; the column spaces its children itself. */
.pb-footer__col > * { margin-block: 0 !important; }
.pb-footer__col .wp-block-navigation ul { margin: 0; padding: 0; }
.pb-footer__col .wp-block-navigation + .pb-footer__col-title { margin-block-start: 1rem !important; }

/* Editor: the inner-blocks slot adds layout wrappers; let them pass the grid through to the columns. */
.pb-footer__menus > .block-editor-inner-blocks,
.pb-footer__menus > .block-editor-inner-blocks > .block-editor-block-list__layout { display: contents; }
.pb-footer__menus .block-list-appender { grid-column: 1 / -1; }
