/* Shared styling for the 5 legal pages on fundyourcase.ai (privacy, terms, sms, cookies, accessibility) */

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
  --ink:#0C0C0C;
  --surface:#111111;
  --card:#161616;
  --border:rgba(255,255,255,0.08);
  --border-hover:rgba(255,255,255,0.14);
  --white:#F2F0ED;
  --cream:#E8E4DD;
  --muted:#807D77;
  --gold:#C9A84C;
  --gold-soft:rgba(201,168,76,0.12);
  --gold-border:rgba(201,168,76,0.25);
  --link:#D4B770;
}
html{scroll-behavior:smooth}
body{
  font-family:'DM Sans',sans-serif;
  background:var(--ink);
  color:var(--cream);
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
}

/* ── TOP NAV ── */
nav.top{
  padding:16px 32px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  border-bottom:1px solid var(--border);
  position:sticky;top:0;
  background:rgba(12,12,12,0.92);
  backdrop-filter:blur(10px);
  z-index:10;
}
nav.top .logo{font-family:'Playfair Display',serif;font-size:1.2rem;color:var(--white);text-decoration:none;font-weight:600;letter-spacing:-0.01em}
nav.top .logo span{color:var(--gold)}
nav.top .nav-right{display:flex;gap:18px;align-items:center}
nav.top a.back{font-size:0.88rem;color:var(--muted);text-decoration:none}
nav.top a.back:hover{color:var(--gold)}
nav.top .lang-pill{font-size:0.78rem;color:var(--gold);border:1px solid var(--gold-border);padding:4px 12px;border-radius:100px}

/* ── MAIN CONTENT ── */
main.legal{
  max-width:760px;
  margin:0 auto;
  padding:60px 24px 80px;
}
.legal-header{
  text-align:center;
  margin-bottom:40px;
  padding-bottom:32px;
  border-bottom:1px solid var(--border);
}
.legal-header .kicker{
  font-size:0.78rem;
  letter-spacing:0.18em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:14px;
}
.legal-header h1{
  font-family:'Playfair Display',serif;
  font-size:clamp(2rem,4.5vw,3rem);
  color:var(--white);
  font-weight:500;
  line-height:1.1;
  margin-bottom:14px;
  letter-spacing:-0.01em;
}
.legal-header .meta{font-size:0.88rem;color:var(--muted)}

/* ── TABLE OF CONTENTS ── */
nav.toc{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:12px;
  padding:24px 28px;
  margin-bottom:48px;
}
nav.toc h2{
  font-family:'Playfair Display',serif;
  font-size:1.05rem;
  color:var(--white);
  font-weight:600;
  margin-bottom:14px;
}
nav.toc ol{list-style:decimal;padding-left:22px;color:var(--muted)}
nav.toc li{margin:6px 0;font-size:0.92rem}
nav.toc a{color:var(--cream);text-decoration:none}
nav.toc a:hover{color:var(--gold)}
@media(max-width:600px){nav.toc{padding:18px 20px}}

/* ── SECTIONS ── */
section{margin-bottom:36px;scroll-margin-top:80px}
section h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(1.35rem,2.2vw,1.7rem);
  color:var(--white);
  font-weight:600;
  margin-bottom:16px;
  line-height:1.25;
}
section h3{
  font-family:'DM Sans',sans-serif;
  font-size:1.05rem;
  color:var(--white);
  font-weight:600;
  margin:22px 0 10px;
}
section p{margin-bottom:14px;color:var(--cream);font-size:0.95rem}
section ul,section ol{margin:14px 0 14px 24px;color:var(--cream)}
section ul ul,section ol ol{margin:6px 0 6px 18px}
section li{margin:6px 0;font-size:0.93rem}
section li > strong:first-child{color:var(--white)}
section strong{color:var(--white);font-weight:600}
section em{color:var(--cream);font-style:italic}
section a{color:var(--link);text-decoration:underline;text-decoration-color:rgba(212,183,112,0.4);text-underline-offset:2px}
section a:hover{text-decoration-color:var(--gold);color:var(--gold)}

/* ── CALLOUT for legal-language emphasis (e.g. ALL CAPS arbitration text) ── */
.callout{
  background:var(--card);
  border-left:3px solid var(--gold);
  border-radius:0 8px 8px 0;
  padding:16px 20px;
  margin:18px 0;
  font-size:0.9rem;
}
.callout strong{color:var(--white)}

.allcaps{
  background:rgba(201,168,76,0.06);
  border:1px solid var(--gold-border);
  border-radius:8px;
  padding:14px 18px;
  margin:18px 0;
  font-size:0.88rem;
  letter-spacing:0.01em;
}

/* ── SCHEDULE DIVIDER ── */
.schedule-divider{
  margin:60px 0 30px;
  padding-top:30px;
  border-top:1px solid var(--border);
  text-align:center;
}
.schedule-divider .kicker{
  font-size:0.74rem;
  letter-spacing:0.22em;
  text-transform:uppercase;
  color:var(--gold);
}
.schedule-divider h2{
  font-family:'Playfair Display',serif;
  font-size:1.6rem;
  color:var(--white);
  margin-top:6px;
}

/* ── LANGUAGE NOTE ── */
.lang-note{
  margin-top:60px;
  padding:18px 22px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:8px;
  font-size:0.84rem;
  color:var(--muted);
  text-align:center;
  font-style:italic;
}

/* ── FOOTER ── */
footer.site{
  border-top:1px solid var(--border);
  padding:36px 24px;
  text-align:center;
}
footer.site .footer-logo{
  font-family:'Playfair Display',serif;
  font-size:1.05rem;
  color:var(--white);
  font-weight:600;
  margin-bottom:12px;
}
footer.site .footer-logo span{color:var(--gold)}
footer.site .links{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:14px 22px;
  font-size:0.84rem;
  margin-bottom:14px;
}
footer.site .links a{color:var(--muted);text-decoration:none}
footer.site .links a:hover{color:var(--gold)}
footer.site .legal-fineprint{
  font-size:0.74rem;
  color:rgba(255,255,255,0.25);
  max-width:600px;
  margin:0 auto;
  line-height:1.6;
}

@media(max-width:600px){
  main.legal{padding:40px 20px 60px}
  nav.top{padding:14px 20px}
  nav.top .nav-right{gap:12px}
  nav.top .lang-pill{display:none}
}
