.legal-page { display: flex; flex-direction: column; min-height: 100vh; background: var(--canvas); }
.legal-nav { display: flex; align-items: center; justify-content: space-between; gap: 24px; width: min(1120px, calc(100% - 48px)); margin: 0 auto; padding: 28px 0; }
.legal-nav img { display: block; width: 108px; height: auto; }
.legal-content { flex: 1; width: min(760px, calc(100% - 48px)); margin: 0 auto; padding: 64px 0 96px; }
.legal-content h1 { color: var(--secondary); font-family: "Fraunces", Georgia, serif; font-size: clamp(36px, 7vw, 56px); line-height: 1.1; }
.legal-placeholder { margin-top: 32px; padding: 28px; border: 1px solid var(--stroke); border-radius: 24px; background: #fff; box-shadow: 0 12px 32px var(--shadow); }
.legal-placeholder h2 { font-size: 20px; color: var(--secondary); }
.legal-placeholder p { margin-top: 14px; color: var(--muted); font-size: 16px; line-height: 1.65; }
.legal-placeholder a { color: var(--secondary); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.legal-page a:focus-visible { outline: 3px solid var(--accent); outline-offset: 5px; }

/* Legal pages: simple, readable text without placeholder cards. */
.legal-content > p, .legal-content section p, .legal-content li { color: var(--muted); font-size: 16px; line-height: 1.7; }
.legal-content > p { margin-top: 20px; }
.legal-content .legal-updated { margin-top: 16px; font-size: 14px; }
.legal-content section:not(.legal-placeholder) { margin-top: 32px; }
.legal-content section:not(.legal-placeholder) h2 { margin-bottom: 12px; color: var(--secondary); font-family: "Fraunces", Georgia, serif; font-size: 24px; line-height: 1.3; }
.legal-content section:not(.legal-placeholder) p + p { margin-top: 14px; }
.legal-content ul { padding-left: 22px; }
.legal-content li + li { margin-top: 12px; }
.legal-content ul + p { margin-top: 16px; }
.legal-content a { color: var(--secondary); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
