@font-face {
  font-family: Satoshi;
  src: url('/assets/fonts/satoshi-variable.woff2') format('woff2');
  font-weight: 300 900;
  font-display: swap;
}
:root {
  --ink: #173449;
  --muted: #5e6a71;
  --paper: #f7f5ef;
  --accent: #28649a;
  --back-link: #15324a;
  --back-link-hover: #2463a0;
  --back-link-focus: #527a9b;
  --space: 1.5rem;
}
* { box-sizing: border-box; }
html { scrollbar-gutter: stable; }
@supports not (scrollbar-gutter: stable) {
  html { overflow-y: scroll; }
}
body { display: flex; flex-direction: column; min-block-size: 100vh; margin: 0; color: var(--ink); background: var(--paper); font: 1.0625rem/1.7 Satoshi, Arial, sans-serif; }
main { inline-size: 100%; max-inline-size: 52rem; margin-inline: auto; padding: clamp(1.25rem, 4vw, 3rem); }
.legal-footer { display: flex; justify-content: center; inline-size: 100%; margin-inline: 0; margin-block-start: auto; padding: 2rem 1.25rem 3rem; color: var(--muted); font-size: .875rem; text-align: center; }
.legal-footer p { margin: 0; text-align: center; }
header { margin-block: 3.5rem; }
h1, h2, h3 { line-height: 1.2; font-weight: 600; text-wrap: balance; }
h1 { font-size: clamp(2.5rem, 7vw, 4rem); letter-spacing: -.045em; margin-block: .5rem var(--space); }
h2 { font-size: clamp(1.5rem, 4vw, 1.9rem); letter-spacing: -.025em; }
h3 { font-size: 1.2rem; margin-block-start: 2rem; }
section { margin-block: 3rem; }
p, ul, ol { margin-block: 1rem; }
li + li { margin-block-start: .5rem; }
ul, ol { padding-inline-start: 1.5rem; }
address { font-style: normal; }
a { color: var(--accent); text-underline-offset: .2em; overflow-wrap: anywhere; }
a:hover { text-decoration-thickness: .15em; }
a:focus-visible { outline: .15rem solid var(--accent); outline-offset: .25rem; }
.back-to-website { display: inline-flex; align-items: center; gap: .5rem; min-block-size: 2.75rem; padding-block: .625rem; color: var(--back-link); font-family: Satoshi, Arial, sans-serif; font-size: 1rem; font-weight: 500; line-height: 1.5; letter-spacing: 0; text-decoration: none; transition: color .2s ease; }
.back-to-website:hover { color: var(--back-link-hover); text-decoration: none; }
.back-to-website:focus-visible { color: var(--back-link-hover); outline: 2px solid var(--back-link-focus); outline-offset: 4px; }
.back-to-website svg { flex: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
@media (prefers-reduced-motion: reduce) {
  .back-to-website { transition: none; }
}
.eyebrow { font-size: .8rem; font-weight: 700; letter-spacing: .12em; }
.muted { color: var(--muted); }
mark { background: #f5e5b4; color: var(--ink); }
.review-note { padding: var(--space); background: #e8edf0; border-inline-start: .25rem solid var(--accent); border-radius: .25rem; font-size: .9375rem; }
.review-note > :first-child { margin-block-start: 0; }
.review-note > :last-child { margin-block-end: 0; }
.review-details { margin-block-start: 4rem; }
@media print {
  body { background: white; font-size: 10pt; }
  main { max-inline-size: none; padding: 0; }
  h1 { font-size: 28pt; }
  h2 { font-size: 16pt; break-after: avoid; }
  h3 { break-after: avoid; }
  section { margin-block: 1.5rem; }
  .review-details { break-before: page; }
}
