.legal-hero { background: var(--sand); padding: clamp(40px, 4vw, 80px) var(--gutter) var(--section-y); }
.legal-hero .eyebrow { font-size: var(--fs-eyebrow); line-height:1.4; letter-spacing:.02em; }
.legal-hero h1 { margin-top: clamp(10px, .83vw, 16px); font-size: var(--fs-h2); line-height: 1; letter-spacing: -0.01em; }
.legal-hero .operator { margin-top: clamp(16px, 1.9vw, 36px); font-size: var(--fs-lead); line-height: 1.4; }
.legal-toc { display: flex; flex-wrap: wrap; gap: clamp(10px, 1.25vw, 24px); margin-top: clamp(24px, 2.6vw, 50px); }
.legal-toc a {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: clamp(44px, 3.27vw, 62.7px); min-width: clamp(140px, 11.1vw, 213px); padding: 0 1.2em;
  background: var(--tan); color: var(--brown); font-size: clamp(14px, 1.15vw, 22px); line-height: 1.2; text-decoration: none;
  border: 1px solid var(--tan); transition: background .2s, color .2s;
}
.legal-toc a:hover { background: transparent; }

.legal { background: var(--sand); padding: 0 var(--gutter) clamp(64px, 8vw, 160px); }
.legal-block { max-width: none; width:100%; padding-top: clamp(40px, 3.1vw, 60px); font-size: clamp(16px, 1.15vw, 22px); line-height: 1.45; }
.legal-block + .legal-block { padding-top: clamp(56px, 5.2vw, 100px); }
.legal-block h2 { font-size: var(--fs-h2); line-height: 1; letter-spacing: -0.01em; text-transform: uppercase; scroll-margin-top: calc(var(--header-h) + 16px); }
.legal-block h2 + * { margin-top: clamp(20px, 1.8vw, 35px); }
.legal-block .clause + .clause { margin-top: clamp(24px, 2vw, 40px); }
.legal-block h3 { font-size: var(--fs-h3); font-weight: 400; line-height: 1.3; letter-spacing: -0.01em; }
.legal-block p, .legal-block ul, .legal-block address { margin-top: 0.35em; }
.legal-block address { font-style: normal; }
.legal-block ul { padding-left: 1.2em; list-style: disc; }
.legal-block li + li { margin-top: 0.3em; }
.legal-block strong { font-weight: 500; }
.legal-block a { text-decoration: underline; text-underline-offset: 3px; }
.legal-block .updated { margin-top: 1.4em; }
.legal-block [id] { scroll-margin-top: calc(var(--header-h) + 16px); }


@media(min-width:901px) { .legal-hero { padding-top:calc(clamp(40px,4vw,80px) + 56px); } }
