.cookie-banner,.cookie-preferences{--cookie-paper:var(--cream-100,#f8f2e5);--cookie-ink:var(--ink,#181815);--cookie-red:var(--red,#cc2027);--cookie-line:var(--cream-300,#d9d0bf);--cookie-shadow:0 7px 28px #0002;color:var(--cookie-ink);background:var(--cookie-paper);font-family:"Source Sans 3",sans-serif;box-sizing:border-box}
.cookie-banner[hidden]{display:none}.cookie-banner{position:fixed;z-index:950;right:20px;bottom:20px;width:min(510px,calc(100% - 40px));max-height:85dvh;margin:0;padding:14px 24px 22px;border:1px solid var(--cookie-ink);border-top:4px solid var(--cookie-red);box-shadow:var(--cookie-shadow);overflow:auto}.cookie-banner-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0 12px;margin-bottom:8px}.cookie-decline{min-height:44px;padding:8px 0;border:0;background:transparent;color:inherit;font:600 14px "Source Sans 3",sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.cookie-decline:hover{text-decoration-thickness:2px}
.cookie-copy{flex:1;min-width:0}.cookie-kicker{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--cookie-red)}.cookie-banner h2,.cookie-preferences h2{font-family:"Barlow Condensed",sans-serif;font-size:29px;line-height:1.05;margin:5px 0 8px;text-transform:uppercase}.cookie-banner p,.cookie-preferences p{font-size:14px;line-height:1.45;margin:0 0 8px}.cookie-banner a,.cookie-preferences a{color:inherit;font-size:13px;text-decoration:underline;text-underline-offset:3px}
.cookie-actions{display:flex;flex-wrap:wrap;gap:8px}.cookie-actions button{min-height:44px;border:1px solid var(--cookie-ink);padding:10px 16px;color:var(--cookie-ink);background:transparent;cursor:pointer;font:700 15px "Barlow Condensed",sans-serif;letter-spacing:.03em;text-transform:uppercase;flex:1;white-space:nowrap}.cookie-actions button:hover{background:var(--cookie-ink);color:var(--cookie-paper)}.cookie-banner .cookie-actions{width:100%;margin-top:16px}.cookie-banner .cookie-actions [data-consent=accept]{background:var(--cookie-ink);color:var(--cookie-paper)}.cookie-banner .cookie-actions [data-consent=accept]:hover{background:var(--cookie-paper);color:var(--cookie-ink)}
.cookie-preferences{width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 40px);padding:28px;border:1px solid var(--cookie-ink);overflow:auto}.cookie-preferences::backdrop{background:#0009}.cookie-preferences h2{font-size:38px;margin-bottom:16px}.cookie-preferences h2 em{color:var(--cookie-red);font-family:Yellowtail,cursive;text-transform:none}.cookie-close{position:absolute;right:12px;top:10px;border:0;background:none;color:inherit;font-size:29px;width:40px;height:40px;cursor:pointer}.cookie-option{display:flex;gap:18px;align-items:center;border-block-start:1px solid var(--cookie-line);padding:18px 0}.cookie-option div{flex:1}.cookie-option strong{font-size:15px}.cookie-option p{margin:5px 0 0}.cookie-option>span{font-size:11px;white-space:nowrap}.cookie-option input{width:24px;height:24px;accent-color:var(--cookie-red);flex-shrink:0}.cookie-detail{color:var(--gray,#5d5b55)}.cookie-preferences .cookie-actions{margin:18px 0}.cookie-manage{font:inherit;background:transparent;border:0;color:inherit;text-decoration:underline;text-underline-offset:4px;cursor:pointer;min-height:44px;padding:10px;display:inline-block}.cookie-manage-floating{position:fixed;left:10px;bottom:8px;font-size:11px;background:var(--cream-100,#f8f2e5);color:var(--ink,#181815);z-index:40}.cookie-banner button:focus-visible,.cookie-preferences button:focus-visible,.cookie-preferences input:focus-visible,.cookie-manage:focus-visible{outline:3px solid var(--red,#cc2027);outline-offset:3px}
@media(max-width:700px){.cookie-banner{left:10px;right:10px;bottom:max(10px,env(safe-area-inset-bottom));width:auto;padding:10px 16px 16px}.cookie-banner-top{margin-bottom:4px}.cookie-banner h2{font-size:25px}.cookie-banner p{font-size:13px}.cookie-banner .cookie-actions{margin-top:14px;display:grid;grid-template-columns:1fr}.cookie-preferences{padding:24px 18px}.cookie-preferences .cookie-actions button:last-child{flex-basis:100%}}
