/* Cookie consent: Ben's standard module (v1). Brand through the --cc-* tokens below. */
:root{--cc-accent:var(--blue,#0069FE);--cc-accent-2:var(--navy,#00214F);--cc-ink:var(--ink,#0b1a33);--cc-muted:var(--muted,#4f5d75);--cc-line:var(--line,#e2e7f0);--cc-bg:#fff;--cc-r:16px;--cc-font:inherit}
.cc-banner,.cc-modal,.cc-toast{font-family:var(--cc-font);color:var(--cc-ink);-webkit-font-smoothing:antialiased}
.cc-h{font-size:19px;line-height:1.25;letter-spacing:-.015em;margin:0 0 10px;color:var(--cc-accent-2)}
.cc-banner{position:fixed;z-index:1000;left:24px;bottom:24px;width:min(440px,calc(100vw - 32px));background:var(--cc-bg);border:1px solid var(--cc-line);border-radius:var(--cc-r);box-shadow:0 24px 60px -18px rgba(0,20,50,.35),0 2px 6px rgba(0,20,50,.06);opacity:0;transform:translateY(16px);transition:opacity .45s ease,transform .45s cubic-bezier(.2,.7,.2,1)}
.cc-banner.is-in{opacity:1;transform:none}
.cc-in{padding:26px 26px 22px}
.cc-banner p,.cc-dialog p{font-size:15px;line-height:1.6;color:var(--cc-muted);margin:0 0 18px}
.cc-banner a,.cc-dialog a{color:var(--cc-accent-2);text-decoration:underline;text-underline-offset:3px}
.cc-acts{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.cc-btn{flex:1 1 150px;height:48px;padding:0 18px;border-radius:999px;border:2px solid var(--cc-accent-2);background:var(--cc-accent-2);color:#fff;font:inherit;font-weight:700;font-size:15px;cursor:pointer;transition:background .2s,border-color .2s}
.cc-btn[data-cc="accept"]{background:var(--cc-accent);border-color:var(--cc-accent)}
.cc-btn:hover{filter:brightness(.92)}
.cc-btn:focus-visible,.cc-link:focus-visible,.cc-x:focus-visible,.cc-switch input:focus-visible+span{outline:2px solid var(--cc-accent);outline-offset:3px}
.cc-link{background:none;border:0;padding:6px 2px;font:inherit;font-size:15px;font-weight:700;color:var(--cc-accent-2);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.cc-modal{position:fixed;inset:0;z-index:1001;display:grid;place-items:center;padding:16px}
.cc-modal[hidden]{display:none}
.cc-scrim{position:absolute;inset:0;background:rgba(0,20,50,.55);opacity:0;transition:opacity .25s}
.cc-dialog{position:relative;width:min(600px,100%);max-height:calc(100vh - 32px);overflow:auto;background:var(--cc-bg);border-radius:20px;padding:34px 32px 28px;box-shadow:0 40px 90px -30px rgba(0,20,50,.5);opacity:0;transform:translateY(12px) scale(.985);transition:opacity .25s,transform .3s cubic-bezier(.2,.7,.2,1)}
.cc-dialog:focus{outline:none}
.cc-modal.is-in .cc-scrim{opacity:1}.cc-modal.is-in .cc-dialog{opacity:1;transform:none}
.cc-dialog .cc-h{font-size:24px}
.cc-x{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:50%;border:0;background:transparent;font-size:28px;line-height:1;color:var(--cc-muted);cursor:pointer}.cc-x:hover{background:#f1f4f9}
.cc-cats{margin:6px 0 24px;border-top:1px solid var(--cc-line)}
.cc-cat{padding:18px 0;border-bottom:1px solid var(--cc-line)}
.cc-cat-h{display:flex;align-items:center;gap:14px}
.cc-cat-h label{font-weight:700;font-size:16px;color:var(--cc-ink);flex:1}
.cc-cat p{font-size:14.5px!important;margin:6px 64px 0 0!important;color:var(--cc-muted)}
.cc-always{order:-1;display:none}
.cc-switch{position:relative;width:48px;height:28px;flex:none}
.cc-switch input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;z-index:1}
.cc-switch span{position:absolute;inset:0;border-radius:999px;background:#c7d0de;transition:background .2s}
.cc-switch span::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform .2s}
.cc-switch input:checked+span{background:var(--cc-accent)}
.cc-switch input:checked+span::after{transform:translateX(20px)}
.cc-switch input:disabled{cursor:not-allowed}.cc-switch input:disabled+span{background:var(--cc-accent-2);opacity:.45}
.cc-toast{position:fixed;z-index:1002;left:50%;bottom:24px;transform:translate(-50%,12px);background:var(--cc-accent-2);color:#fff;padding:13px 22px;border-radius:999px;font-size:14.5px;font-weight:700;opacity:0;transition:opacity .3s,transform .3s;box-shadow:0 14px 34px -12px rgba(0,20,50,.5)}
.cc-toast.is-in{opacity:1;transform:translate(-50%,0)}
.cc-lock,.cc-lock body{overflow:hidden}
/* cookie page */
.cc-page{border-top:1px solid var(--cc-line);margin:8px 0 26px}
.cc-page .cc-cat p{color:var(--cc-muted)}
.cc-page-acts{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 14px}
.cc-page-acts .cc-btn{flex:0 1 auto}
.cc-page-acts .cc-btn.alt{background:transparent;color:var(--cc-accent-2);border-color:var(--cc-line)}.cc-page-acts .cc-btn.alt:hover{border-color:var(--cc-accent-2);filter:none}
.cc-status{font-size:14.5px;color:var(--cc-muted);margin:0}
.cc-table{width:100%;border-collapse:collapse;font-size:15px;margin:8px 0 18px}
.cc-table th,.cc-table td{text-align:left;padding:12px 14px 12px 0;border-bottom:1px solid var(--cc-line);vertical-align:top}
.cc-table th{font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--cc-muted)}
.cc-table td:first-child{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:14px;white-space:nowrap}
@media(max-width:600px){
.cc-banner{left:12px;right:12px;bottom:12px;width:auto}
.cc-in{padding:22px 20px 18px}
.cc-btn{flex:1 1 100%}
.cc-acts .cc-link{margin:2px auto 0}
.cc-dialog{padding:28px 20px 22px;border-radius:18px}
.cc-cat p{margin-right:0!important}
.cc-table thead{display:none}.cc-table tr{display:block;padding:12px 0;border-bottom:1px solid var(--cc-line)}.cc-table td{display:block;border:0;padding:2px 0}
}
@media(prefers-reduced-motion:reduce){.cc-banner,.cc-dialog,.cc-scrim,.cc-toast{transition:none}}
@media print{.cc-banner,.cc-modal,.cc-toast{display:none!important}}
.cc-btn{white-space:nowrap}
.cc-dialog .cc-acts .cc-btn{flex:1 1 auto}
@media(max-width:600px){.cc-dialog .cc-acts .cc-btn{flex:1 1 100%}}
