/*
 * IBASTOM – footer site navigation (plugin ibastom-base-pages). The area #ibs-sitemap sits between the social links
 * and the closing line and takes the chrome's 35 % footer tone (f4); same rules as the local chrome.css of 22.10.2026.
 * Falls back to the social area's tone (f3) where the chrome has no f4 tokens.
 */
.ibs-area--sitemap { --ibs-zone: var(--ibs-f4-bg, var(--ibs-f3-bg)); --ibs-on-ink: var(--ibs-f4-ink, var(--ibs-f3-ink)); --ibs-on-ink-muted: var(--ibs-f4-muted, var(--ibs-f3-muted)); --ibs-on-ink-line: var(--ibs-f4-line, var(--ibs-f3-line)); --ibs-accent-soft: var(--ibs-f4-accent, var(--ibs-f3-accent)); }
.ibs-area--social + .ibs-area--sitemap { border-block-start: 1px solid var(--ibs-on-ink-line); } /* same ground as the area above */

/* D. Site navigation (ibastom_bp_footer_nav): four labelled groups. The heading stays centred like the other
 * areas; inside the groups the lists read from the start (RTL), one column on phones, two from 600px, four from 1100px.
 * Links are text in the area's ink with an accent underline on hover; the focus ring is the footer's (accent-soft). */
.ibs-fnav { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2rem 2.5rem; width: min(100%, 72rem); margin-inline: auto; text-align: start; }
@media (min-width: 600px) { .ibs-fnav { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .ibs-fnav { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.ibs-fnav__group { display: grid; gap: .75rem; align-content: start; min-width: 0; }
:is(.ibs-site-footer, .editor-styles-wrapper .ibs-footer) .ibs-fnav__title { margin: 0; padding-block-end: .6rem; border-block-end: 1px solid var(--ibs-on-ink-line); font-family: inherit; font-size: 1rem; font-weight: 700; line-height: 1.4; color: var(--ibs-on-ink); }
.ibs-fnav__list { display: grid; gap: .15rem; margin: 0; padding: 0; list-style: none; }
.ibs-fnav__list li { margin: 0; }
:is(.ibs-site-footer, .editor-styles-wrapper .ibs-footer) .ibs-fnav__list :is(a, .ibs-fnav__btn) {
	display: inline-block; padding-block: .35rem; /* ≥ 24px target */ font: inherit; font-size: .9375rem; line-height: 1.5;
	color: var(--ibs-on-ink); text-decoration: underline; text-decoration-color: transparent; text-underline-offset: .3em; text-decoration-thickness: 2px;
	transition: text-decoration-color .2s var(--ibs-ease);
	scroll-margin-block: 1.5rem; /* keyboard focus scrolls the link in with room for the focus ring */
}
:is(.ibs-site-footer, .editor-styles-wrapper .ibs-footer) .ibs-fnav__list :is(a, .ibs-fnav__btn):hover { text-decoration-color: var(--ibs-accent-soft); }
:is(.ibs-site-footer, .editor-styles-wrapper .ibs-footer) .ibs-fnav__list a[aria-current="page"] { font-weight: 700; text-decoration-color: var(--ibs-accent-soft); }
/* The consent button looks like the links next to it (it reopens the cookie banner). */
:is(.ibs-site-footer, .editor-styles-wrapper .ibs-footer) .ibs-fnav__btn { margin: 0; padding-inline: 0; background: none; border: 0; border-radius: 0; cursor: pointer; text-align: start; }
/* Draft policy pages: shown only to signed-in editors (see the PHP), marked so they are never mistaken for public links. */
.ibs-fnav__draft { display: inline-block; margin-inline-start: .35rem; padding: 0 .45rem; font-size: .75rem; font-weight: 700; line-height: 1.6; color: var(--ibs-f4-bg, #222); background: var(--ibs-accent-soft); border-radius: 999px; vertical-align: .1em; }


@media print {
	.ibs-area--sitemap { display: none !important; }
}
