:root { --legal-max: 920px; }
.legal-header { width: min(1240px, calc(100% - 48px)); height: 86px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.legal-back { color: var(--text-muted); font-size: .78rem; font-weight: 700; letter-spacing: .04em; text-decoration: none; }.legal-back:hover { color: var(--brass); }
.legal-main { width: min(var(--legal-max), calc(100% - 48px)); margin: 0 auto; padding: 74px 0 90px; }
.legal-kicker { margin-bottom: 20px; color: var(--brass); font-size: .72rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.legal-main h1 { margin-bottom: 28px; font-size: clamp(3rem, 7vw, 5.6rem); }.legal-main h1 em { color: var(--sage); }
.legal-lead { max-width: 700px; color: var(--text-muted); font-size: 1.04rem; line-height: 1.75; }
.legal-warning { display: grid; grid-template-columns: 32px 1fr; gap: 16px; margin: 42px 0 58px; padding: 22px 24px; border: 1px solid rgba(189,147,64,.42); background: rgba(189,147,64,.1); color: var(--text-muted); line-height: 1.6; }
.legal-warning strong { color: var(--brass); font-size: 1.2rem; }.legal-warning p { margin: 0; }
.legal-section { padding: 36px 0; border-top: 1px solid var(--line); }.legal-section h2 { margin-bottom: 16px; font-size: clamp(2rem, 4vw, 3.25rem); }.legal-section h3 { margin: 28px 0 9px; font-size: 1rem; }.legal-section p, .legal-section li { color: var(--text-muted); line-height: 1.7; }.legal-section ul { padding-left: 20px; }.legal-section a { color: var(--ink); }.legal-section a:hover { color: var(--brass); }
.legal-data { display: grid; grid-template-columns: minmax(150px, .34fr) 1fr; gap: 10px 24px; margin: 22px 0 6px; padding: 22px; background: var(--surface); border: 1px solid var(--line); }.legal-data dt { color: var(--text-faint); font-size: .76rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }.legal-data dd { margin: 0; color: var(--ink); line-height: 1.55; }.legal-placeholder { color: var(--brass) !important; font-weight: 700; }
.legal-footer { width: min(var(--legal-max), calc(100% - 48px)); margin: 0 auto; padding: 0 0 32px; display: flex; justify-content: space-between; gap: 18px; color: var(--text-faint); font-size: .72rem; }.legal-footer a { color: inherit; text-decoration: none; }.legal-footer a:hover { color: var(--brass); }
@media (max-width: 620px) { .legal-header, .legal-main, .legal-footer { width: min(100% - 32px, var(--legal-max)); }.legal-header { height: 70px; }.legal-main { padding: 45px 0 70px; }.legal-data { grid-template-columns: 1fr; gap: 3px; }.legal-footer { flex-direction: column; } }
