/* Reacheffect consent banner (Option A tokens). Bottom-of-viewport card, two equal buttons, no dark pattern. */
.consent{position:fixed;left:16px;right:16px;bottom:16px;z-index:80;margin:0 auto;max-width:760px;display:grid;gap:14px;padding:18px 20px;border-radius:16px;background:var(--surface);color:var(--ink);border:1px solid var(--border);box-shadow:var(--shadow-lg);font-size:var(--text-sm)}
@media(min-width:760px){.consent{grid-template-columns:1fr auto;align-items:start}.consent-btns{max-width:250px;justify-content:flex-end}}
.consent-title{font-family:var(--font-display);font-weight:700;font-size:var(--text-base);margin:0 0 4px}
.consent p{margin:0;color:var(--muted);line-height:1.5}
.consent p a{color:var(--accent);text-decoration:underline}
.consent [hidden]{display:none!important}
.consent-settings{display:grid;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}
.consent-settings label{display:flex;gap:10px;align-items:flex-start;color:var(--ink);cursor:pointer}
.consent-settings input{margin-top:3px;accent-color:var(--accent)}
.consent-btns{display:flex;gap:8px;flex-wrap:wrap;align-content:start}
.consent .btn{height:38px;padding:0 16px}
.consent .consent-link{padding:0 8px}
@media(max-width:759px){.consent-btns .btn{flex:1 1 auto}}
.consent-short{display:none}
/* Phones: one compact strip (title hidden, short sentence, three buttons on one row) so the hero CTA stays visible */
@media(max-width:599px){
  .consent{left:8px;right:8px;bottom:8px;gap:10px;padding:12px 14px;border-radius:14px}
  .consent-title{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .consent-long{display:none}.consent-short{display:inline}
  .consent p{font-size:13px;line-height:1.4}
  .consent-btns{flex-wrap:nowrap;gap:6px}
  .consent .btn{height:36px;padding:0 10px;font-size:13px;flex:1 1 0;min-width:0;white-space:nowrap}
  .consent .consent-link{flex:0 0 auto;padding:0 8px}
  .consent-settings{margin-top:8px;padding-top:8px;max-height:40vh;overflow:auto}
}
@media(prefers-reduced-motion:no-preference){.consent{animation:consent-in .25s ease-out}}
@keyframes consent-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
/* /do-not-sell/ status line */
.consent-status{display:inline-flex;gap:8px;align-items:center;padding:10px 14px;border-radius:10px;border:1px solid var(--border);background:var(--surface-alt,var(--surface));font-size:var(--text-sm)}
.consent-status b{font-family:var(--font-display)}
