.privacy-notice {
  color: #182f50;
  background: #edf2fb;
  border-bottom: 1px solid #c8d6eb;
}
.privacy-notice[hidden], .privacy-notice-trigger[hidden] { display: none !important; }
.privacy-notice-inner {
  box-sizing: border-box;
  width: min(100% - clamp(2.5rem, 9vw, 9.5rem), 78rem);
  margin-inline: auto;
  padding-block: .65rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: .25rem 1.5rem;
}
.privacy-notice-inner strong { font-size: .94rem; font-weight: 700; }
.privacy-notice-inner p { margin: .12rem 0 0; font-size: .9rem; line-height: 1.45; }
.privacy-notice-actions { display: flex; align-items: center; flex-wrap: wrap; gap: .25rem 1rem; flex: none; }
.privacy-notice-actions a,
.privacy-notice-actions button {
  display: inline-flex;
  align-items: center;
  min-height: 2.75rem;
  color: #173e86;
  font: 650 .9rem/1.4 system-ui, sans-serif;
}
.privacy-notice-actions a { text-decoration: underline; text-underline-offset: .17em; }
.privacy-notice-actions button {
  border: 1px solid #647b9f;
  border-radius: 2rem;
  padding: .43rem 1rem;
  background: transparent;
  cursor: pointer;
}
.privacy-notice-actions button:hover { background: #dce6f7; }
.privacy-notice:focus-visible { outline: 2px solid #174ba9; outline-offset: -2px; }
.privacy-footer-row { border-top: 1px solid var(--line, #d3dee4); padding-block: .55rem; }
.privacy-publisher { margin: .5rem 0 .15rem; color: var(--soft-ink, #47606a); font-size: .9rem; }
.privacy-app-footer {
  border-top: 1px solid var(--line, #d3dee4);
  background: #fff;
}
.privacy-app-footer > nav {
  box-sizing: border-box;
  max-width: 72rem;
  margin-inline: auto;
  padding: .6rem clamp(.9rem, 4vw, 3rem);
}
footer .privacy-footer-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 1.2rem;
  margin-block: 0;
}
footer .privacy-footer-links a, footer .privacy-notice-trigger {
  display: inline-flex;
  align-items: center;
  min-height: 2.75rem;
  color: #224c8b;
  font: 600 .9rem/1.4 system-ui, sans-serif;
  text-decoration: underline;
  text-underline-offset: .18em;
}
footer .privacy-notice-trigger {
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0;
  cursor: pointer;
  flex: none;
}
.privacy-notice :focus-visible, .privacy-footer-links :focus-visible {
  outline: 3px solid #174ba9;
  outline-offset: 2px;
}
@media (max-width: 47rem) {
  .privacy-notice-inner { flex-direction: column; align-items: flex-start; gap: .25rem; }
}
@media print {
  .privacy-notice, .privacy-footer-row, .privacy-app-footer, .privacy-notice-trigger { display: none !important; }
}
