/* Shared styling for the legal pages — matches the Lady of Destiny brand. */
:root {
  --c-void:#05060d; --c-midnight:#0a0d1f; --c-violet:#6b46c1; --c-gold:#d4af37;
  --c-gold-bright:#f4d47c; --c-pearl:#f5e9c8; --c-mist:rgba(245,233,200,.66); --c-line:rgba(212,175,55,.18); --c-line-soft:rgba(212,175,55,.09);
  --f-display:'Cinzel',serif; --f-serif:'Cormorant Garamond','Times New Roman',serif; --f-sans:'Inter Tight',-apple-system,sans-serif;
}
* { margin:0; padding:0; box-sizing:border-box; }
body {
  font-family:var(--f-sans); color:var(--c-pearl); line-height:1.75; min-height:100vh; font-size:15px;
  background:radial-gradient(ellipse at 20% 0%, rgba(107,70,193,.16), transparent 55%),
    radial-gradient(ellipse at 80% 100%, rgba(212,175,55,.06), transparent 55%),
    linear-gradient(180deg,var(--c-void),var(--c-midnight));
}
a { color:var(--c-gold-bright); }
.legal-top { border-bottom:1px solid var(--c-line); padding:1.3rem 2rem; display:flex; align-items:center; justify-content:space-between; position:sticky; top:0; backdrop-filter:blur(10px); background:rgba(5,6,13,.7); z-index:5; }
.legal-top a.brand { font-family:var(--f-display); color:var(--c-gold-bright); text-decoration:none; letter-spacing:.05em; font-size:1.05rem; }
.legal-top a.back { color:var(--c-mist); text-decoration:none; font-family:var(--f-sans); font-size:.82rem; letter-spacing:.05em; }
.legal-top a.back:hover { color:var(--c-gold-bright); }
.legal-wrap { max-width:820px; margin:0 auto; padding:3.5rem 1.6rem 5rem; }
.legal-eyebrow { font-family:var(--f-sans); text-transform:uppercase; letter-spacing:.26em; font-size:.68rem; color:var(--c-gold); }
.legal-wrap h1 { font-family:var(--f-display); font-weight:600; font-size:clamp(1.8rem,4.5vw,2.7rem); line-height:1.15; margin:.7rem 0 .5rem; }
.legal-updated { color:var(--c-mist); font-size:.82rem; letter-spacing:.03em; border-bottom:1px solid var(--c-line-soft); padding-bottom:1.4rem; margin-bottom:2.2rem; }
.legal-wrap h2 { font-family:var(--f-display); font-weight:600; font-size:1.25rem; color:var(--c-gold-bright); margin:2.4rem 0 .8rem; letter-spacing:.01em; }
.legal-wrap h3 { font-family:var(--f-serif); font-weight:600; font-size:1.2rem; color:var(--c-pearl); margin:1.6rem 0 .5rem; }
.legal-wrap p { margin-bottom:1rem; color:rgba(245,233,200,.9); font-weight:300; font-size:1rem; }
.legal-wrap ul, .legal-wrap ol { margin:0 0 1.1rem 1.3rem; }
.legal-wrap li { margin-bottom:.5rem; color:rgba(245,233,200,.9); font-weight:300; }
.legal-wrap strong { color:var(--c-pearl); font-weight:600; }
.legal-wrap .lead { font-family:var(--f-serif); font-size:1.25rem; color:var(--c-mist); font-weight:300; margin-bottom:1.8rem; }
.ph { color:var(--c-gold-bright); border-bottom:1px dotted var(--c-gold); font-style:italic; }
.legal-callout { border:1px solid var(--c-line); border-left:3px solid var(--c-gold); border-radius:8px; padding:1rem 1.2rem; margin:1.4rem 0; background:rgba(212,175,55,.05); font-size:.95rem; }
.legal-toc { border:1px solid var(--c-line-soft); border-radius:12px; padding:1.2rem 1.4rem; margin-bottom:2.4rem; background:rgba(17,20,43,.4); }
.legal-toc h2 { margin:0 0 .6rem; font-size:.95rem; color:var(--c-gold); font-family:var(--f-sans); letter-spacing:.1em; text-transform:uppercase; }
.legal-toc ol { margin:0 0 0 1.2rem; }
.legal-toc a { text-decoration:none; }
.legal-toc a:hover { text-decoration:underline; }
.legal-foot { border-top:1px solid var(--c-line-soft); margin-top:3rem; padding-top:1.6rem; display:flex; flex-wrap:wrap; gap:.4rem 1.4rem; font-size:.82rem; }
.legal-foot a { color:var(--c-mist); text-decoration:none; letter-spacing:.04em; }
.legal-foot a:hover { color:var(--c-gold-bright); }
.legal-copy { max-width:820px; margin:0 auto; padding:0 1.6rem 3rem; color:var(--c-mist); font-size:.75rem; letter-spacing:.1em; opacity:.6; }
table.legal { width:100%; border-collapse:collapse; margin:1rem 0 1.4rem; font-size:.92rem; }
table.legal th, table.legal td { border:1px solid var(--c-line-soft); padding:.6rem .7rem; text-align:left; vertical-align:top; }
table.legal th { color:var(--c-gold); font-family:var(--f-sans); font-weight:600; font-size:.8rem; letter-spacing:.05em; }

/* ---- Accessibility (added) ---- */
.lod-skip{position:absolute;left:-9999px;top:0;z-index:9999;background:#d4af37;color:#0a0d1f;padding:.7rem 1.1rem;border-radius:0 0 10px 0;font-weight:600;text-decoration:none}
.lod-skip:focus{left:0}
:focus-visible{outline:2px solid #d4af37;outline-offset:2px}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
