/* Cookie choices follow the existing white, charcoal and deep red theme. */
.cookie-dialog{width:min(42rem,calc(100% - 2rem));max-height:calc(100vh - 2rem);max-height:calc(100dvh - 2rem);margin:auto;padding:2rem;border:1px solid var(--line);border-radius:1.5rem;background:#fff;color:var(--ink);box-shadow:0 24px 100px #0003;overflow-y:auto;overscroll-behavior:contain}
.cookie-dialog:not([open]){display:none}
.cookie-dialog::backdrop{background:#17171980;backdrop-filter:blur(3px)}
html.cookie-dialog-open{overflow:hidden}
.cookie-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.cookie-brand{font-size:.875rem;font-weight:650;letter-spacing:.02em;color:var(--red)}
.cookie-close{display:grid;place-items:center;flex:0 0 2.75rem;width:2.75rem;height:2.75rem;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--ink);font-size:1.6rem;cursor:pointer}
.cookie-dialog h2{font-size:clamp(1.6rem,4vw,2rem);line-height:1.2;letter-spacing:-.035em;margin:0 0 1rem}
.cookie-dialog p{font-size:1rem;line-height:1.65;margin:0 0 1rem;overflow-wrap:anywhere}
.cookie-dialog .cookie-note{color:#55555b;font-size:.9375rem}
.cookie-details{margin:1.25rem 0;border:1px solid var(--line);border-radius:1rem;padding:0 1rem;background:var(--paper)}
.cookie-details summary{cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 0;line-height:1.5}
.cookie-category{padding:1rem 0;border-top:1px solid var(--line)}
.cookie-category-title{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem 1rem;flex-wrap:wrap;margin-bottom:.5rem}
.cookie-category h3{font-size:1rem;line-height:1.4;letter-spacing:0;margin:0}
.cookie-category-title span{font-size:.875rem;line-height:1.5;color:#55555b}
.cookie-category p{font-size:.9375rem;margin:0}
.cookie-actions{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
.cookie-choice{min-height:3rem;white-space:normal;line-height:1.4;padding:.9rem 1rem;border:1px solid var(--red);border-radius:999px;background:var(--red);color:white;font-size:1rem;font-weight:600;cursor:pointer}
.cookie-choice:hover{background:#730b0b;border-color:#730b0b}
.cookie-choice:focus-visible{outline-offset:3px}
.cookie-save{width:100%;margin:0 0 1rem;background:white;color:var(--red)}
.cookie-save:hover{background:#f8eaea;color:var(--red)}
.cookie-dialog .cookie-saved{font-size:.875rem;color:#55555b}
.cookie-links{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;margin-top:1.25rem}
.cookie-links a{font-size:.875rem;line-height:1.6;text-decoration:underline;text-underline-offset:3px;padding:.25rem 0}
.cookie-status{position:fixed;z-index:100;bottom:1rem;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 2rem);max-height:40vh;overflow:auto;background:var(--ink);color:white;border-radius:1rem;padding:1rem 1.25rem;font-size:.9375rem;line-height:1.5;box-shadow:0 5px 25px #0002;margin:0;pointer-events:none}
.cookie-status[hidden],.cookie-saved[hidden]{display:none}
@media(max-width:480px){.cookie-dialog{padding:1.25rem;border-radius:1.25rem}.cookie-actions{grid-template-columns:1fr}.cookie-heading{margin-bottom:.75rem}.cookie-links{gap:.5rem 1rem}}
@media print{.cookie-dialog,.cookie-status{display:none!important}html.cookie-dialog-open{overflow:visible}}
.cookie-category-title label{cursor:pointer}
.cookie-dialog .cookie-toggle{appearance:auto;flex:0 0 1.4rem;width:1.4rem;height:1.4rem;min-height:0;margin:.25rem;accent-color:var(--red);cursor:pointer}
.cookie-dialog .cookie-toggle:disabled{cursor:not-allowed;opacity:.5}
.privacy-table-wrap{max-width:100%;overflow-x:auto;margin:1.5rem 0}
.privacy-table{width:100%;border-collapse:collapse;font-size:.9375rem;line-height:1.6}
.privacy-table th,.privacy-table td{text-align:left;vertical-align:top;padding:.8rem;border-bottom:1px solid var(--line)}
.privacy-table th{background:var(--paper);font-weight:600}
.privacy-table code{overflow-wrap:anywhere}
