/* Informative, nonmodal cookie notice. Scoped to this component. */
#cookie-notice.cn64-banner {
  box-sizing: border-box;
  position: fixed;
  inset: auto 0 0;
  z-index: 1000;
  max-height: 55vh;
  max-height: 55dvh;
  overflow: auto;
  overscroll-behavior: contain;
  border: 0;
  border-top: 1px solid #dce6f3;
  background: #fff;
  color: #142f50;
  box-shadow: 0 -7px 30px #142f5010;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 15px;
  line-height: 1.6;
  text-align: left;
  -webkit-font-smoothing: antialiased;
}
#cookie-notice[hidden], .cn64-space[hidden] { display: none !important; }
#cookie-notice .cn64-inner { box-sizing: border-box; display: grid; grid-template-columns: 44px minmax(0, 1fr) auto 44px; align-items: center; gap: 24px; max-width: 1164px; margin: 0 auto; padding: 21px 24px; }
#cookie-notice .cn64-symbol { box-sizing: border-box; display: grid; place-items: center; align-self: start; width: 44px; height: 44px; border: 1px solid #dce9fb; border-radius: 13px; background: #edf5ff; color: #1d4ed8; }
#cookie-notice .cn64-symbol svg { width: 31px; height: 31px; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
#cookie-notice .cn64-symbol circle { fill: currentColor; stroke: none; }
#cookie-notice .cn64-title { margin: 0 0 5px; color: #142f50; font-size: 20px; font-weight: 750; line-height: 1.3; letter-spacing: -.025em; }
#cookie-notice .cn64-description { margin: 0; color: #455c77; font-size: 15px; line-height: 1.55; }
#cookie-notice .cn64-storage { margin: 6px 0 0; color: #63738a; font-size: 12px; line-height: 1.5; }
#cookie-notice .cn64-actions { display: flex; align-items: center; justify-content: center; gap: 16px; }
#cookie-notice .cn64-primary { box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; gap: 18px; min-height: 46px; padding: 10px 20px; border: 1px solid #1d4ed8; border-radius: 10px; background: #1d4ed8; color: #fff; font: inherit; font-size: 14px; font-weight: 700; line-height: 1.5; cursor: pointer; }
#cookie-notice .cn64-primary:hover { border-color: #1e40af; background: #1e40af; }
#cookie-notice .cn64-primary svg { width: 18px; height: 18px; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
#cookie-notice .cn64-link { box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; min-height: 44px; color: #1d4ed8; font-size: 13px; font-weight: 650; line-height: 1.5; text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; white-space: nowrap; }
#cookie-notice .cn64-link:hover { color: #1e40af; }
#cookie-notice .cn64-close { box-sizing: border-box; display: grid; place-items: center; align-self: start; width: 44px; height: 44px; padding: 11px; border: 0; border-radius: 10px; background: transparent; color: #62758c; cursor: pointer; }
#cookie-notice .cn64-close:hover { background: #eef4fb; color: #173452; }
#cookie-notice .cn64-close svg { width: 22px; height: 22px; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; }
#cookie-notice .cn64-primary:focus-visible, #cookie-notice .cn64-close:focus-visible, #cookie-notice .cn64-link:focus-visible { outline: 3px solid #60a5fa; outline-offset: 3px; }
.cn64-space { display: block; height: 0; pointer-events: none; }
button.cn64-reopen { display: inline-flex; align-items: center; min-height: 44px; padding: 0; border: 0; border-radius: 2px; background: transparent; color: inherit; font: inherit; line-height: inherit; text-align: left; text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; cursor: pointer; }
button.cn64-reopen[hidden] { display: none !important; }
button.cn64-reopen:hover { text-decoration-thickness: 2px; }
button.cn64-reopen:focus-visible { outline: 3px solid #60a5fa; outline-offset: 3px; }
@media (max-width: 1000px) and (min-width: 761px) {
  #cookie-notice .cn64-inner { gap: 16px; padding-inline: 20px; }
  #cookie-notice .cn64-actions { flex-direction: column; gap: 0; }
}
@media (max-width: 760px) {
  #cookie-notice .cn64-inner { grid-template-columns: 44px minmax(0, 1fr) 44px; gap: 10px 12px; padding: 16px; padding-bottom: max(16px, env(safe-area-inset-bottom)); }
  #cookie-notice .cn64-symbol { grid-column: 1; grid-row: 1; }
  #cookie-notice .cn64-copy { display: contents; }
  #cookie-notice .cn64-title { grid-column: 2; grid-row: 1; align-self: center; margin: 0; font-size: 20px; }
  #cookie-notice .cn64-description { grid-column: 1 / -1; grid-row: 2; font-size: 15px; }
  #cookie-notice .cn64-storage { grid-column: 1 / -1; grid-row: 3; margin: 0; font-size: 12px; }
  #cookie-notice .cn64-actions { grid-column: 1 / -1; grid-row: 4; justify-content: flex-start; gap: 24px; margin-top: 2px; }
  #cookie-notice .cn64-primary { min-width: 136px; }
  #cookie-notice .cn64-close { grid-column: 3; grid-row: 1; }
}
@media (max-width: 360px) {
  #cookie-notice .cn64-title { font-size: 18px; }
  #cookie-notice .cn64-actions { gap: 18px; }
  #cookie-notice .cn64-primary { min-width: 126px; padding-inline: 16px; }
}
@media print { #cookie-notice.cn64-banner, .cn64-space, button.cn64-reopen { display: none !important; } }
