.pb-consent[hidden], .pb-consent [hidden], .pb-cookie-settings[hidden] { display: none !important; }
.pb-consent { position: fixed; z-index: 1000; inset: auto 24px 24px; width: min(1132px, calc(100% - 48px)); margin-inline: auto; display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(320px, .9fr); gap: 20px 30px; align-items: center; box-sizing: border-box; padding: 26px 30px; border: 1px solid #a9c3ba; border-radius: 16px; background: #e8f0ed; color: #102e39; box-shadow: 0 12px 48px #102e3929; font: 15px/1.6 -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif; max-height: calc(100dvh - 48px); overflow: auto; }
.pb-consent * { box-sizing: border-box; }
.pb-consent-copy { min-width: 0; }
.pb-consent h2 { margin: 0 0 9px; font: 500 25px/1.25 Georgia, serif; letter-spacing: -.02em; }
.pb-consent p { margin: 0; }
.pb-consent-options { min-width: 0; align-self: start; padding: 14px 18px; border: 1px solid #b3cbc2; border-radius: 11px; background: #ffffffb8; }
.pb-consent-options summary { color: #164c5d; font-weight: 600; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.pb-consent-option-list { display: grid; gap: 12px; margin-top: 14px; }
.pb-consent-option-list > p { font-size: 13px; line-height: 1.5; color: #405b59; }
.pb-consent-option { display: flex; align-items: center; justify-content: space-between; gap: 18px; min-width: 0; padding: 17px 18px; border: 1px solid #b3cbc2; border-radius: 11px; background: #ffffffb8; cursor: pointer; }
.pb-consent-option-copy { display: grid; gap: 4px; min-width: 0; }
.pb-consent-option strong { font-size: 15px; line-height: 1.4; font-weight: 650; }
.pb-consent-option-copy > span { color: #405b59; font-size: 13px; line-height: 1.5; }
.pb-consent-option input { appearance: none; -webkit-appearance: none; position: relative; flex: 0 0 48px; width: 48px; height: 28px; margin: 0; border: 1px solid #718e86; border-radius: 999px; background: #bccdc6; cursor: pointer; transition: background .16s ease, border-color .16s ease; }
.pb-consent-option input::before { content: ''; position: absolute; top: 2px; left: 2px; width: 22px; height: 22px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px #102e3933; transition: transform .16s ease; }
.pb-consent-option input:checked { border-color: #21647a; background: #21647a; }
.pb-consent-option input:checked::before { transform: translateX(20px); }
.pb-consent-option input:disabled { opacity: .55; cursor: not-allowed; }
.pb-consent-fineprint { align-self: end; color: #405b59; font-size: 12px; line-height: 1.6; }
.pb-consent-fineprint p + p { margin-top: 6px; }
.pb-consent a { color: #164c5d; text-decoration: underline; text-underline-offset: 3px; }
.pb-consent-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; align-self: end; }
.pb-consent-actions button { appearance: none; width: 100%; min-height: 48px; padding: 11px 15px; border: 1px solid #21647a; border-radius: 7px; background: #fff; color: #164c5d; font: inherit; font-weight: 600; cursor: pointer; }
.pb-consent-actions button:hover { background: #f3f8f6; }
.pb-consent :focus-visible, .pb-cookie-settings:focus-visible { outline: 3px solid #167795; outline-offset: 4px; }
.pb-cookie-settings { appearance: none; border: 0; background: none; color: inherit; padding: 0; font: inherit; cursor: pointer; text-decoration: underline; text-underline-offset: 4px; }
.pb-site .pb-footer-links { flex-wrap: wrap; }
@media (max-width: 800px) {
  .pb-consent { inset: auto 12px 12px; width: calc(100% - 24px); grid-template-columns: minmax(0, 1fr); padding: 21px; gap: 16px; font-size: 14px; line-height: 1.55; max-height: calc(100dvh - 24px); }
  .pb-consent h2 { font-size: 23px; }
  .pb-consent-option { padding: 14px 15px; gap: 14px; }
  .pb-consent-fineprint { font-size: 12px; }
  .pb-consent-actions { gap: 10px; }
  .pb-consent-actions button { padding: 11px 8px; }
}
@media (prefers-reduced-motion: reduce) { .pb-consent-option input, .pb-consent-option input::before { transition: none; } }
@media (forced-colors: active) {
  .pb-consent-option input { border-color: ButtonText; background: Canvas; }
  .pb-consent-option input::before { background: ButtonText; }
  .pb-consent-option input:checked { background: Highlight; }
  .pb-consent-option input:checked::before { background: HighlightText; }
}
