/* RealViu consent banner. Slides up from the bottom; sits above the
   fixed mobile CTA bar (.rv-mobilebar) so it never covers "Get started". */
.rvc{position:fixed;left:0;right:0;bottom:0;z-index:95;background:var(--rv-surface);
  border-top:2px solid var(--color-accent);box-shadow:0 -18px 50px rgba(0,0,0,.55);
  color:var(--rv-bone);font-family:var(--font-body);
  transform:translateY(100%);transition:transform .32s cubic-bezier(.2,.7,.2,1)}
.rvc.rvc-on{transform:translateY(0)}
@media(prefers-reduced-motion:reduce){.rvc{transition:none}}
@media(max-width:700px){.rvc{bottom:74px}}

.rvc-in{max-width:1180px;margin:0 auto;padding:18px var(--edge);
  display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.rvc-copy{flex:1 1 420px;min-width:0}
.rvc-h{margin:0 0 4px;font-family:var(--font-heading);font-weight:800;font-size:16px;letter-spacing:-0.01em}
.rvc-p{margin:0;font-size:14px;line-height:22px;color:color-mix(in srgb,var(--rv-bone) 74%,transparent);max-width:78ch}
.rvc-p a{color:var(--color-accent-400);text-decoration:underline}
.rvc-acts{display:flex;gap:10px;flex-wrap:wrap;align-items:center}

.rvc-b{font-family:var(--font-heading);font-weight:800;font-size:14px;
  min-height:44px;padding:11px 18px;border-radius:8px;cursor:pointer;
  border:2px solid transparent;white-space:nowrap}
.rvc-pri{background:var(--color-accent);color:var(--rv-ink);border-color:var(--color-accent)}
.rvc-pri:hover{filter:brightness(1.08)}
.rvc-sec{background:transparent;color:var(--rv-bone);border-color:var(--color-divider)}
.rvc-sec:hover{border-color:var(--rv-bone)}
.rvc-ghost{background:transparent;color:color-mix(in srgb,var(--rv-bone) 78%,transparent);border-color:transparent;text-decoration:underline}
.rvc-ghost:hover{color:var(--rv-bone)}
.rvc :focus-visible{outline:3px solid var(--color-accent-400);outline-offset:2px}

.rvc-prefs{max-width:1180px;margin:0 auto;padding:4px var(--edge) 20px;
  border-top:2px solid var(--color-divider)}
.rvc-row{display:flex;gap:20px;align-items:center;justify-content:space-between;
  padding:14px 0;border-bottom:1px solid var(--color-divider)}
.rvc-row:last-of-type{border-bottom:0}
.rvc-rt{margin:0 0 2px;font-family:var(--font-heading);font-weight:800;font-size:14.5px}
.rvc-rd{margin:0;font-size:13px;line-height:21px;color:color-mix(in srgb,var(--rv-bone) 66%,transparent);max-width:70ch}
.rvc-always{font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:color-mix(in srgb,var(--rv-bone) 46%,transparent);white-space:nowrap}

/* switch */
.rvc-sw{position:relative;display:inline-flex;align-items:center;flex:none;cursor:pointer}
.rvc-sw input{position:absolute;opacity:0;width:52px;height:30px;margin:0;cursor:pointer}
.rvc-sl{width:52px;height:30px;border-radius:999px;background:#3a3735;
  border:2px solid var(--color-divider);transition:background .18s,border-color .18s;display:block}
.rvc-sl::after{content:"";position:absolute;top:5px;left:5px;width:20px;height:20px;border-radius:50%;
  background:var(--rv-bone);transition:transform .18s}
.rvc-sw input:checked+.rvc-sl{background:var(--color-accent);border-color:var(--color-accent)}
.rvc-sw input:checked+.rvc-sl::after{transform:translateX(22px);background:var(--rv-ink)}
.rvc-sw input:focus-visible+.rvc-sl{outline:3px solid var(--color-accent-400);outline-offset:2px}
.rvc-vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.rvc-save{padding-top:16px}
@media(prefers-reduced-motion:reduce){.rvc-sl,.rvc-sl::after{transition:none}}
