/* Shared privacy controls use the website's ink, gold and cyan palette. */
body{padding-bottom:var(--consent-space,0px)}
.home-document .hero-bottom{bottom:calc(28px + var(--consent-space,0px))}
.consent-banner[hidden],.consent-banner [hidden]{display:none!important}
.consent-banner{position:fixed;z-index:30;inset:auto 20px max(20px,env(safe-area-inset-bottom));width:calc(100% - 40px);max-width:940px;margin-inline:auto;padding:14px 18px;display:flex;align-items:center;gap:16px;border:1px solid rgba(242,245,255,.24);border-radius:16px;background:#191d2e;color:var(--white);box-shadow:0 18px 54px rgba(0,0,0,.5),0 -6px 24px rgba(0,0,0,.24);max-height:calc(100svh - 40px);overflow:auto}
.consent-copy{flex:1;min-width:0}
.consent-copy p{margin:0;color:var(--muted);font-size:12px;line-height:1.65}
.consent-copy a{display:inline-block;margin-left:8px;color:var(--gold);text-decoration:underline;text-underline-offset:3px}
.consent-copy .consent-note{margin-top:6px;color:var(--gold)}
.consent-actions{display:flex;flex-shrink:0;align-items:center;gap:8px}
.consent-actions .consent-action{min-height:34px;padding:6px 14px;line-height:1.5}
.consent-action{min-height:44px;padding:10px 17px;border:1px solid rgba(242,245,255,.3);border-radius:999px;background:transparent;color:var(--white);font-size:12px;line-height:1.6;cursor:pointer;white-space:nowrap}
.consent-action:hover{border-color:var(--gold);background:rgba(255,200,121,.06)}
.consent-action:disabled{opacity:.45;cursor:default}
.consent-close{position:absolute;right:8px;top:7px;display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border:0;background:none;color:var(--muted);cursor:pointer}
.consent-close svg{width:18px;fill:none;stroke:currentColor;stroke-width:1.5}
.consent-banner :focus-visible,.footer-privacy a:focus-visible,.privacy-page a:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}
.footer .footer-privacy{display:flex;gap:18px;font-size:11px;line-height:1.8;flex-wrap:wrap;justify-content:center}
.footer .footer-privacy::before{display:none}
.footer-privacy a{display:inline-flex;align-items:center;min-height:32px}
.privacy-page{max-width:880px;padding-top:var(--page-top-space);padding-bottom:64px}
.privacy-heading h1{font-size:clamp(32px,4vw,48px);font-weight:500;letter-spacing:-.04em;margin:0 0 16px;line-height:1.25}
.privacy-heading>p{color:var(--muted);font-size:13px;line-height:1.9;margin:12px 0 0}
.privacy-page section{margin-top:36px;scroll-margin-top:calc(var(--site-nav-height) + 16px)}
.privacy-page h2{font-size:18px;font-weight:500;line-height:1.6;margin:0 0 12px}
.privacy-page section p,.privacy-page li{font-size:14px;color:var(--muted);line-height:1.95;overflow-wrap:anywhere}
.privacy-page p{margin:10px 0}
.privacy-heading .kicker{margin-top:0}
.privacy-page a:not(.consent-action){color:var(--gold);text-decoration:underline;text-underline-offset:4px}
.privacy-page ul{padding-left:20px}
.privacy-choice{padding:24px;border:1px solid var(--line);border-radius:18px;background:rgba(20,23,42,.5)}
.privacy-choice [data-consent-status]{color:var(--white)}
.privacy-choice .consent-action{display:inline-flex;align-items:center;margin-top:8px}
.privacy-storage{width:100%;border-collapse:collapse;margin-top:18px;font-size:12px;line-height:1.8;table-layout:fixed}
.privacy-storage th,.privacy-storage td{border-bottom:1px solid var(--line);padding:14px 12px;text-align:left;vertical-align:top;overflow-wrap:anywhere}
.privacy-storage th{color:var(--white);font-weight:500}
.privacy-storage td{color:var(--muted)}
.privacy-storage code{font-size:11px;color:var(--white)}
@media(min-width:781px){
  .consent-banner:has(.consent-close:not([hidden])){padding-right:52px}
}
@media(max-width:780px){
  body[data-page="privacy"] > .mobile-route-nav {
    background: var(--ink);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
  .consent-banner{inset-inline:12px;bottom:max(12px,env(safe-area-inset-bottom));width:calc(100% - 24px);padding:12px 14px;gap:8px;flex-wrap:wrap;max-height:calc(100svh - 48px)}
  .consent-copy{flex-basis:100%}
  .consent-actions{width:100%;gap:8px}
  .consent-actions .consent-action{flex:1 1 0;min-width:0;min-height:40px;padding-inline:14px}
  .consent-banner:has(.consent-close:not([hidden])) .consent-copy{padding-right:22px}
  .privacy-page{padding-bottom:40px}
  .privacy-page section{margin-top:28px}
  .privacy-choice{padding:18px}
  .privacy-storage th,.privacy-storage td{padding:12px 5px;font-size:11px}
}
