:root { /* Font sizes */ --font-size-body: 1rem; --font-size-small: 0.875rem; --font-size-lead: 1.125rem; --font-size-h1: 1.802rem; --font-size-h2: 1.602rem; --font-size-h3: 1.424rem; --font-size-h4: 1.266rem; --font-size-h5: 1.125rem; --line-height-body: 1.5; --line-height-heading: 1.2; --letter-spacing-tight: -0.02em; --letter-spacing-normal: 0; --letter-spacing-wide: 0.025em; --letter-spacing-wider: 0.05em; --letter-spacing-widest: 0.12em; --font-weight-regular: 400; --font-weight-medium: 500; --font-weight-semibold: 600; --font-weight-bold: 700; --font-body-color: #000000; --font-heading-color: #302e2e; } @media (min-width: 768px) { :root { --font-size-h1: 2.566rem; --font-size-h2: 2.281rem; --font-size-h3: 2.027rem; --font-size-h4: 1.802rem; --font-size-h5: 1.602rem; } } @media (min-width: 1024px) { :root { --font-size-h1: 3.247rem; --font-size-h2: 2.566rem; --font-size-h3: 2.027rem; --font-size-h4: 1.802rem; --font-size-h5: 1.602rem; } } a { color: inherit; text-decoration: none; } p, li { font-size: var(--font-size-body); line-height: var(--line-height-body); } small, .text-small { font-size: var(--font-size-small); line-height: 1.4; } .lead, .text-lead { font-size: var(--font-size-lead); line-height: 1.6; } h1, h2, h3, h4, h5, h6 { line-height: var(--line-height-heading); color: var(--font-heading-color); font-family: var(--font-heading); font-weight: var(--font-weight-bold); letter-spacing: var(--letter-spacing-tight); } h1 { font-size: var(--font-size-h1); } h2 { font-size: var(--font-size-h2); } h3 { font-size: var(--font-size-h3); } h4 { font-size: var(--font-size-h4); } h5 { font-size: var(--font-size-h5); }