.pf-cookie-banner[hidden] { display:none!important; }
body.pf-cookie-banner-active { padding-bottom:var(--pf-cookie-space,160px); }
.pf-cookie-banner { position:fixed; z-index:10020; inset-inline:20px; inset-block-end:20px; max-width:1120px; margin-inline:auto; display:flex; align-items:center; gap:28px; padding:22px 24px; border:1px solid #dedbd6; border-radius:6px; background:#fff; color:#292826; box-shadow:0 8px 32px #0002; font:14px/1.6 'Open Sans',Arial,sans-serif; box-sizing:border-box; }
.pf-cookie-banner__copy { flex:1; min-width:0; }
.pf-cookie-banner h2 { font:700 17px/1.35 'Open Sans',Arial,sans-serif; margin:0 0 7px; }
.pf-cookie-banner p { font:inherit; margin:0; }
.pf-cookie-banner a,.pf-cookie-dialog a { color:#a50d27; text-underline-offset:3px; }
.pf-cookie-banner__actions { display:flex; gap:10px; flex-wrap:wrap; flex:0 0 auto; }
.pf-cookie-button { appearance:none; min-height:44px; padding:10px 16px; border:1px solid #c9c5bf; border-radius:4px; background:#fff; color:#292826; font:600 13px/1.5 'Open Sans',Arial,sans-serif; cursor:pointer; }
.pf-cookie-button--primary { background:#c90e2e; border-color:#c90e2e; color:#fff; }
.pf-cookie-button:hover { border-color:#a50d27; }
.pf-cookie-button--primary:hover { background:#a50d27; }
.pf-cookie-button:focus-visible,.pf-cookie-close:focus-visible,.pf-cookie-open:focus-visible { outline:2px solid #a50d27; outline-offset:4px; }
.pf-cookie-dialog { width:calc(100% - 32px); max-width:620px; max-height:calc(100dvh - 32px); box-sizing:border-box; margin:auto; padding:28px; overflow:auto; overscroll-behavior:contain; border:1px solid #dedbd6; border-radius:6px; background:#fff; color:#292826; font:14px/1.65 'Open Sans',Arial,sans-serif; }
.pf-cookie-dialog::backdrop { background:#1b191a88; }
.pf-cookie-dialog__head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:16px; }
.pf-cookie-dialog h2 { font:700 24px/1.3 'Open Sans',Arial,sans-serif; margin:0; }
.pf-cookie-dialog h3 { font:600 15px/1.4 'Open Sans',Arial,sans-serif; margin:0 0 5px; }
.pf-cookie-dialog p { margin:0 0 16px; }
.pf-cookie-close { appearance:none; display:flex; justify-content:center; align-items:center; flex:none; width:44px; height:44px; padding:0; border:0; border-radius:4px; background:#f5f3ef; color:#292826; font:28px/1 Arial,sans-serif; cursor:pointer; }
.pf-cookie-category { display:flex; justify-content:space-between; align-items:flex-start; gap:20px; padding:18px 0; border-top:1px solid #e8e4df; }
.pf-cookie-category p { margin:0; color:#625d57; font-size:13px; }
.pf-cookie-state { flex:none; font-size:12px; font-weight:600; color:#4a6543; }
.pf-cookie-dialog .pf-cookie-detail { color:#625d57; font-size:12px; }
.pf-cookie-status { position:absolute; width:1px; height:1px; margin:-1px; clip-path:inset(50%); overflow:hidden; }
.pf-cookie-open { display:inline; appearance:none; padding:0; border:0; background:transparent; color:inherit; font:inherit; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.pf-pd-table-scroll { max-width:100%; overflow-x:auto; margin:20px 0; }
.pf-pd-table-scroll table { border-collapse:collapse; width:100%; min-width:520px; font:14px/1.6 Arial,sans-serif; }
.pf-pd-table-scroll th,.pf-pd-table-scroll td { padding:12px; border:1px solid #dedbd6; text-align:start; vertical-align:top; }
@media(max-width:800px) { .pf-cookie-banner { align-items:flex-start; flex-direction:column; gap:16px; } }
@media(max-width:480px) {
 .pf-cookie-banner { inset-inline:12px; inset-block-end:12px; padding:18px; font-size:13px; }
 .pf-cookie-banner__actions { width:100%; display:grid; grid-template-columns:1fr; }
 .pf-cookie-button { width:100%; }
 .pf-cookie-dialog { padding:22px; }
 .pf-cookie-dialog h2 { font-size:22px; }
 .pf-cookie-category { flex-direction:column; gap:10px; }
}

.pf-cookie-banner__actions { max-width:510px; }
.pf-cookie-toggle { display:flex; align-items:center; gap:9px; cursor:pointer; flex-shrink:0; font-size:13px; min-height:44px; }
.pf-cookie-toggle input { appearance:auto; width:22px; height:22px; min-height:0; margin:0; accent-color:#c90e2e; cursor:pointer; }
.pf-cookie-toggle input:focus-visible { outline:2px solid #a50d27; outline-offset:4px; }
.pf-cookie-dialog__actions { display:flex; flex-wrap:wrap; gap:10px; }
@media(max-width:480px) { .pf-cookie-dialog__actions { display:grid; } .pf-cookie-banner { max-height:calc(100dvh - 24px); overflow:auto; } }
