.legal-page { padding: 4rem 2rem; min-height: 80vh; } .legal-header { margin-bottom: 4rem; text-align: center; } .legal-title { font-family: var(--font-serif); font-size: clamp(2.5rem, 8vw, 4rem); font-weight: 400; margin-bottom: 1rem; } .legal-subtitle { font-family: var(--font-caption); font-size: 1rem; text-transform: uppercase; letter-spacing: 0.1em; /* Colour tokens rather than opacity: they are tuned for 4.5:1 per theme, an opacity on top of them is not. */ color: var(--text-muted); } .legal-content { max-width: 600px; margin: 0 auto; } .legal-section { margin-bottom: 2rem; } .legal-section__title { font-size: 1.2rem; margin-bottom: 0.5rem; color: var(--text-secondary); } .legal-section__text { line-height: 1.6; } .legal-section__text--pre { white-space: pre-wrap; } /* tokens.css strips link underlines site-wide; here the links sit inside running text and would otherwise be indistinguishable from it. */ .legal-section__text a { text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--text-muted); transition: text-decoration-color var(--transition-fast); } .legal-section__text a:hover { text-decoration-color: currentColor; }