.pp-consent{position:fixed;left:var(--sp-4,1rem);right:var(--sp-4,1rem);bottom:var(--sp-4,1rem);z-index:99998;background:var(--color-navy,#0c2335);color:#f4ede1;border-radius:var(--radius-lg,12px);box-shadow:var(--shadow-lg,0 8px 24px rgb(12 35 53 / .25));max-width:880px;margin:0 auto;font-family:var(--font-sans,system-ui,sans-serif);font-size:var(--text-sm,.875rem);line-height:var(--leading-normal,1.55);animation:pp-consent-rise 280ms cubic-bezier(.16,1,.3,1)}@keyframes pp-consent-rise{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.pp-consent{animation:none}}.pp-consent[hidden]{display:none!important}.pp-consent__inner{display:grid;grid-template-columns:1fr;gap:var(--sp-4,1rem);padding:var(--sp-5,1.25rem) var(--sp-6,1.5rem)}@media (min-width:760px){.pp-consent__inner{grid-template-columns:1fr auto;align-items:center;gap:var(--sp-6,1.5rem)}}.pp-consent__title{font-family:var(--font-serif,Georgia,serif);font-size:var(--text-xl,1.375rem);margin:0 0 var(--sp-2,.5rem);color:#fff;letter-spacing:var(--tracking-tight,-.015em);font-weight:600}.pp-consent__body{margin:0 0 var(--sp-2,.5rem);color:#d8cfc0}.pp-consent__policy{color:#ffd6d9;text-decoration:underline;text-underline-offset:3px;font-weight:600}.pp-consent__policy:hover,.pp-consent__policy:focus-visible{color:#fff}.pp-consent__actions{display:flex;flex-wrap:wrap;gap:var(--sp-2,.5rem);align-items:center}@media (min-width:760px){.pp-consent__actions{flex-direction:column;align-items:stretch;gap:var(--sp-2,.5rem);min-width:200px}}.pp-consent__btn{font-family:var(--font-sans,system-ui,sans-serif);font-size:var(--text-sm,.875rem);font-weight:600;letter-spacing:var(--tracking-wide,.04em);padding:12px 18px;border-radius:var(--radius-md,8px);border:2px solid #fff0;cursor:pointer;transition:background-color 120ms ease,color 120ms ease,border-color 120ms ease;min-height:44px;flex:1 1 auto;white-space:nowrap}.pp-consent__btn:focus-visible{outline:3px solid #ffd6d9;outline-offset:2px}.pp-consent__btn--primary{background:var(--color-red,#f51b2b);color:#fff}.pp-consent__btn--primary:hover{background:var(--color-red-hover,#d4101e)}.pp-consent__btn--secondary{background:#fff0;color:#f4ede1;border-color:rgb(244 237 225 / .4)}.pp-consent__btn--secondary:hover{background:rgb(244 237 225 / .1);border-color:rgb(244 237 225 / .7)}.pp-consent__btn--ghost{background:#fff0;color:#d8cfc0;border-color:#fff0;text-decoration:underline;text-underline-offset:3px}.pp-consent__btn--ghost:hover{color:#fff}.pp-consent-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:flex-end;justify-content:center;font-family:var(--font-sans,system-ui,sans-serif)}.pp-consent-modal[hidden]{display:none!important}@media (min-width:760px){.pp-consent-modal{align-items:center}}.pp-consent-modal__backdrop{position:absolute;inset:0;background:rgb(12 35 53 / .65);cursor:pointer;animation:pp-consent-fade 180ms ease}@keyframes pp-consent-fade{from{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.pp-consent-modal__backdrop{animation:none}}.pp-consent-modal__panel{position:relative;background:var(--bg-parchment,#f7f3ed);color:var(--text-primary,#111);width:100%;max-width:600px;max-height:90vh;overflow-y:auto;border-radius:var(--radius-lg,12px) var(--radius-lg,12px) 0 0;box-shadow:var(--shadow-lg,0 8px 24px rgb(12 35 53 / .25));animation:pp-consent-rise 240ms cubic-bezier(.16,1,.3,1)}@media (min-width:760px){.pp-consent-modal__panel{border-radius:var(--radius-lg,12px);max-height:85vh}}@media (prefers-reduced-motion:reduce){.pp-consent-modal__panel{animation:none}}.pp-consent-modal__header{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-5,1.25rem) var(--sp-6,1.5rem);border-bottom:1px solid var(--border-warm,#e5e0d8);background:var(--bg-card,#ede8e0);border-radius:var(--radius-lg,12px) var(--radius-lg,12px) 0 0;position:sticky;top:0;z-index:1}.pp-consent-modal__header h2{font-family:var(--font-serif,Georgia,serif);font-size:var(--text-2xl,1.75rem);margin:0;color:var(--color-navy,#0c2335);letter-spacing:var(--tracking-tight,-.015em);font-weight:600}.pp-consent-modal__close{background:#fff0;border:0;font-size:28px;line-height:1;color:var(--text-secondary,#444);cursor:pointer;padding:4px 10px;border-radius:var(--radius-sm,4px);min-width:44px;min-height:44px}.pp-consent-modal__close:hover{background:var(--bg-card-hover,#e5dfd6);color:var(--color-navy,#0c2335)}.pp-consent-modal__close:focus-visible{outline:3px solid var(--color-red,#f51b2b);outline-offset:2px}.pp-consent-modal__body{padding:var(--sp-5,1.25rem) var(--sp-6,1.5rem)}.pp-consent-modal__body>p{margin:0 0 var(--sp-5,1.25rem);color:var(--text-secondary,#444);font-size:var(--text-sm,.875rem)}.pp-consent-cat{background:var(--bg-white,#fff);border:1px solid var(--border-warm,#e5e0d8);border-radius:var(--radius-md,8px);padding:var(--sp-4,1rem);margin-bottom:var(--sp-3,.75rem)}.pp-consent-cat[data-locked="1"]{background:var(--bg-card,#ede8e0)}.pp-consent-cat__head{display:flex;align-items:center;gap:var(--sp-3,.75rem);cursor:pointer;margin:0}.pp-consent-cat[data-locked="1"] .pp-consent-cat__head{cursor:default}.pp-consent-cat__head input[type="checkbox"]{width:20px;height:20px;accent-color:var(--color-red,#f51b2b);margin:0;flex-shrink:0}.pp-consent-cat__title{font-weight:600;color:var(--color-navy,#0c2335);font-size:var(--text-base,1rem);flex:1}.pp-consent-cat__pill{display:inline-block;background:var(--color-navy,#0c2335);color:#f4ede1;font-size:var(--text-xs,.6875rem);letter-spacing:var(--tracking-wider,.08em);text-transform:uppercase;padding:3px 10px;border-radius:var(--radius-pill,999px);font-weight:600}.pp-consent-cat__desc{margin:var(--sp-2,.5rem) 0 0 32px;font-size:var(--text-sm,.875rem);color:var(--text-secondary,#444);line-height:var(--leading-normal,1.55)}.pp-consent-modal__footer{display:flex;gap:var(--sp-3,.75rem);padding:var(--sp-4,1rem) var(--sp-6,1.5rem);border-top:1px solid var(--border-warm,#e5e0d8);background:var(--bg-card,#ede8e0);position:sticky;bottom:0}.pp-consent-modal__footer .pp-consent__btn{flex:1}.pp-consent-modal__footer .pp-consent__btn--secondary{color:var(--color-navy,#0c2335);border-color:var(--color-navy,#0c2335)}.pp-consent-modal__footer .pp-consent__btn--secondary:hover{background:var(--color-navy,#0c2335);color:#fff}.pp-consent-trigger{background:#fff0;border:0;padding:0;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}.pp-consent-trigger:hover{opacity:.8}body.pp-consent-modal-open{overflow:hidden}