/* =============================================================
 * EMA Legal Body — TOC + numbered sections (Privacy / Terms / etc.)
 * Self-contained; uses Oswald via theme stack.
 * ========================================================== */

 .legal-body{
    padding:80px 32px 100px;
    background:var(--cream);
  }
  .legal-body-inner{
    max-width:780px;margin:0 auto;
  }
  .legal-body h2{
    font-family:var(--display);
    font-weight:700;
    font-size:28px;line-height:1.05;
    letter-spacing:-0.005em;
    text-transform:uppercase;
    color:var(--soot);
    margin:48px 0 16px;
    padding-top:32px;
    border-top:2px solid var(--soot);
  }
  .legal-body h2:first-child{margin-top:0;padding-top:0;border-top:none}
  .legal-body h2 .num{
    color:var(--gold);
    font-size:.7em;
    margin-right:14px;
    letter-spacing:.04em;
  }
  .legal-body h3{
    font-family:var(--display);
    font-weight:700;
    font-size:19px;line-height:1.2;
    letter-spacing:.005em;
    text-transform:uppercase;
    color:var(--soot);
    margin:28px 0 12px;
  }
  .legal-body p{
    font-family:'Oswald','Arial Narrow',sans-serif;
    font-size:16px;line-height:1.75;
    color:var(--soot);
    margin-bottom:18px;
  }
  .legal-body p strong{color:var(--red);font-weight:700}
  .legal-body ul{
    list-style:none;margin:14px 0 22px;padding:0;
  }
  .legal-body ul li{
     font-family:'Oswald','Arial Narrow',sans-serif;
    padding:7px 0 7px 24px;
    font-size:15.5px;line-height:1.65;
    color:var(--soot);
    position:relative;
  }
  .legal-body ul li::before{
    content:"";
    position:absolute;left:0;top:15px;
    width:8px;height:8px;
    background:var(--red);
  }
  .legal-body .callout{
     font-family:'Oswald','Arial Narrow',sans-serif;
    margin:24px 0;
    padding:24px 28px;
    background:var(--cream-2);
    border-left:4px solid var(--gold);
    font-size:15.5px;line-height:1.65;
    color:var(--soot);
  }
  .legal-body .callout strong{color:var(--red)}

  /* Section nav (sticky right rail on desktop, accordion on mobile) */
  .legal-nav{
    margin:0 0 32px;
    padding:18px 22px;
    background:var(--soot);
    color:var(--cream);
    border:3px solid var(--soot);
  }
  .legal-nav .lab{
    font-size:10.5px;font-weight:700;
    letter-spacing:.24em;text-transform:uppercase;
    color:var(--gold-bright);
    margin-bottom:10px;
    font-family: var(--sans);
  }
  .legal-nav ol{
    list-style:none;padding:0;margin:0;
    counter-reset:legal-counter;
    display:grid;grid-template-columns:repeat(2, 1fr);
    gap:6px 18px;
  }
  .legal-nav ol li{
    counter-increment:legal-counter;
    font-size:13px;line-height:1.4;
        font-family: var(--sans);
  }
  .legal-nav ol li::before{
    content:counter(legal-counter, decimal-leading-zero);
    color:var(--gold-bright);
    font-weight:700;
    margin-right:8px;
  }
  .legal-nav ol li a{
    color:rgba(245,239,217,.85);
    border-bottom:1px solid transparent;
    transition:border-color .2s, color .2s;
  }
  .legal-nav ol li a:hover{
    color:var(--gold-bright);
    border-bottom-color:var(--gold-bright);
  }

/* ============ RESPONSIVE ============ */
@media (max-width:1100px){
    .legal-hero{padding:60px 24px 50px}
    .legal-body{padding:50px 24px 60px}
    .legal-nav ol{grid-template-columns:1fr}
  }
  @media (max-width:780px){
    .legal-hero h1{font-size:42px}
    .legal-body h2{font-size:22px;margin:36px 0 14px;padding-top:24px}
    .legal-body p{font-size:15px}
    .legal-body ul li{font-size:14.5px}
    .legal-body{padding:36px 16px 50px}
    .legal-crumb{padding:10px 16px}
    .legal-crumb-inner{flex-wrap:wrap;gap:8px}
  }