.legal-page { padding: clamp(2rem, 6vw, 5rem) var(--spacing-lg) clamp(3rem, 7vw, 6rem); color: var(--color-on-surface); background: var(--color-surface); }
.legal-page-inner { max-width: 960px; margin: 0 auto; }
.legal-eyebrow { color: var(--color-accent); font-family: var(--font-family-body); font-size: .77rem; text-transform: uppercase; letter-spacing: .13em; font-weight: 600; }
.legal-page h1 { color: var(--color-primary); font-family: var(--font-family-heading); font-size: clamp(2.65rem, 7vw, 4.9rem); line-height: 1.05; max-width: 18ch; margin: .85rem 0 1rem; font-weight: var(--font-weight-heading); }
.legal-intro { color: var(--color-on-surface-secondary); max-width: 68ch; font-size: clamp(1.05rem, 1.6vw, 1.2rem); line-height: 1.75; }
.legal-updated { font-size: .85rem; margin: 1.25rem 0 2rem; color: var(--color-on-surface-secondary); }
.legal-back { display: inline-flex; text-decoration: none; padding: .75rem 1.3rem; border: 1px solid var(--color-primary); color: var(--color-primary); border-radius: var(--border-radius-full); font-weight: 600; margin-bottom: clamp(1rem, 4vw, 2rem); }
.legal-back:hover, .legal-back:focus-visible { background: var(--color-primary); color: var(--color-on-primary); }
.legal-sections { display: grid; grid-template-columns: 1fr; gap: 1.25rem; }
.legal-section { background: var(--color-surface-elevated); border: 1px solid var(--color-border); border-radius: var(--border-radius-lg); padding: clamp(1.25rem, 3vw, 2.35rem); min-width: 0; }
.legal-section h2 { color: var(--color-primary); font-family: var(--font-family-heading); font-weight: var(--font-weight-heading); line-height: 1.18; font-size: clamp(1.8rem, 3vw, 2.35rem); margin: 0 0 1rem; }
.legal-section h3 { color: var(--color-primary); font-family: var(--font-family-body); font-size: 1.1rem; margin: 1.5rem 0 .6rem; }
.legal-section p, .legal-section li { font-size: .99rem; line-height: 1.8; color: var(--color-on-surface-secondary); overflow-wrap: anywhere; }
.legal-section p + p { margin-top: .95rem; }
.legal-section ul { list-style: disc; padding-left: 1.5rem; margin: .6rem 0 1.1rem; }
.legal-section li { padding-left: .25rem; margin: .25rem 0; }
.legal-contact { padding: 1rem 1.2rem; background: var(--color-surface); border-left: 3px solid var(--color-accent); border-radius: var(--border-radius-sm); }
.legal-contact p { margin: .35rem 0; }
.legal-contact [data-address] { overflow-wrap: anywhere; }
.legal-reference { color: var(--color-primary); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 480px) { .legal-page { padding-inline: 1rem; } .legal-section { padding: 1.2rem; } }
.legal-page { font-family: var(--font-family-body); }
