/* =========================================================
   WE MANAGE — cookie consent banner

   Deliberately quiet: a bar at the bottom, not a modal that
   blocks the page. Accept and Decline carry equal visual
   weight — a Decline styled as an afterthought is the thing
   regulators single out, and it is also just dishonest.
   ========================================================= */

.wm-consent {
  position: fixed;
  z-index: 9000;
  inset-inline: 0;
  bottom: 0;
  padding: 16px clamp(16px, 4vw, 40px);
  padding-bottom: max(16px, env(safe-area-inset-bottom));
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px 26px;
  flex-wrap: wrap;
  border-top: 1px solid rgba(242, 200, 107, 0.22);
  background: rgba(9, 9, 9, 0.96);
  backdrop-filter: blur(10px);
  box-shadow: 0 -18px 50px rgba(0, 0, 0, 0.45);
  transform: translateY(110%);
  transition: transform .42s cubic-bezier(.16, 1, .3, 1);
}

.wm-consent.is-in { transform: translateY(0); }

.wm-consent[hidden] { display: none; }

.wm-consent-copy {
  flex: 1 1 380px;
  min-width: 0;
}

.wm-consent-copy p {
  margin: 0;
  font-size: 13px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.72);
}

.wm-consent-copy a {
  color: var(--gold2, #f2c86b);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.wm-consent-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.wm-consent-btn {
  appearance: none;
  padding: 10px 20px;
  font-family: inherit;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.1px;
  text-transform: uppercase;
  border-radius: 999px;
  cursor: pointer;
  transition: background .18s ease, border-color .18s ease, color .18s ease;
  white-space: nowrap;
}

/* Equal weight, different emphasis — both are obviously buttons. */
.wm-consent-accept {
  border: 1px solid var(--gold2, #f2c86b);
  background: var(--gold2, #f2c86b);
  color: #14100a;
}

.wm-consent-accept:hover { background: #f7d894; border-color: #f7d894; }

.wm-consent-decline {
  border: 1px solid rgba(255, 255, 255, 0.28);
  background: transparent;
  color: rgba(255, 255, 255, 0.86);
}

.wm-consent-decline:hover {
  border-color: rgba(255, 255, 255, 0.55);
  color: #fff;
}

.wm-consent-btn:focus-visible {
  outline: 2px solid var(--gold2, #f2c86b);
  outline-offset: 3px;
}

@media (max-width: 640px) {
  .wm-consent { gap: 14px; }
  .wm-consent-actions { width: 100%; }
  .wm-consent-btn { flex: 1 1 auto; text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
  .wm-consent { transition: none; }
}

/* ---- Per-purpose preferences -------------------------------------------
   Added when the banner moved from one Accept/Decline pair to consent per
   purpose. The rows are labels wrapping their own checkbox, so the whole row
   is a hit target rather than just the box. */
.wm-consent-prefs {
  width: 100%;
  margin: 14px 0 4px;
  padding-top: 14px;
  border-top: 1px solid rgba(255, 255, 255, .10);
}
.wm-consent-row {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  padding: 9px 0;
  cursor: pointer;
}
.wm-consent-row.is-locked { cursor: default; opacity: .72; }
.wm-consent-row input {
  flex: 0 0 auto;
  width: 17px; height: 17px;
  margin-top: 2px;
  accent-color: #c99b42;   /* brand gold rather than the OS blue */
  cursor: inherit;
}
.wm-consent-row span { display: block; }
.wm-consent-row b {
  display: block;
  font-size: 13.5px;
  font-weight: 650;
  color: #f4f4f4;
  margin-bottom: 2px;
}
.wm-consent-row em {
  display: block;
  font-style: normal;
  font-size: 12.3px;
  line-height: 1.5;
  color: rgba(255, 255, 255, .55);
}
.wm-consent-save { margin-top: 10px; width: 100%; }

/* The settings toggle sits between decline and accept, so refusing stays
   exactly as reachable as agreeing. */
.wm-consent-manage { opacity: .85; }
.wm-consent-manage:hover { opacity: 1; }

/* Equal prominence for accept and refuse.
   ------------------------------------------------------------------------
   On a narrow screen the three buttons wrapped, which left "Accept all"
   alone on its own row stretched to the full width while "Decline all" sat
   at less than half that. Regulators read a bigger, bolder accept button as
   nudging, and consent obtained that way is not freely given — so the two
   decisions are placed on one row at identical width, and the settings
   toggle (which decides nothing on its own) goes underneath. */
@media (max-width: 620px) {
  .wm-consent-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    width: 100%;
  }
  .wm-consent-decline { grid-column: 1; grid-row: 1; }
  .wm-consent-accept  { grid-column: 2; grid-row: 1; }
  .wm-consent-manage  { grid-column: 1 / -1; grid-row: 2; }
  .wm-consent-actions button { width: 100%; }
}
