/* Campaign adapter for the existing Chematek consent interface. */
.ck-consent-banner,.ck-consent-panel { box-sizing:border-box; background:#052644; color:#fff; font:15px/1.55 'Space Grotesk',sans-serif; padding:24px; border:1px solid #7AD4F3; }
.ck-consent-banner { border:0; position:fixed; z-index:200; bottom:0; left:0; right:0; max-height:80dvh; overflow:auto; }
.ck-consent-banner[hidden] { display:none; }
.ck-consent-banner h2,.ck-consent-panel h2 { font:600 21px/1.25 'Space Grotesk',sans-serif; margin:0 0 10px; }
.ck-consent-banner p,.ck-consent-panel p { margin:0 0 12px; max-width:900px; }
.ck-consent-banner a { color:#7AD4F3; text-decoration:underline; }
.ck-consent-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:18px; }
.ck-consent-button { font:600 14px/1.4 'Space Grotesk',sans-serif; padding:11px 18px; min-height:44px; background:#fff; color:#052644; border:1px solid #fff; border-radius:6px; cursor:pointer; }
.ck-consent-button:hover { background:#7AD4F3; border-color:#7AD4F3; }
.ck-consent-panel { width:min(640px,calc(100% - 32px)); max-height:85dvh; overflow:auto; border-radius:12px; }
.ck-consent-panel::backdrop { background:rgba(0,7,15,.65); }
.ck-consent-category { display:flex; gap:12px; padding:16px 0; border-bottom:1px solid #486276; }
.ck-consent-category input { width:20px; height:20px; flex:none; accent-color:#7AD4F3; margin-top:3px; }
.ck-consent-category span span { display:block; margin-top:5px; color:#C3D0DC; }
.campaign-footer-legal button { background:none; border:0; padding:0; color:#7AD4F3; font:inherit; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.campaign-consent-visible .campaign-bottom-cta { display:none!important; }
@media(max-width:600px){.ck-consent-banner{padding:20px}.ck-consent-actions{display:grid;grid-template-columns:1fr 1fr}.ck-consent-button{width:100%}}

/* Banner copy and vertically ordered choices share one compact desktop row. */
.ck-consent-banner { display:grid; grid-template-columns:minmax(0,1fr) 240px; align-items:center; gap:24px 40px; padding:24px 32px; }
.ck-consent-copy { min-width:0; }
.ck-consent-banner p { max-width:none; }
.ck-consent-banner .ck-consent-actions { display:flex; flex-direction:column; flex-wrap:nowrap; gap:8px; margin:0; }
.ck-consent-banner .ck-consent-button { width:100%; }
.ck-consent-banner .ck-consent-accept { background:#7AD4F3; border-color:#7AD4F3; color:#052644; }
.ck-consent-banner .ck-consent-accept:hover { background:#a8e4f8; border-color:#a8e4f8; }
@media(max-width:600px) {
  .ck-consent-banner { grid-template-columns:1fr; padding:14px 16px; gap:10px; font-size:14px; line-height:1.4; }
  .ck-consent-banner h2 { font-size:17px; line-height:1.25; margin-bottom:6px; }
  .ck-consent-banner p { margin-bottom:6px; }
  .ck-consent-banner .ck-consent-actions { gap:6px; }
  .ck-consent-banner .ck-consent-button { font-size:13px; line-height:1.3; padding:9px 12px; min-height:44px; }
}

.ck-consent-heading-row { display:flex; flex-wrap:wrap; justify-content:flex-start; align-items:baseline; gap:4px 18px; margin-bottom:8px; }
.ck-consent-banner .ck-consent-heading-row h2 { margin:0; }
.ck-consent-heading-row a { font-size:13px; line-height:1.5; }
@media(max-width:600px) { .ck-consent-heading-row { margin-bottom:6px; } }

/* Compact pointer-friendly desktop controls; preserve mobile/touch targets. */
@media(min-width:601px) {
  .ck-consent-banner { padding-top:16px; padding-bottom:16px; }
  .ck-consent-banner .ck-consent-actions { gap:6px; }
  .ck-consent-banner .ck-consent-button { min-height:34px; padding:6px 14px; }
  .ck-consent-banner p { margin-bottom:0; }
}
@media(pointer:coarse) and (min-width:601px) {
  .ck-consent-banner .ck-consent-button { min-height:44px; }
}
