.privacy-banner,
.privacy-modal-card,
.privacy-settings {
  --privacy-gold: #b7872f;
  --privacy-gold-light: #d4ad62;
  --privacy-ink: #090907;
  --privacy-ivory: #f1eee6;
  font-family: "Inter", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
}

.privacy-banner[hidden], .privacy-modal[hidden] { display: none !important; }
.privacy-banner {
  position: fixed; z-index: 10000; right: 22px; bottom: 22px; left: 22px;
  display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 22px; align-items: center;
  max-width: 820px; margin: 0 auto; padding: 18px 20px;
  color: var(--privacy-ivory); background: rgba(11, 11, 8, .97);
  border: 1px solid rgba(183, 135, 47, .58); box-shadow: 0 24px 80px rgba(0, 0, 0, .48);
}
.privacy-kicker { margin: 0 0 8px; color: var(--privacy-gold-light); font-size: calc(10px + 2pt); font-weight: 700; letter-spacing: .24em; text-transform: uppercase; }
.privacy-banner h2, .privacy-modal h2 { margin: 0 0 7px; font-family: "Cormorant Garamond", "EB Garamond", Georgia, serif; font-size: clamp(24px, 2.5vw, 33px); font-weight: 400; line-height: 1; }
.privacy-banner p:not(.privacy-kicker), .privacy-intro, .privacy-detail { max-width: 680px; margin: 0; color: #c9c4b8; font-size: 14px; line-height: 1.5; }
.privacy-banner a, .privacy-modal a { color: var(--privacy-gold-light); text-decoration: underline; text-underline-offset: 3px; }
.privacy-actions, .privacy-modal-actions { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.privacy-actions button, .privacy-modal-actions button {
  min-height: 42px; padding: 0 17px; color: var(--privacy-ivory); background: transparent;
  border: 1px solid rgba(212, 173, 98, .55); cursor: pointer; font-size: calc(10px + 2pt); font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
}
.privacy-actions button:not(.text-button) { flex: 1 1 145px; color: var(--privacy-ink); background: var(--privacy-gold-light); border-color: var(--privacy-gold-light); }
.privacy-actions button.primary, .privacy-modal-actions button.primary { color: var(--privacy-ink); background: var(--privacy-gold-light); border-color: var(--privacy-gold-light); }
.privacy-actions .text-button { flex-basis: 100%; min-height: 26px; padding: 0; border: 0; color: #aaa394; text-align: right; }
.privacy-modal { position: fixed; z-index: 10002; inset: 0; display: grid; place-items: center; padding: 20px; background: rgba(0, 0, 0, .76); }
.privacy-modal-card { position: relative; width: min(620px, 100%); max-height: calc(100vh - 40px); overflow: auto; padding: 34px; color: var(--privacy-ivory); background: var(--privacy-ink); border: 1px solid rgba(183, 135, 47, .58); box-shadow: 0 28px 100px #000; }
.privacy-close { position: absolute; top: 14px; right: 16px; border: 0; color: var(--privacy-gold-light); background: none; cursor: pointer; font: 30px/1 Georgia, serif; }
.privacy-intro { margin-bottom: 24px; }
.privacy-choice { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 18px 0; border-top: 1px solid rgba(183, 135, 47, .28); color: inherit; }
.privacy-choice div { display: grid; gap: 5px; }
.privacy-choice strong { font-family: "Cormorant Garamond", Georgia, serif; font-size: 22px; font-weight: 500; }
.privacy-choice span { color: #aaa394; font-size: calc(12px + 2pt); line-height: 1.5; }
.privacy-choice .always-on { color: var(--privacy-gold-light); font-size: calc(9px + 2pt); font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.privacy-choice input { width: 42px; height: 22px; accent-color: var(--privacy-gold); }
.privacy-detail { margin: 0 0 24px; padding-top: 18px; border-top: 1px solid rgba(183, 135, 47, .28); }
.privacy-settings { position: fixed; z-index: 9998; right: 16px; bottom: 13px; padding: 7px 10px; color: #a9a397; background: rgba(9, 9, 7, .9); border: 1px solid rgba(183, 135, 47, .28); cursor: pointer; font-size: calc(9px + 2pt); letter-spacing: .1em; text-transform: uppercase; }
.privacy-modal-open { overflow: hidden; }
.form-privacy-note { margin: 14px 0 0; color: #9e988c; font-size: calc(11px + 2pt); line-height: 1.6; }
.form-privacy-note a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }

@media (max-width: 760px) {
  .privacy-banner { right: 10px; bottom: 10px; left: 10px; grid-template-columns: 1fr; gap: 18px; padding: 22px; }
  .privacy-actions { justify-content: stretch; }
  .privacy-actions button { flex: 1 1 145px; }
  .privacy-actions .text-button { flex-basis: 100%; text-align: center; }
  .privacy-modal-card { padding: 28px 22px; }
}
