/* Cookie banner, "Cookie settings" and the Privacy Policy's analytics section.
   Linked (like consent.js) ONLY while a GA4 measurement ID is set, so with
   the ID empty the site's pages are exactly what they were. Builds on the
   tokens in site.css.

   Navy band like the footer, white text (12.9:1), cream buttons with navy
   text (12:1). Accept and Reject share one style: equal prominence. */
.cookie-banner { position: fixed; left: 0; right: 0; bottom: 0; z-index: 50; background: var(--navy); color: var(--on-dark); box-shadow: 0 -8px 30px rgba(16, 20, 40, 0.25); --focus: #fff; }
.cookie-banner[hidden] { display: none; }
.cookie-banner__inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 40px; padding-block: 18px; }
.cookie-banner__text { flex: 1 1 30rem; }
.cookie-banner p { margin: 0; max-width: 78ch; font-size: 0.9375rem; line-height: 1.6; color: var(--on-dark); }
.cookie-banner a { color: var(--on-dark); font-weight: 500; }
.cookie-banner .cookie-banner__current { margin-top: 6px; color: var(--on-dark-soft); }
.cookie-banner__actions { display: flex; gap: 12px; }
.cookie-banner__actions .btn { min-width: 9.5em; }
@media (max-width: 560px) {
  .cookie-banner__actions { flex: 1 1 100%; }
  .cookie-banner__actions .btn { flex: 1 1 0; min-width: 0; }
}

/* The banner must not cover the end of the page for good. */
.has-cookie-banner body { padding-bottom: var(--cookie-banner-h, 0px); }

/* "Cookie settings" in the bottom bar: an action, so a button, dressed as a link.
   With a second item the links must stay in a row (.site-footer ul is a grid). */
.bottom-bar .bottom-bar__links { display: flex; gap: 4px 20px; }
.link-button { padding: 0; font: inherit; color: var(--navy); background: none; border: 0; text-decoration: underline; text-underline-offset: 0.18em; cursor: pointer; }
.link-button:hover { text-decoration-thickness: 2px; }

/* Privacy Policy: the Google Analytics section, after the CMS text. */
.analytics-policy { margin-top: 2rem; }
