/* ============================================================
   LEGAL — styles specific to privacy-policy.html, terms-and-
   conditions.html, terms-of-use.html.
   Requires base.css to be loaded first.
   ============================================================ */

body{font-size:1.02rem;}
.wrap.legal-wrap{max-width:880px;}

.legal-hero{padding:clamp(9rem,18vh,12rem) 0 clamp(2.5rem,5vh,3.5rem);}
.legal-hero h1{font-family:var(--serif);font-weight:500;color:var(--plum-text);
  font-size:clamp(2.4rem,6vw,4rem);line-height:1.05;margin:.8rem 0 1rem;}
.legal-hero .meta{font-size:.78rem;letter-spacing:.06em;color:var(--gray);margin:0;}

.toc{background:rgba(var(--on-deep-rgb),.04);border:1px solid var(--gold-line);border-radius:12px;
  padding:1.6rem 1.8rem;margin-bottom:clamp(3rem,6vh,4.5rem);}
.toc h2{font-family:var(--sans);font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin:0 0 1rem;font-weight:600;}
.toc ol{margin:0;padding:0;list-style:none;columns:2;column-gap:2rem;}
.toc li{margin-bottom:.55rem;break-inside:avoid;}
.toc a{font-size:.86rem;color:var(--ink);opacity:.82;transition:opacity .3s,color .3s;}
.toc a:hover{opacity:1;color:var(--plum-text);}

.legal-body{padding-bottom:clamp(6rem,12vh,9rem);background:var(--cream);color:var(--ink);transition:background .6s ease;}
section.clause{padding-block:clamp(1.8rem,3vw,2.4rem);border-top:1px solid var(--gold-line);}
section.clause:first-of-type{border-top:none;}
.clause .num{font-family:var(--serif);font-size:.9rem;color:var(--gold);letter-spacing:.05em;display:block;margin-bottom:.4rem;}
.clause h2{font-family:var(--serif);font-weight:500;font-size:clamp(1.4rem,2.4vw,1.85rem);line-height:1.15;margin:0 0 .8rem;color:var(--plum-text);}
.clause p{margin:0 0 .9rem;color:var(--ink);max-width:68ch;}
.clause p:last-child{margin-bottom:0;}

.contact-card{margin-top:clamp(2rem,4vh,3rem);background:var(--surface-deep-grad);border-radius:14px;
  padding:clamp(1.8rem,3vw,2.6rem);text-align:center;transition:background .6s ease;}
.contact-card p{margin:0;color:var(--on-deep);}
.contact-card a{color:var(--gold);font-weight:600;}

@media(max-width:640px){ .toc ol{columns:1;} }
