/* Shared with both sites; colors inherit the current page and theme. */
.privacy-banner {
  --privacy-ink: var(--page-ink, var(--ink, #302b45));
  --privacy-bg: var(--page-bg, var(--page, #faf9f6));
  --privacy-muted: color-mix(in srgb, var(--privacy-ink) 74%, var(--privacy-bg));
  position:fixed; z-index:10000; inset:auto 16px max(16px,env(safe-area-inset-bottom));
  margin-inline:auto; width:fit-content; max-width:760px;
  display:flex; align-items:center; gap:24px; padding:18px 20px;
  background:var(--privacy-bg); color:var(--privacy-ink);
  border:1px solid color-mix(in srgb,var(--privacy-ink) 14%,transparent);
  border-radius:20px; box-shadow:0 6px 28px #00000020;
  font-family:var(--site-font,inherit);font-weight:400;font-size:13px;line-height:1.5;
  opacity:0; transform:translateY(8px);
  transition:opacity 180ms ease,transform 180ms cubic-bezier(.19,1,.22,1);
}
.privacy-banner[hidden] {display:none}
.privacy-banner.is-open {opacity:1;transform:translateY(0)}
.privacy-banner[data-instant] {transition:none;transform:none}
.privacy-banner__copy {max-width:440px;min-width:0}
.privacy-banner__title {margin:0 0 4px;font-size:14px;font-weight:600;letter-spacing:0;line-height:1.4}
.privacy-banner__description {margin:0;color:var(--privacy-muted);font-size:13px;line-height:1.55}
.privacy-banner__description a {color:inherit;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.privacy-banner__status {margin:4px 0 0;color:var(--privacy-muted);font-size:12px}
.privacy-banner__status:empty {display:none}
.privacy-banner__actions {display:flex;gap:8px;flex-shrink:0}
.privacy-banner__button {appearance:none;min-height:44px;min-width:78px;padding:10px 16px;border:0;border-radius:999px;font-family:inherit;font-weight:500;font-size:13px;line-height:1.3;color:var(--privacy-ink);background:color-mix(in srgb,var(--privacy-ink) 9%,transparent);cursor:pointer;transition:background-color 140ms ease,transform 150ms cubic-bezier(.25,.46,.45,.94)}
.privacy-banner__button:active {transform:scale(.97);background:color-mix(in srgb,var(--privacy-ink) 18%,transparent)}
.privacy-banner__button[aria-pressed=true] {box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--privacy-ink) 35%,transparent)}
.privacy-banner__button:disabled {opacity:.5;cursor:default;transform:none}
.privacy-banner__close {display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--privacy-ink);cursor:pointer}
.privacy-banner__close[hidden] {display:none}
.privacy-banner :is(a,button):focus-visible {outline:2px solid currentColor;outline-offset:3px;transition:none;transform:none}
.privacy-control {position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0;border:0;border-radius:999px;background:none;color:inherit;font:inherit;white-space:nowrap;cursor:pointer}
.privacy-control[hidden] {display:none}
.privacy-control::before {content:"";position:absolute;inset:6px -8px;border-radius:999px;background:transparent;z-index:-1;transition:background-color 140ms ease}
.privacy-control:is([aria-expanded=true],:active)::before {background:var(--nav-active,var(--pressed,#00000012))}
.privacy-control:focus-visible {outline:2px solid currentColor;outline-offset:3px}
.page-footer .privacy-control {display:flex;width:fit-content;margin-bottom:8px;font-size:13px}
.site-footer .footer-links {flex-wrap:wrap;justify-content:center}
.privacy-live {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media (hover:hover) and (pointer:fine) {
  .privacy-banner__button:hover:not(:disabled) {background:color-mix(in srgb,var(--privacy-ink) 15%,transparent)}
  .privacy-banner__close:hover {background:color-mix(in srgb,var(--privacy-ink) 9%,transparent)}
  .privacy-control:hover::before {background:var(--nav-hover,var(--hover,#0000000a))}
}
@media (max-width:600px) {
  .privacy-banner {inset-inline:12px;bottom:max(12px,env(safe-area-inset-bottom));width:auto;max-width:none;flex-wrap:wrap;gap:14px;padding:18px;border-radius:18px}
  .privacy-banner__copy {flex:1 1 calc(100% - 46px);max-width:none}
  .privacy-banner__actions {order:2;width:100%}
  .privacy-banner__button {flex:1}
  .privacy-banner__close {align-self:flex-start}
}
@media (prefers-reduced-motion:reduce) {
  .privacy-banner {transform:none;transition:opacity 120ms ease}
  .privacy-banner__button {transition:background-color 120ms ease}
  .privacy-banner__button:active {transform:none}
}
