@font-face {
  font-family: "Montserrat";
  src: url("/static/fonts/ui/Montserrat-Light.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 499;
  font-display: swap;
}

@font-face {
  font-family: "Montserrat";
  src: url("/static/fonts/ui/Montserrat-Medium.woff2") format("woff2");
  font-style: normal;
  font-weight: 500 900;
  font-display: swap;
}

:root {
  --landing-ink: #11110f;
  --landing-paper: #f4f3ef;
  --landing-white: #fbfbf8;
  --landing-muted: #716f68;
  --landing-line: rgba(17, 17, 15, .16);
  color: var(--landing-ink);
  background: var(--landing-paper);
  font-family: "Montserrat", Arial, Helvetica, sans-serif;
  font-weight: 300;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--landing-paper); color: var(--landing-ink); }
a { color: inherit; font-weight: 300 !important; }
h1, h2, h3, h4, h5, h6 { font-weight: 500 !important; }
.landing-header a, .landing-footer a { text-decoration: none; }

.legal-main { width: min(100%, 1760px); margin: 0 auto; }
.legal-document { background: var(--landing-paper); }
.legal-breadcrumbs { display: flex; flex-wrap: wrap; gap: 8px; padding: 20px 28px; border-bottom: 1px solid var(--landing-line); color: var(--landing-muted); font-size: 10px; line-height: 1.4; }
.legal-breadcrumbs a:hover { color: var(--landing-ink); }
.legal-hero { padding: clamp(65px, 7vw, 120px) max(28px, 7vw) clamp(52px, 6vw, 92px); border-bottom: 1px solid var(--landing-line); background: var(--landing-white); }
.legal-hero > span { display: block; margin-bottom: 30px; font-size: 9px; font-weight: 760; letter-spacing: .1em; }
.legal-hero h1 { max-width: 1300px; margin: 0; font-size: clamp(43px, 5.4vw, 92px); font-weight: 520; line-height: .96; letter-spacing: -.058em; text-wrap: balance; }
.legal-layout { display: grid; grid-template-columns: minmax(180px, .45fr) minmax(0, 1.55fr); gap: clamp(42px, 7vw, 130px); padding: clamp(60px, 7vw, 116px) max(28px, 7vw) clamp(90px, 10vw, 170px); }
.legal-side { align-self: start; position: sticky; top: 94px; color: var(--landing-muted); font-size: 9px; font-weight: 760; line-height: 1.5; letter-spacing: .09em; }
.legal-content { width: min(100%, 860px); }
.legal-content > :first-child { margin-top: 0; }
.legal-content h2 { margin: 70px 0 22px; font-size: clamp(28px, 2.7vw, 46px); font-weight: 550; line-height: 1.06; letter-spacing: -.045em; }
.legal-content h3 { margin: 42px 0 16px; font-size: clamp(20px, 1.8vw, 29px); font-weight: 620; line-height: 1.15; letter-spacing: -.03em; }
.legal-content p, .legal-content li { color: #35342f; font-size: clamp(15px, 1.05vw, 18px); line-height: 1.7; letter-spacing: -.01em; }
.legal-content p { margin: 0 0 22px; }
.legal-content ul, .legal-content ol { margin: 22px 0 30px; padding-left: 1.35em; }
.legal-content li { margin: 8px 0; padding-left: .25em; }
.legal-content strong { color: var(--landing-ink); font-weight: 680; }
.legal-content a { text-decoration: underline; text-underline-offset: 3px; }

@media (max-width: 820px) {
  .legal-layout { grid-template-columns: 1fr; gap: 32px; }
  .legal-side { position: static; }
}

@media (max-width: 620px) {
  .legal-breadcrumbs { padding: 15px 20px; }
  .legal-hero { padding-right: 20px; padding-left: 20px; }
  .legal-hero h1 { font-size: clamp(38px, 12vw, 58px); }
  .legal-layout { padding-right: 20px; padding-left: 20px; }
  .legal-content h2 { margin-top: 54px; }
}
