html { scroll-behavior: smooth; }
body { background: #fafaf8; }
::selection { background: #d4af37; color: #0a0a0a; }
::-webkit-scrollbar { width: 9px; }
::-webkit-scrollbar-track { background: #fafaf8; }
::-webkit-scrollbar-thumb { background: #d4af37; border-radius: 999px; }
.legal-drawer { transform: translateX(-100%); transition: transform .3s ease; }
.legal-drawer.open { transform: translateX(0); }
.legal-overlay { background: linear-gradient(90deg, rgba(10,10,10,.94), rgba(10,10,10,.78) 55%, rgba(10,10,10,.3)); }
.section-link.active { border-color: #9b7417; color: #0a0a0a; font-weight: 600; }
.legal-ivory-label { color: #6f5110; }
[data-component="site-footer"] .border-y p { color: #b3b3b3; }
.legal-rich-text > * + * { margin-top: 1rem; }
.legal-rich-text ul,
.legal-rich-text ol { padding-left: 1.35rem; }
.legal-rich-text ul { list-style: disc; }
.legal-rich-text ol { list-style: decimal; }
.legal-rich-text a { color: #6f5110; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }

@media print {
  header,
  footer,
  .legal-sidebar,
  .legal-mobile-controls,
  .legal-drawer,
  #legal-backdrop { display: none !important; }
  body { background: #fff; color: #000; }
  main { padding-top: 0 !important; }
  main > section:first-child { min-height: auto !important; padding-top: 0 !important; color: #000 !important; }
  main > section:first-child img,
  main > section:first-child .legal-overlay { display: none !important; }
  main > section:first-child > div { min-height: auto !important; padding: 0 0 2rem !important; }
  main > section:first-child nav { display: none !important; }
  main > section:last-of-type { padding: 0 !important; }
  .legal-section { break-inside: avoid; scroll-margin-top: 0; }
  [data-legal-review-notice] { break-inside: avoid; }
  a { color: inherit !important; text-decoration: none !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
  }
}
