html { scroll-padding-top: 110px; }
a:focus-visible, button:focus-visible { outline: 3px solid #b58116; outline-offset: 5px; }
.legal-footer { background: #232323; color: #fff; text-align: center; padding: 30px 20px; font-family: 'Jost', sans-serif; }
.legal-footer nav { display: flex; justify-content: center; gap: 28px; flex-wrap: wrap; margin-bottom: 14px; }
.legal-footer a { color: #ffe161; text-decoration: underline; text-underline-offset: 4px; }
.legal-footer a:hover { color: #fff; }
.legal-footer p { margin: 0; font-size: 15px; }
.legal-page { margin: 0; background: #fafaf7; color: #232323; font-family: 'Jost', sans-serif; }
.legal-header { background: #232323; padding: 25px 24px; }
.legal-header > div { max-width: 1100px; margin: auto; display: flex; justify-content: space-between; align-items: center; gap: 20px; }
.legal-header a { color: #ffe161; }
.legal-header .legal-brand { font-size: 32px; font-weight: 700; color: #fff; text-decoration: none; }
.legal-content { max-width: 850px; margin: auto; padding: 65px 24px 80px; font-size: 18px; line-height: 1.75; }
.legal-eyebrow { font-size: 13px; letter-spacing: 2px; font-weight: 600; color: #6d601e; }
.legal-content h1 { font-size: clamp(34px, 6vw, 52px); margin: 14px 0; line-height: 1.15; }
.legal-date { color: #666; padding-bottom: 24px; border-bottom: 1px solid #ddd9cb; }
.legal-content h2 { font-size: 25px; line-height: 1.35; margin: 34px 0 12px; }
.legal-content a { color: #715600; text-decoration: underline; }
@media (max-width: 500px) { .legal-header .legal-brand { font-size: 24px; } .legal-header > div { align-items: flex-start; flex-direction: column; gap: 8px; } .legal-content { padding-top: 40px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto !important; } *, *::before, *::after { animation: none !important; transition: none !important; } }
