/* Privacy and Terms pages, plus the small legal link row used in page footers. */
.legal { background: var(--ivory, #f9f5ed); padding: 9.5rem 1.5rem 5rem; }
.legal-inner { max-width: 760px; margin: 0 auto; }
.legal-label { display: block; font-family: 'EB Garamond', serif; font-size: 13px; letter-spacing: .26em; text-transform: uppercase; color: var(--gold, #b5860d); margin-bottom: 1rem; }
.legal h1 { font-family: 'Playfair Display', serif; font-style: italic; font-weight: 400; font-size: clamp(34px, 5vw, 52px); line-height: 1.2; color: var(--green, #1B3C28); margin-bottom: .6rem; }
.legal .legal-updated { font-family: 'EB Garamond', serif; font-style: italic; color: var(--muted, #5a5240); margin-bottom: 2.4rem; }
.legal .legal-intro { font-family: 'EB Garamond', serif; font-size: 20px; line-height: 1.8; color: var(--ink, #1c1a14); margin-bottom: 2.4rem; padding-left: 1.2rem; border-left: 2px solid var(--gold-light, #c9a84c); }
.legal h2 { font-family: 'Playfair Display', serif; font-weight: 400; font-size: 26px; line-height: 1.3; color: var(--green, #1B3C28); margin: 2.6rem 0 .8rem; }
.legal p, .legal li { font-family: 'EB Garamond', serif; font-size: 19px; line-height: 1.8; color: var(--ink, #1c1a14); }
.legal p { margin-bottom: 1rem; }
.legal ul { margin: 0 0 1rem 1.3rem; }
.legal li { margin-bottom: .4rem; }
.legal a { color: var(--green, #1B3C28); text-decoration: underline; text-decoration-color: var(--gold-light, #c9a84c); text-underline-offset: 3px; }
.legal a:hover { color: var(--gold, #b5860d); }
.legal table { width: 100%; border-collapse: collapse; margin: .4rem 0 1.4rem; font-family: 'EB Garamond', serif; font-size: 17px; }
.legal th, .legal td { text-align: left; vertical-align: top; padding: .6rem .7rem; border-bottom: 1px solid rgba(181,134,13,.3); line-height: 1.55; }
.legal th { color: var(--green, #1B3C28); font-weight: 600; }
.legal-foot { background: var(--green, #1B3C28); color: #f0ebe0; text-align: center; padding: 2.4rem 1.5rem; }
.legal-foot p { font-family: 'EB Garamond', serif; font-size: 16px; margin: 0; }
.legal-foot a, .legal-links a { color: inherit; text-decoration: underline; text-decoration-color: rgba(201,168,76,.7); text-underline-offset: 3px; }
.legal-links { font-family: 'EB Garamond', serif; font-size: 15px; letter-spacing: .04em; margin-top: 1.2rem; opacity: .85; }
.legal-links span { margin: 0 .6em; opacity: .6; }
.legal-agree { font-family: 'EB Garamond', serif; font-size: 15px; font-style: italic; color: var(--muted, #5a5240); text-align: center; margin: 1.2rem auto 0; max-width: 46ch; }
.legal-agree a { color: inherit; text-decoration: underline; text-decoration-color: var(--gold-light, #c9a84c); text-underline-offset: 3px; }
@media (max-width: 640px) { .legal { padding-top: 7.5rem; } .legal p, .legal li { font-size: 18px; } .legal table { font-size: 15px; } }
