/*! BIMDAS Consent 1.0.2 – styled after the BIMDAS technical-drawing look */
.bc{
	--bc-ink:#0F1722; --bc-ink-2:#3E4A5A; --bc-line:#D3DAE3; --bc-paper:#F3F5F7; --bc-sheet:#FFFFFF;
	--bc-slate:#293850; --bc-blue:#007EDF; --bc-blue-ink:#005BA3; --bc-orange:#E84714;
	--bc-mono:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
	position:fixed; z-index:2147483000; left:16px; bottom:16px; right:auto;
	width:min(560px, calc(100vw - 32px)); max-height:calc(100vh - 32px); max-height:calc(100dvh - 32px);
	font-family:inherit; color:var(--bc-ink); line-height:1.5; text-align:left;
}
.bc[hidden]{display:none!important}
.bc *, .bc *::before, .bc *::after{box-sizing:border-box}
.bc-panel{
	position:relative; background:var(--bc-sheet); border:1px solid var(--bc-slate);
	box-shadow:0 18px 50px rgba(15,23,34,.22), 0 2px 6px rgba(15,23,34,.12);
	max-height:inherit; overflow:auto; overscroll-behavior:contain; outline:none;
	padding:0 0 14px;
}
.bc-panel:focus{outline:none}
.bc-ticks{display:flex; border-bottom:1px solid var(--bc-line); font:500 10px/1 var(--bc-mono); color:#5C6876; letter-spacing:.08em}
.bc-ticks span{flex:1 1 0; text-align:center; padding:5px 0; border-right:1px solid var(--bc-line)}
.bc-ticks span:last-child{border-right:0}
.bc-layer{padding:18px 22px 4px}
.bc-eyebrow{margin:0 0 6px; font:500 11px/1.4 var(--bc-mono); letter-spacing:.12em; text-transform:uppercase; color:var(--bc-orange)}
.bc-title{margin:0 0 8px; font-size:20px; line-height:1.25; font-weight:600; color:var(--bc-ink); letter-spacing:0; text-transform:none}
.bc-title:focus{outline:none}
.bc-text{margin:0; font-size:15px; color:var(--bc-ink-2); max-width:none}
.bc-actions{display:flex; flex-wrap:wrap; gap:10px; margin-top:16px}
.bc-btn{
	appearance:none; cursor:pointer; font:inherit; font-size:15px; font-weight:600; line-height:1.2;
	min-height:44px; padding:11px 18px; border-radius:0; border:1px solid var(--bc-slate);
	flex:1 1 150px; text-align:center; transition:background-color .15s, color .15s;
}
/* Accept and reject look identical on purpose: equal choice, no nudging. */
.bc-btn-main{background:var(--bc-slate); color:#fff}
.bc-btn-main:hover{background:var(--bc-ink)}
.bc-btn-ghost{background:#fff; color:var(--bc-slate)}
.bc-btn-ghost:hover{background:var(--bc-paper)}
.bc-btn:focus-visible, .bc-close:focus-visible, .bc a:focus-visible, .bc summary:focus-visible, .bc-switch input:focus-visible + .bc-track{
	outline:3px solid var(--bc-blue); outline-offset:2px
}
.bc-links{margin:12px 22px 0; font-size:13px; color:var(--bc-ink-2)}
.bc-links a{color:var(--bc-blue-ink); text-decoration:underline; text-underline-offset:2px; padding:4px 0; display:inline-block}
.bc-links span{margin:0 6px}
.bc-close{
	position:absolute; top:28px; right:8px; width:44px; height:44px; border:0; background:transparent;
	font-size:26px; line-height:1; color:var(--bc-ink-2); cursor:pointer
}
.bc-close[hidden]{display:none}
.bc-close:hover{color:var(--bc-ink)}
.bc-reopen .bc-layer{padding-right:52px}

.bc-cats{list-style:none; margin:12px 0 0; padding:0; border-top:1px solid var(--bc-line)}
.bc-cat{padding:12px 0; border-bottom:1px solid var(--bc-line); margin:0}
.bc-cat-head{display:flex; align-items:center; justify-content:space-between; gap:12px}
.bc-switch{display:inline-flex; align-items:center; gap:12px; cursor:pointer; font-weight:600; font-size:15px; min-height:32px}
.bc-switch input{position:absolute; opacity:0; width:1px; height:1px; margin:0}
.bc-track{position:relative; flex:0 0 auto; width:42px; height:24px; border-radius:12px; background:#8C97A6; transition:background-color .15s}
.bc-track::after{content:""; position:absolute; top:3px; left:3px; width:18px; height:18px; border-radius:50%; background:#fff; transition:transform .15s}
.bc-switch input:checked + .bc-track{background:var(--bc-blue)}
.bc-switch input:checked + .bc-track::after{transform:translateX(18px)}
.bc-switch input:disabled + .bc-track{background:#5C8FBF; cursor:not-allowed}
.bc-switch input:disabled ~ .bc-cat-name{cursor:default}
.bc-always{font:500 11px/1.4 var(--bc-mono); letter-spacing:.06em; text-transform:uppercase; color:#27771F}
.bc-cat-desc{margin:6px 0 0 54px; font-size:14px; color:var(--bc-ink-2)}
.bc-details{margin:6px 0 0 54px; font-size:13px}
.bc-details summary{cursor:pointer; color:var(--bc-blue-ink); font-weight:600; padding:4px 0; width:max-content}
.bc-table-wrap{overflow-x:auto; margin-top:6px; border:1px solid var(--bc-line)}
.bc-table{border-collapse:collapse; width:100%; min-width:420px; font-size:13px; margin:0}
.bc-table th, .bc-table td{padding:6px 8px; border-bottom:1px solid var(--bc-line); text-align:left; vertical-align:top}
.bc-table th{font:500 10px/1.4 var(--bc-mono); letter-spacing:.08em; text-transform:uppercase; color:#5C6876; background:var(--bc-paper)}
.bc-table tr:last-child td{border-bottom:0}
.bc-table code{font:12px var(--bc-mono); background:none; padding:0; border:0; white-space:nowrap}

.bc .screen-reader-text{position:absolute!important; width:1px; height:1px; overflow:hidden; clip:rect(1px,1px,1px,1px); white-space:nowrap}

/* Click-to-load placeholder for external media */
.bc-ph{
	box-sizing:border-box; max-width:100%;
	display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:12px;
	min-height:220px; width:100%; padding:24px; background:var(--bc-paper,#F3F5F7);
	border:1px dashed #293850; color:#0F1722; font-size:15px; line-height:1.5;
	background-image:linear-gradient(rgba(41,57,81,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(41,57,81,.06) 1px,transparent 1px);
	background-size:24px 24px;
}
.bc-ph p{margin:0; max-width:60ch}
.bc-ph .bc-btn{flex:0 0 auto; min-height:44px; padding:11px 18px; border:1px solid #293850; background:#293850; color:#fff; font:inherit; font-weight:600; cursor:pointer}
.bc-ph label{font-size:14px; display:inline-flex; gap:8px; align-items:center; cursor:pointer}
.bc-ph input{width:18px; height:18px}
.bc-inline-btn{appearance:none; background:none; border:0; padding:0; font:inherit; color:inherit; text-decoration:underline; cursor:pointer}
.bc-policy .bc-table-wrap{margin-bottom:1.25em}

@media (max-width:600px){
	.bc{left:0; right:0; bottom:0; width:100%; max-height:85vh; max-height:85dvh}
	.bc-panel{border-left:0; border-right:0; border-bottom:0; padding-bottom:max(14px, env(safe-area-inset-bottom))}
	.bc-layer{padding:16px 16px 4px}
	.bc-links{margin:10px 16px 0}
	.bc-title{font-size:18px}
	.bc-text{font-size:14px}
	.bc-btn-main{flex:1 1 40%}
	.bc-btn-ghost{flex:1 1 100%}
	.bc-cat-desc, .bc-details{margin-left:0}
}
@media (prefers-reduced-motion:reduce){ .bc *{transition:none!important} }
@media print{ .bc{display:none!important} }
