:root {
  --red: #B00016;
  --charcoal: #111111;
  --bone: #F7F5F2;
  --slate: #6B6F76;
  --fog: #D9D6D2;
  --sans: Inter, "Helvetica Neue", Arial, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
body {
  margin: 0;
  background: var(--bone);
  color: var(--charcoal);
  font-family: var(--sans);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
a { color: inherit; }
.wrap { width: min(1120px, calc(100% - 64px)); margin-inline: auto; }
.site-header { border-bottom: 1px solid var(--fog); background: var(--bone); }
.header-inner { min-height: 92px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: inline-flex; width: min(260px, 65%); }
.brand img { display: block; width: 100%; height: auto; }
.header-back { color: var(--charcoal); font-size: 12px; font-weight: 600; text-decoration: none; }
.header-back:hover, .legal-footer a:hover { color: var(--red); }
.eyebrow { margin: 0 0 18px; color: var(--slate); font-size: 10px; font-weight: 600; letter-spacing: .19em; line-height: 1.5; text-transform: uppercase; }
.legal-main { max-width: 920px; padding-block: clamp(54px, 8vw, 104px) 112px; }
h1 { margin: 0; max-width: 800px; font-size: clamp(42px, 7vw, 76px); font-weight: 300; letter-spacing: -.06em; line-height: 1.02; }
.updated { margin: 18px 0 40px; color: var(--slate); font-size: 12px; }
.legal-content { max-width: 760px; }
.legal-content p, .legal-content li { color: #343434; font-size: 15px; line-height: 1.8; }
.legal-content p { margin: 0 0 18px; }
.legal-content h2 { margin: 38px 0 12px; font-size: 21px; font-weight: 500; letter-spacing: -.025em; }
.legal-content ul { padding-left: 22px; }
.legal-content a { text-decoration-thickness: 1px; text-underline-offset: 3px; }
.legal-footer { border-top: 1px solid #454443; background: var(--charcoal); color: #BDB9B4; }
.footer-inner { min-height: 84px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.footer-inner p, .footer-inner a { margin: 0; font-size: 10px; line-height: 1.7; }
.footer-links { display: flex; flex-wrap: wrap; gap: 8px 26px; }
.footer-links a { color: var(--bone); font-size: 13px; font-weight: 500; text-underline-offset: 4px; }
.message-main { min-height: calc(100vh - 177px); display: grid; align-content: center; padding-block: 72px; }
.message-main h1 { max-width: 700px; }
.message-main p:not(.eyebrow) { max-width: 580px; margin: 24px 0 0; color: var(--slate); font-size: 17px; line-height: 1.7; }
.message-main .return-link { display: inline-flex; width: fit-content; margin-top: 30px; color: var(--red); font-size: 13px; font-weight: 600; text-underline-offset: 4px; }
@media (max-width: 600px) {
  .wrap { width: calc(100% - 40px); }
  .header-inner { min-height: 76px; }
  .brand { width: min(220px, 65%); }
  .header-back { font-size: 11px; }
  .legal-main { padding-block: 50px 76px; }
  .updated { margin-bottom: 32px; }
  .legal-content p, .legal-content li { font-size: 14px; }
  .legal-content h2 { margin-top: 30px; font-size: 19px; }
  .footer-inner { min-height: 0; align-items: flex-start; flex-direction: column; padding-block: 22px; }
  .message-main { min-height: calc(100vh - 176px); }
}
