.legal-hero { padding: clamp(5rem, 10vw, 8rem) 0 3rem; background: #f0e8d8; text-align: center; }
.legal-hero .eyebrow { margin-bottom: .8rem; color: #6a6560; font-size: .72rem; letter-spacing: .15em; text-transform: uppercase; }
.legal-hero h1 { margin: 0; color: #1c1a18; font-family: 'Cormorant Garamond', Georgia, serif; font-size: clamp(2.4rem, 7vw, 4.4rem); font-weight: 500; line-height: 1.05; }
.legal-hero p { max-width: 720px; margin: 1rem auto 0; color: #5f5a55; font-size: .92rem; line-height: 1.7; }
.legal-content { padding: 4rem 0 6rem; }
.legal-card { max-width: 880px; margin: auto; padding: clamp(1.4rem, 4vw, 3rem); background: #fff; border: 1px solid #e4ded7; border-radius: 14px; }
.legal-card h2 { margin: 2.2rem 0 .65rem; color: #253830; font-family: 'Cormorant Garamond', Georgia, serif; font-size: clamp(1.55rem, 4vw, 2rem); font-weight: 500; }
.legal-card h2:first-child { margin-top: 0; }
.legal-card h3 { margin: 1.3rem 0 .45rem; color: #1c1a18; font-size: .95rem; }
.legal-card p, .legal-card li { color: #5f5a55; font-size: .88rem; line-height: 1.8; }
.legal-card p + p { margin-top: .8rem; }
.legal-card ul { margin: .65rem 0 0 1.1rem; list-style: disc; }
.legal-card li + li { margin-top: .35rem; }
.legal-card a { color: #253830; text-decoration: underline; text-underline-offset: 3px; }
.legal-note { margin-top: 1.2rem; padding: 1rem 1.1rem; background: #f8f6f3; border-left: 3px solid #b89a62; border-radius: 4px; }
.legal-table-wrap { margin-top: 1rem; overflow-x: auto; }
.legal-table { width: 100%; border-collapse: collapse; min-width: 700px; }
.legal-table th, .legal-table td { padding: .8rem; border: 1px solid #e4ded7; vertical-align: top; text-align: left; color: #5f5a55; font-size: .78rem; line-height: 1.55; }
.legal-table th { background: #f8f6f3; color: #253830; font-weight: 600; }
.legal-updated { margin-top: 2.2rem; padding-top: 1rem; border-top: 1px solid #e4ded7; color: #77716b; font-size: .76rem; }
@media (max-width: 640px) { .legal-content { padding: 2.5rem 0 4rem; } }
