/* Non-modal consent bar; all styles are limited to the existing consent dialog. */
#consent-dialog {
  position:fixed;
  inset:auto 0 0;
  z-index:30;
  width:100%;
  max-width:none;
  margin:0;
  padding:14px 36px;
  border:0;
  border-top:1px solid var(--line);
  border-radius:0;
  background:#fff;
  color:var(--ink);
  box-shadow:0 -4px 24px #102d4910;
}
#consent-dialog::backdrop {background:transparent}
#consent-dialog .consent-bar-inner {
  max-width:1188px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
#consent-dialog p {margin:0;font-size:14px;line-height:1.5}
#consent-dialog .consent-privacy {color:var(--navy);font-weight:700;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
#consent-dialog .consent-privacy:hover {text-decoration-thickness:2px}
#consent-dialog .consent-privacy:focus:not(:focus-visible) {outline:none}
#consent-dialog .consent-privacy:focus-visible {outline:2px solid var(--navy);outline-offset:3px}
#consent-dialog .actions {margin:0;display:flex;flex-wrap:nowrap;gap:10px;flex-shrink:0}
#consent-dialog .button {
  min-height:44px;
  min-width:120px;
  padding:10px 22px;
  font-size:14px;
  line-height:1.4;
  border-radius:6px;
  transform:none;
}
@media (max-width:760px) {
  #consent-dialog {bottom:var(--consent-contact-height,calc(68px + env(safe-area-inset-bottom)));padding:12px 16px}
  #consent-dialog .consent-bar-inner {flex-direction:column;align-items:stretch;gap:10px}
  #consent-dialog .actions {display:grid;grid-template-columns:1fr 1fr}
  #consent-dialog .button {width:100%;padding:10px 14px}
}

/* Only while the consent bar is open, leave enough room to scroll past it. */
body:has(#consent-dialog[open]) {padding-bottom:var(--consent-bar-height,0px)}
html:has(#consent-dialog[open]) {scroll-padding-bottom:calc(var(--consent-bar-height,0px) + var(--consent-contact-height,0px) + 24px)}
