:root {
  --primary: #1e3d2f;
  --primary-mid: #2d5a42;
  --accent: #d4b896;
  --text-dark: #1a2e22;
  --muted: #5f6f67;
  --bg: #f5f2ee;
  --card: #ffffff;
}

* { box-sizing: border-box; }
body { margin: 0; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; line-height: 1.7; background: var(--bg); color: var(--text-dark); }
a { color: inherit; }
.legal-header { background: linear-gradient(110deg, var(--primary) 0%, var(--primary-mid) 60%, #4a7c5e 100%); color: #fff; padding: 28px 20px; }
.legal-header-inner { max-width: 980px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; }
.brand { display: flex; align-items: center; gap: 12px; text-decoration: none; font-weight: 700; }
.brand img { width: 56px; height: 56px; object-fit: contain; border-radius: 14px; box-shadow: 0 4px 14px rgba(0,0,0,.25); }
.back-link { color: var(--primary); background: var(--accent); padding: 10px 18px; border-radius: 999px; text-decoration: none; font-weight: 700; }
.legal-page { max-width: 980px; margin: 42px auto; padding: 0 20px; }
.legal-card { background: var(--card); border-radius: 8px; box-shadow: 0 8px 28px rgba(30,61,47,.10); padding: 38px; }
.eyebrow { color: var(--primary-mid); font-weight: 700; text-transform: uppercase; font-size: .82rem; letter-spacing: .08em; margin: 0 0 8px; }
h1 { color: var(--primary); font-size: clamp(2rem, 5vw, 3rem); line-height: 1.15; margin: 0 0 12px; }
.updated { color: var(--muted); margin: 0 0 28px; }
h2 { color: var(--primary); font-size: 1.35rem; margin: 30px 0 10px; }
p { margin: 12px 0; }
ul { margin: 10px 0 20px; padding-left: 24px; }
li { margin: 8px 0; }
.contact-box { background: #f5f2ee; border-left: 4px solid var(--accent); padding: 18px 20px; border-radius: 8px; margin-top: 28px; }
.contact-box a { color: var(--primary); font-weight: 700; }
.legal-footer { text-align: center; color: var(--muted); padding: 0 20px 36px; font-size: .92rem; }

@media (max-width: 700px) {
  .legal-card { padding: 28px 22px; }
  .legal-header-inner { align-items: flex-start; }
}
