.legal-main { padding: 132px 0 80px; background: linear-gradient(180deg, #faf8f5 0%, #fff 34%); }
.legal-hero { max-width: 860px; margin-bottom: 42px; }
.legal-kicker { display: inline-block; margin-bottom: 14px; color: var(--color-copper-dark, #8c512a); font-size: .78rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.legal-hero h1 { margin: 0 0 16px; color: var(--color-charcoal, #2b2521); font-family: var(--font-display, Georgia, serif); font-size: clamp(2.5rem, 6vw, 4.7rem); line-height: 1.02; }
.legal-hero > p { max-width: 760px; color: var(--color-text-muted, #6b625c); font-size: 1.05rem; line-height: 1.75; }
.legal-updated { display: inline-flex; margin-top: 12px; padding: 7px 11px; border: 1px solid rgba(107,83,68,.18); border-radius: 999px; background: #fff; color: var(--color-text-muted, #6b625c); font-size: .82rem; }
.legal-layout { display: grid; grid-template-columns: minmax(0,1fr) 250px; gap: clamp(36px,7vw,90px); align-items: start; }
.legal-content { min-width: 0; }
.legal-section { padding: 30px 0; border-top: 1px solid rgba(107,83,68,.18); }
.legal-section:first-child { border-top: 0; padding-top: 0; }
.legal-section h2 { margin: 0 0 14px; color: var(--color-charcoal, #2b2521); font-family: var(--font-display, Georgia, serif); font-size: clamp(1.45rem,3vw,2rem); }
.legal-section h3 { margin: 22px 0 8px; color: var(--color-charcoal, #2b2521); font-size: 1.05rem; }
.legal-section p, .legal-section li { color: #514943; line-height: 1.78; }
.legal-section p + p { margin-top: 12px; }
.legal-section ul, .legal-section ol { margin: 12px 0 0 22px; }
.legal-section li + li { margin-top: 7px; }
.legal-section a { color: var(--color-copper-dark, #8c512a); text-decoration: underline; text-underline-offset: 3px; }
.legal-card { padding: 22px; border: 1px solid rgba(107,83,68,.18); border-radius: 16px; background: #faf8f5; }
.legal-card p { margin: 0; }
.legal-nav { position: sticky; top: 108px; padding: 20px; border: 1px solid rgba(107,83,68,.18); border-radius: 16px; background: #fff; box-shadow: 0 14px 34px rgba(47,35,27,.07); }
.legal-nav strong { display: block; margin-bottom: 10px; color: var(--color-charcoal, #2b2521); }
.legal-nav a { display: block; padding: 7px 0; color: var(--color-text-muted, #6b625c); font-size: .9rem; }
.legal-nav a:hover { color: var(--color-copper-dark, #8c512a); }
@media (max-width: 850px) { .legal-main { padding-top: 104px; } .legal-layout { grid-template-columns: 1fr; } .legal-nav { position: static; order: -1; } }
@media (max-width: 560px) { .legal-main { padding-bottom: 56px; } .legal-hero { margin-bottom: 30px; } .legal-section { padding: 25px 0; } }
