:root {
  color-scheme: dark;
  --rb-brand-main: #285aa7;
  --rb-brand-main-2: #2a499a;
  --rb-brand-sub-1: #1e90ff;
  --rb-brand-sub-2: #789ed3;
  --rb-brand-black: #000000;
  --rb-brand-tan: #f4efe1;
  --rb-brand-white: #ffffff;
  --rb-font-display: "Fraunces", Georgia, "Times New Roman", serif;
  --rb-font-ui: "Poppins", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --rb-policy-background-image: url(assets/app-background/botanical-background.webp?v=15d153df46fa&rb=20260729b);
  font-family: var(--rb-font-ui);
}
@media (orientation: landscape) {
  :root { --rb-policy-background-image: url(assets/app-background/botanical-background.webp?v=15d153df46fa&rb=20260729b); }
}
@media (orientation: portrait) and (min-width: 700px) {
  :root { --rb-policy-background-image: url(assets/app-background/botanical-background.webp?v=15d153df46fa&rb=20260729b); }
}
* { box-sizing: border-box; }
body {
  margin: 0;
  min-height: 100vh;
  color: var(--rb-brand-white);
  background: var(--rb-brand-black) var(--rb-policy-background-image) center / cover no-repeat fixed;
  font-family: var(--rb-font-ui);
  line-height: 1.6;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  background: rgba(0, 0, 0, .84);
}
a { color: var(--rb-brand-sub-1); }
a:focus-visible { outline: 3px solid var(--rb-brand-tan); outline-offset: 4px; }
.policy-header {
  border-bottom: 1px solid rgba(120, 158, 211, .42);
  background: rgba(42, 73, 154, .94);
  backdrop-filter: blur(14px);
}
.policy-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  width: min(860px, calc(100% - 32px));
  margin: 0 auto;
  padding: 14px 0;
  color: var(--rb-brand-white);
  text-decoration: none;
}
.policy-brand img { width: 56px; height: 56px; border-radius: 12px; }
.policy-brand span { display: grid; }
.policy-brand strong { font-size: 1rem; }
.policy-brand small { color: var(--rb-brand-sub-2); font-weight: 800; }
main, footer { width: min(860px, calc(100% - 32px)); margin-inline: auto; }
.policy-intro { padding-block: 44px 30px; }
.policy-eyebrow { margin: 0; color: var(--rb-brand-sub-2); font-size: .75rem; font-weight: 900; }
h1 {
  margin: 4px 0 6px;
  color: var(--rb-brand-tan);
  font-family: var(--rb-font-display);
  font-size: clamp(2.2rem, 9vw, 4rem);
  font-weight: 700;
  line-height: 1;
}
h2 { margin: 0 0 8px; color: var(--rb-brand-tan); font-size: 1.25rem; }
p { margin: 0 0 12px; }
main > section:not(.policy-intro), footer { border-top: 1px solid rgba(120, 158, 211, .26); }
main > section:not(.policy-intro) { padding: 24px 0; }
footer { padding: 28px 0 48px; font-weight: 800; }
@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; } }
