.privacy-note { position:fixed; z-index:100; bottom:1rem; right:1rem; width:min(520px,calc(100% - 2rem)); padding:1.4rem 1.6rem; color:#282a24; background:#f8f0df; box-shadow:0 6px 30px #201f1b40; border-radius:2px 6px 3px 8px; border:1px solid #cfc4ac; }
.privacy-note[hidden] { display:none; }
.privacy-note::before { content:""; position:absolute; width:110px; height:18px; top:-9px; left:37%; background:#e8ddc2d9; transform:rotate(-3deg); }
.privacy-note .eyebrow,.privacy-dialog .eyebrow { margin:0 0 .3rem; font:700 .95rem/1.1 var(--notes); color:var(--cobalt); letter-spacing:.12em; }
.privacy-note h2 { margin:.3rem 0 .5rem; font:400 1.95rem/1.08 var(--display); }
.privacy-note p:not(.eyebrow) { margin:.6rem 0 1rem; font:1.25rem/1.18 var(--notes); }
.privacy-actions { display:flex; flex-wrap:wrap; gap:.6rem; margin:1rem 0 .6rem; }
.privacy-actions button { appearance:none; cursor:pointer; border:1px solid #172ea5; border-radius:2px; background:#fffaf2; color:#172ea5; padding:.6rem .8rem; min-height:44px; font:700 1.05rem/1.1 var(--notes); flex:1 1 auto; }
.privacy-actions button[data-privacy-settings] { color:#282a24; border-color:#777567; }
.privacy-actions button:hover { background:#ede7d8; }
.privacy-actions button:focus-visible,.privacy-details:focus-visible,.privacy-footer button:focus-visible { outline:2px solid #172ea5; outline-offset:3px; }
.privacy-details { font:1rem/1.2 var(--notes); color:#172ea5; text-underline-offset:.16em; }
.privacy-dialog { width:min(550px,calc(100% - 2rem)); max-height:calc(100dvh - 2rem); border:0; border-radius:3px 7px 5px 3px; padding:2rem; color:#282a24; background:#f8f0df; box-shadow:0 10px 40px #201f1b50; }
.privacy-dialog::backdrop { background:#201f1b88; }
.privacy-dialog h2 { font:400 2.4rem/1.1 var(--display); margin:.5rem 0 1rem; }
.privacy-dialog p { font:1.25rem/1.2 var(--notes); }
.privacy-close { position:absolute; top:.6rem; right:.8rem; min-width:44px; min-height:44px; border:0; background:transparent; color:inherit; font:2rem var(--notes); cursor:pointer; }
.privacy-option { display:block; padding:1rem 0; border-bottom:1px solid #cec5b2; font:1.2rem/1.2 var(--notes); }
.privacy-option > span { display:flex; justify-content:space-between; align-items:center; gap:1rem; }
.privacy-option > p,.privacy-option > small { display:block; margin:.4rem 0 0; font:1.05rem/1.25 var(--notes); }
.privacy-option input { flex:0 0 auto; width:22px; height:22px; accent-color:#172ea5; }
.privacy-footer { display:block; margin:.75rem 0 0; font:1rem/1.2 var(--notes); }
.privacy-footer a,.privacy-footer button { color:inherit; }
.privacy-footer button { border:0; background:transparent; cursor:pointer; padding:0; text-decoration:underline; text-underline-offset:.15em; font:inherit; min-height:32px; }
.privacy-page .privacy-document { width:min(860px,calc(100% - 2rem)); margin:auto; padding:8rem 0 4rem; }
.privacy-document h1 { font:400 clamp(3rem,8vw,5rem)/1 var(--display); }
.privacy-document h2 { font:400 2.4rem/1.1 var(--display); margin:2rem 0 .75rem; }
.privacy-document p,.privacy-document li,.privacy-document table { font:1.15rem/1.45 "Alegreya",Georgia,serif; }
.privacy-document a { color:var(--cobalt); }
.privacy-document table { width:100%; border-collapse:collapse; }
.privacy-document th,.privacy-document td { padding:.6rem; border-bottom:1px solid #cbc3b3; text-align:left; vertical-align:top; }
.privacy-draft { padding:1rem; background:#f8f0df; border:1px solid #cfc4ac; }
@media(max-width:520px) { .privacy-note { padding:1.1rem; bottom:.5rem; right:.5rem; width:calc(100% - 1rem); } .privacy-note h2 { font-size:1.6rem; } .privacy-note p:not(.eyebrow) { font-size:1.15rem; } .privacy-actions { gap:.45rem; } .privacy-actions button { padding:.6rem; font-size:1rem; } .privacy-dialog { padding:1.5rem; } .privacy-document table { font-size:.95rem; overflow-wrap:anywhere; } }
