  /* legal.css — Terms of Service & Privacy Policy pages. Loads AFTER styles.css,
     which supplies the :root tokens, fonts, header, footer and buttons. */

  .legal-hero{text-align:center;
    background:radial-gradient(120% 100% at 50% 0%, #8a1c4e, var(--wine-d) 82%);
    padding:clamp(46px,9vw,84px) 24px clamp(38px,6vw,60px)}
  .legal-hero .eyebrow{font-family:'Oswald','Oswald Fallback',sans-serif;text-transform:uppercase;
    letter-spacing:6px;font-weight:600;font-size:.85rem;color:var(--blush)}
  .legal-hero h1{font-family:'Anton','Anton Fallback',sans-serif;text-transform:uppercase;color:var(--cream);
    font-size:clamp(2.2rem,7vw,3.6rem);line-height:1;letter-spacing:1px;margin-top:12px;text-wrap:balance}
  .legal-hero .updated{font-family:'Oswald','Oswald Fallback',sans-serif;text-transform:uppercase;
    letter-spacing:3px;font-size:.78rem;color:var(--blush);margin-top:16px}

  .legal-body{background:var(--paper);color:#3f1f30;padding:clamp(38px,6vw,68px) 0}
  .legal-wrap{max-width:760px;margin:0 auto;padding:0 24px}

  .notice{display:flex;gap:13px;align-items:flex-start;background:#fff4d6;border:1px solid #e6c15e;
    border-left:5px solid #d99a12;border-radius:12px;padding:18px 20px;color:#5a4409;font-size:.95rem;line-height:1.6}
  .notice svg{flex:none;width:22px;height:22px;margin-top:2px}
  .notice b{color:#4a3807}

  .toc{margin-top:30px;background:#fff;border:1px solid rgba(113,23,63,.14);border-radius:14px;padding:22px 26px;
    box-shadow:0 10px 30px rgba(53,9,29,.06)}
  .toc h2{font-family:'Oswald','Oswald Fallback',sans-serif;text-transform:uppercase;letter-spacing:2px;
    font-size:.82rem;color:var(--pink-d);margin:0 0 12px}
  .toc ol{margin:0;padding-left:20px;font-size:.92rem}
  @media(min-width:560px){.toc ol{columns:2;column-gap:34px}}
  .toc li{margin:5px 0;break-inside:avoid}
  .toc a{color:#71304b}
  .toc a:hover{color:var(--pink-d);text-decoration:underline}

  .legal-content{margin-top:22px}
  .legal-content .lead{font-size:1.08rem;color:#5c2c44;line-height:1.7}
  .legal-content h2{font-family:'Oswald','Oswald Fallback',sans-serif;color:var(--wine);font-size:1.4rem;
    letter-spacing:.3px;margin:36px 0 8px;scroll-margin-top:90px}
  .legal-content h2 .n{color:var(--pink-d);font-weight:600;margin-right:10px}
  .legal-content h3{font-family:'Oswald','Oswald Fallback',sans-serif;color:var(--wine-dd);font-size:1.06rem;margin:18px 0 4px}
  .legal-content p{margin:10px 0;line-height:1.72}
  .legal-content ul{list-style:none;margin:12px 0;padding-left:0;display:flex;flex-direction:column;gap:9px}
  .legal-content li{position:relative;padding-left:24px;line-height:1.6}
  .legal-content li::before{content:"";position:absolute;left:2px;top:9px;width:8px;height:8px;border-radius:50%;
    background:var(--pink);box-shadow:0 0 0 3px rgba(255,45,132,.15)}
  .legal-content a{color:var(--pink-d);text-decoration:underline;text-underline-offset:2px}
  .legal-content strong{color:var(--wine-dd)}
  .legal-content .callout{background:#fdeef4;border:1px solid rgba(217,24,106,.28);border-radius:12px;padding:16px 20px;margin:16px 0}

  /* fill-in placeholders — every one must be replaced before publishing */
  .ph{background:#ffe0ef;border:1px dashed var(--pink-d);border-radius:5px;padding:1px 7px;
    font-family:'Oswald','Oswald Fallback',sans-serif;font-size:.9em;color:#a8104f}

  .back-home{display:inline-flex;align-items:center;gap:8px;margin-top:42px;
    font-family:'Oswald','Oswald Fallback',sans-serif;text-transform:uppercase;letter-spacing:2px;
    font-size:.82rem;color:var(--pink-d);font-weight:600}
  .back-home:hover{color:var(--pink)}
