/* ---------------------------------------------------------------
   The cookie consent banner meta-pixel.js builds. Self-contained,
   because 404.html loads none of the shared stylesheets; the values
   repeat the --page and --ink tokens from styles.css. Sits above the
   pinned waitlist bar (z-index 60 in landing.css) until answered.
   --------------------------------------------------------------- */
.consent {
  position: fixed;
  left: 16px;
  right: 16px;
  bottom: 16px;
  z-index: 70;
  max-width: 420px;
  padding: 16px 18px;
  border-radius: 18px;
  /* Frosted glass: the page shows through, blurred, under a pale tint
     dense enough to keep the dark text readable over the dark heroes. */
  background: rgba(247, 245, 240, 0.62);
  border: 1px solid rgba(255, 255, 255, 0.45);
  -webkit-backdrop-filter: blur(24px) saturate(160%);
          backdrop-filter: blur(24px) saturate(160%);
  color: #323031;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), 0 12px 40px rgba(14, 15, 12, 0.18);
  font-family: 'Manrope', sans-serif;
  font-size: 14px;
  line-height: 1.5;
}
.consent[hidden] { display: none; }
/* The pinned call-to-action bars (homepage and partners) sit in the same
   corner; seen through the glass they would read as ghost text, so they
   wait until the banner is answered. */
body:has(> .consent:not([hidden])) .sticky-cta {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
/* Without blur the tint alone would let the page read through. */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .consent { background: #F7F5F0; }
}

.consent__text { margin: 0 0 12px; }

.consent__actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
}

.consent__btn {
  font: inherit;
  font-weight: 600;
  padding: 9px 16px;
  border-radius: 999px;
  border: 1px solid rgba(50, 48, 49, 0.2);
  background: rgba(255, 255, 255, 0.35);
  color: inherit;
  cursor: pointer;
}
.consent__btn--yes {
  background: #323031;
  border-color: #323031;
  color: #F7F5F0;
}
.consent__btn:focus-visible { outline: 2px solid #8A7250; outline-offset: 2px; }

.consent__text a { color: inherit; text-underline-offset: 3px; }

/* The buttons that reopen the banner, dressed as the links around them:
   in the home footer, the legal pages' footer, and inline in the policy. */
.foot__links .consent-link,
.site-footer__links .consent-link,
.legal__inline-btn {
  font: inherit;
  color: inherit;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
}
.foot__links .consent-link {
  font-family: 'Manrope', sans-serif;
  font-size: 16px;
  line-height: 1.35;
  color: rgba(50, 48, 49, 0.72);
}
.foot__links .consent-link:hover { color: #323031; }
.site-footer__links .consent-link {
  font-family: 'Manrope', sans-serif;
  font-size: clamp(17px, 4.2vw, 20px);
  color: rgba(50, 48, 49, 0.55);
}
.site-footer__links .consent-link:hover { color: #323031; }
.legal__inline-btn { text-decoration: underline; text-underline-offset: 3px; }
