/* ============================================================
   ClarityDzen — Klaro custom styling
   Overrides Klaro defaults to match the Archive's dark palette.
   Load AFTER the default klaro.min.css.
   ============================================================ */

.klaro {
  font-family: 'Cormorant Garamond', Georgia, serif;
}

/* Root container must be transparent — no empty box */
.klaro,
#klaro,
.klaro .cookie-notice.cookie-notice-hidden {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* ---- Floating notice (bottom banner) ---- */
.klaro .cookie-notice:not(.cookie-modal-notice) {
  background: #20201f !important;
  border: 1px solid #4a4636 !important;
  border-top: 2px solid #c9b99a !important;
  box-shadow: 0 12px 50px rgba(0, 0, 0, 0.7) !important;
  border-radius: 0 !important;
  color: #e8e3d6 !important;
  max-width: 420px !important;
}

.klaro .cookie-notice .cn-body {
  padding: 24px !important;
}

.klaro .cookie-notice p,
.klaro .cookie-modal p,
.klaro .cookie-notice .cn-ok {
  color: #d6cdbb !important;
}

.klaro .cookie-notice .cn-body p {
  font-size: 15px !important;
  line-height: 1.55 !important;
  margin-bottom: 16px !important;
}

/* ---- Links ---- */
.klaro a,
.klaro .cookie-notice a,
.klaro .cookie-modal a {
  color: #c9b99a !important;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(201, 185, 154, 0.4) !important;
}

.klaro a:hover {
  border-bottom-color: #c9b99a !important;
}

/* ---- "Manage choices" learn-more link — HIDDEN in notice ---- */
.klaro .cookie-notice .cn-learn-more,
.klaro .cookie-notice a.cn-learn-more,
.klaro .cn-body .cn-learn-more,
.klaro .cookie-notice .cn-buttons .cn-learn-more,
.klaro .cookie-notice .cn-ok .cn-learn-more {
  display: none !important;
}

/* ---- Buttons (shared) ---- */
/* ---- Button row layout — centered buttons ---- */
.klaro .cookie-notice .cn-body .cn-ok,
.klaro div.cn-ok {
  display: flex !important;
  flex-direction: row !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 0 !important;
  flex-wrap: nowrap !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
}

.klaro div.cn-ok > .cn-buttons {
  margin: 0 auto !important;
}

.klaro button.cm-btn,
.klaro .cookie-notice .cn-buttons button,
.klaro .cookie-modal .cm-btn {
  font-family: 'DM Mono', monospace !important;
  font-size: 12px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  padding: 12px 22px !important;
  transition: all 0.2s ease !important;
  box-shadow: none !important;
  margin: 0 !important;
}

.klaro .cookie-notice .cn-buttons {
  display: flex !important;
  justify-content: center !important;
  gap: 12px !important;
  margin: 0 !important;
}

/* Primary (Accept all) */
.klaro .cm-btn.cm-btn-success,
.klaro .cookie-notice .cn-buttons .cm-btn-success,
.klaro .cm-btn.cm-btn-accept-all,
.klaro .cm-btn.cm-btn-accept {
  background: #c9b99a !important;
  color: #0e0e0f !important;
  border: 1px solid #c9b99a !important;
}

.klaro .cm-btn.cm-btn-success:hover,
.klaro .cm-btn.cm-btn-accept-all:hover,
.klaro .cm-btn.cm-btn-accept:hover {
  background: #ddd0b8 !important;
  border-color: #ddd0b8 !important;
}

/* Secondary (Decline / Save) */
.klaro .cm-btn.cm-btn-decline,
.klaro .cm-btn.cm-btn-danger,
.klaro .cookie-notice .cn-buttons .cm-btn-decline {
  background: transparent !important;
  color: #d6cdbb !important;
  border: 1px solid #2a2a2e !important;
}

.klaro .cm-btn.cm-btn-decline:hover,
.klaro .cm-btn.cm-btn-danger:hover {
  border-color: #c9b99a !important;
  color: #c9b99a !important;
}

/* ---- Modal (detailed preferences) ---- */
.klaro .cookie-modal .cm-modal {
  background: #161618 !important;
  color: #d6cdbb !important;
  border: 1px solid #2a2a2e !important;
  border-radius: 0 !important;
}

.klaro .cookie-modal .cm-modal.cm-klaro {
  box-shadow: 0 8px 50px rgba(0, 0, 0, 0.6) !important;
}

.klaro .cookie-modal .cm-header,
.klaro .cookie-modal .cm-body,
.klaro .cookie-modal .cm-footer {
  border-color: #2a2a2e !important;
}

.klaro .cookie-modal .cm-header h1,
.klaro .cookie-modal .cm-modal h1.title {
  color: #c9b99a !important;
  font-weight: 400 !important;
  font-style: italic !important;
  font-size: 24px !important;
}

/* Service titles */
.klaro .cookie-modal .cm-list-label .cm-list-title,
.klaro .cookie-modal li.cm-service .cm-list-title {
  color: #d6cdbb !important;
  font-size: 17px !important;
}

.klaro .cookie-modal .cm-list-description,
.klaro .cookie-modal li.cm-service p {
  color: #9d9487 !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

/* Purpose / category headers */
.klaro .cookie-modal .cm-purpose > label .cm-list-title {
  color: #c9b99a !important;
  font-family: 'DM Mono', monospace !important;
  font-size: 11px !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}

/* ---- Toggle switches ---- */
.klaro .cm-list-input:checked + .cm-list-label .slider {
  background-color: #c9b99a !important;
}

.klaro .cm-list-label .slider {
  background-color: #2a2a2e !important;
}

.klaro .cm-list-input.required:checked + .cm-list-label .slider {
  background-color: #5a5547 !important;
}

/* "Powered by Klaro" — hide */
.klaro .cookie-notice .cn-ok .cn-learn-more,
.klaro .cookie-modal .cm-powered-by,
.klaro a.cm-powered-by,
.klaro .cn-powered-by {
  display: none !important;
}
