/* ============================================================
   Pitch2Retail Legal/Compliance Pages — shared styles
   ============================================================ */

body { background:var(--bg-deep); color:var(--cream); font-family:'Outfit',sans-serif; line-height:1.7; margin:0; }

.legal-nav { padding:14px 24px; border-bottom:1px solid var(--border); display:flex; align-items:center; justify-content:space-between; background:var(--bg-deep); position:sticky; top:0; z-index:10; }
.legal-nav .logo { font-family:'DM Serif Display',serif; color:var(--amber); font-size:1.3rem; text-decoration:none; }
.legal-nav .links { display:flex; gap:18px; }
.legal-nav .links a { color:var(--cream-dim); text-decoration:none; font-size:0.85rem; }
.legal-nav .links a:hover, .legal-nav .links a.active { color:var(--cream); }
.legal-nav .cta { background:var(--amber); color:#000; padding:7px 14px; border-radius:6px; font-size:0.82rem; font-weight:600; text-decoration:none; }

.legal-hero { background:linear-gradient(180deg, var(--bg-card), var(--bg-deep)); border-bottom:1px solid var(--border); padding:64px 24px 48px; }
.legal-hero-inner { max-width:820px; margin:0 auto; }
.legal-hero .eyebrow { display:inline-block; background:var(--amber-soft); color:var(--amber); padding:5px 12px; border-radius:99px; font-size:0.74rem; font-weight:700; letter-spacing:0.06em; text-transform:uppercase; margin-bottom:16px; }
.legal-hero h1 { font-family:'DM Serif Display',serif; font-size:2.6rem; line-height:1.15; margin:0 0 14px; color:var(--cream); letter-spacing:-0.02em; }
.legal-hero .lead { color:var(--cream-dim); font-size:1.05rem; max-width:680px; margin:0 0 18px; }
.legal-hero .updated { color:var(--cream-dim); font-size:0.82rem; }
.legal-hero .updated strong { color:var(--cream); }

.legal { max-width:820px; margin:0 auto; padding:48px 24px 96px; }
.legal h2 { font-family:'DM Serif Display',serif; font-size:1.5rem; color:var(--cream); margin:42px 0 14px; letter-spacing:-0.01em; }
.legal h3 { font-size:1.05rem; color:var(--cream); margin:24px 0 8px; font-weight:600; }
.legal p, .legal li { color:var(--cream-dim); font-size:0.95rem; }
.legal ul, .legal ol { padding-left:24px; }
.legal li { margin-bottom:6px; }
.legal a { color:var(--amber); }
.legal strong { color:var(--cream); }

.legal table { width:100%; border-collapse:collapse; margin:18px 0; font-size:0.9rem; background:var(--bg-card); border-radius:10px; overflow:hidden; border:1px solid var(--border); }
.legal th, .legal td { padding:11px 14px; text-align:left; border-bottom:1px solid var(--border); color:var(--cream); }
.legal th { background:var(--bg-input); color:var(--cream-dim); font-size:0.75rem; text-transform:uppercase; letter-spacing:0.05em; font-weight:600; }
.legal tr:last-child td { border-bottom:0; }

.callout { background:var(--bg-card); border:1px solid var(--border); border-radius:12px; padding:20px 24px; margin:24px 0; }
.callout.amber { border-color:var(--amber); background:var(--amber-soft); }
.callout.green { border-color:#5DC88C; background:rgba(80,200,140,0.08); }
.callout.red { border-color:#dc5050; background:rgba(220,80,80,0.08); }
.callout-eyebrow { font-size:0.74rem; font-weight:700; letter-spacing:0.06em; text-transform:uppercase; margin-bottom:6px; }
.callout.amber .callout-eyebrow { color:var(--amber); }
.callout.green .callout-eyebrow { color:#5DC88C; }
.callout.red .callout-eyebrow { color:#dc5050; }
.callout p { margin:0; color:var(--cream); font-size:0.94rem; line-height:1.65; }
.callout p + p { margin-top:8px; }

.toc { background:var(--bg-card); border:1px solid var(--border); border-radius:12px; padding:20px 24px; margin-bottom:32px; }
.toc-eyebrow { font-size:0.74rem; color:var(--cream-dim); text-transform:uppercase; letter-spacing:0.06em; font-weight:600; margin-bottom:10px; }
.toc ul { list-style:none; padding:0; margin:0; }
.toc li { padding:5px 0; }
.toc a { color:var(--cream); text-decoration:none; font-size:0.9rem; }
.toc a:hover { color:var(--amber); }

.compliance-final-cta { background:linear-gradient(135deg, rgba(80,200,140,0.08), rgba(232,168,56,0.05)); border:1px solid var(--border); border-radius:14px; padding:40px 36px; margin:48px 0 0; text-align:center; }
.compliance-final-cta h3 { color:var(--cream); font-family:'DM Serif Display',serif; font-size:1.5rem; margin:0 0 10px; }
.compliance-final-cta p { color:var(--cream-dim); margin:0 0 20px; max-width:520px; margin-left:auto; margin-right:auto; }
.compliance-final-cta .cta-btn { display:inline-block; background:var(--amber); color:#000; padding:12px 24px; border-radius:8px; font-weight:600; text-decoration:none; }

.related { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:14px; margin:40px 0 0; }
.related-card { background:var(--bg-card); border:1px solid var(--border); border-radius:12px; padding:20px; text-decoration:none; transition:border-color 0.18s, transform 0.18s; }
.related-card:hover { border-color:var(--amber); transform:translateY(-3px); }
.related-card h4 { color:var(--cream); margin:0 0 6px; font-size:0.95rem; font-weight:600; }
.related-card p { color:var(--cream-dim); font-size:0.82rem; margin:0; }

.footer-mini { background:var(--bg-card); border-top:1px solid var(--border); padding:32px 24px; text-align:center; color:var(--cream-dim); font-size:0.85rem; }
.footer-mini a { color:var(--cream-dim); margin:0 10px; }

@media (max-width:760px) {
  .legal-hero h1 { font-size:1.9rem; }
  .legal-hero { padding:48px 18px 36px; }
  .legal { padding:36px 18px 64px; }
}
