/* Crownlands — the cookie banner (assets/js/consent.js builds it), the footer's "Cookie settings" and the cookie
   policy's button. Loaded only when Microsoft Clarity is switched on. The banner is the dark chrome of the header and
   rail, the same in both themes; Accept and Decline are the same size, as neither may be the easier one to press. */
.consent {
  position: fixed; z-index: 1100; inset-inline: 0; bottom: 0;
  padding: 0 max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));
  pointer-events: none;
}
.consent[hidden] { display: none; }
.consent-in {
  pointer-events: auto;
  max-width: 960px; margin-inline: auto; padding: var(--s2);
  display: flex; flex-wrap: wrap; align-items: center; gap: var(--s1) var(--s3);
  background: rgb(20, 18, 15); color: var(--on-dark-dim);
  border: 1px solid rgba(201, 164, 92, .35); border-top: 2px solid var(--gilt); border-radius: 10px;
  box-shadow: 0 12px 32px rgba(0, 0, 0, .45);
}
.consent-txt { flex: 1 1 26rem; min-width: 0; }
.consent-title { margin: 0 0 6px; font-family: var(--f-title); font-size: var(--t-xs); font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--gold-hi); }
.consent-title:focus { outline: none; }
.consent-title:focus-visible { outline: 2px solid var(--gold-hi); outline-offset: 4px; }
.consent-txt p { margin: 0; font-size: var(--t-sm); line-height: 1.55; }
.consent-txt a { color: var(--on-dark); text-decoration: underline; text-decoration-color: color-mix(in oklab, var(--gold-hi) 70%, transparent); text-underline-offset: 3px; }
.consent-btns { display: flex; gap: 12px; flex: 0 0 auto; }
.consent-btn {
  min-height: 48px; min-width: 8.5rem; padding: 0 var(--s2);
  font-family: var(--f-title); font-size: var(--t-sm); font-weight: 700; letter-spacing: var(--btn-tracking);
  color: var(--on-dark); background: transparent; border: 1.5px solid var(--btn-rule-color); border-radius: 0; cursor: pointer;
  transition: background var(--dur-s) var(--ease-out), filter var(--dur-s) var(--ease-out);
}
.consent-btn--yes { color: var(--btn-on-red); background: linear-gradient(to bottom, var(--btn-red), var(--btn-red-deep)); }
.consent-btn:focus-visible, .footer-linkbtn:focus-visible { outline: 2px solid var(--gold-hi); outline-offset: 3px; }
.consent-btn:active { filter: brightness(.92); }
@media (hover: hover) {
  .consent-btn:hover { background: color-mix(in oklab, var(--btn-rule-color) 14%, transparent); }
  .consent-btn--yes:hover { background: linear-gradient(to bottom, var(--btn-red), var(--btn-red-deep)); filter: brightness(1.12); }
}
@media (max-width: 599px) {
  .consent-in { padding: var(--s1); }
  .consent-btns { width: 100%; }
  .consent-btn { flex: 1 1 0; min-width: 0; }
}

/* the footer's "Cookie settings": a button that looks like the footer's links */
.footer-linkbtn { padding: 0; font: inherit; font-size: var(--t-sm); color: var(--muted); background: none; border: 0; cursor: pointer; text-align: left; transition: color var(--dur-s) var(--ease-out); }
@media (hover: hover) { .footer-linkbtn:hover { color: var(--bone); } }

/* the cookie policy's "Change your cookie choice": the gilt ghost button, on parchment */
.legal-consent { color: var(--bone); text-shadow: none; }
