/* ============================================================
   STEAGUS PUBLISHING — legal pages (privacy, EULA, refunds, terms)
   Status: SHARED by all four. They shipped as four standalone HTML
   files with byte-identical <style> blocks; that block is this file.

   Self-contained on purpose. These pages carry the PRODUCT palette
   (warm ivory, serif headings, ledger green) rather than the main
   publishing site's, because they read as documentation belonging to
   the software. So they define their own tokens and do NOT load
   publishing-site.css. Only hub.css is shared in.
   ============================================================ */
:root{
    --paper:#F6F1E7;        /* warm ivory base            */
    --paper-2:#FBF8F1;      /* lifted card surface        */
    --paper-3:#EFE8DA;      /* recessed band              */
    --ink:#1E1B17;          /* warm near-black text       */
    --ink-2:#5A5248;        /* muted secondary text       */
    --ink-3:#8A8377;        /* tertiary / captions        */
    --line:#E2D9C8;         /* warm hairline border       */
    --line-2:#D4C8B2;       /* stronger hairline          */
    --accent:#1B5E4B;       /* deep ledger green          */
    --accent-deep:#123F32;  /* darker green for hovers    */
    --amber:#A66A12;        /* partial-deduction amber    */
    --amber-bg:#F0E3C7;     /* amber tint background      */
    --heading:#463D31;      /* softened title color       */
    --radius:14px;
    --serif:"Iowan Old Style","Charter","Hoefler Text",Georgia,"Times New Roman",serif;
    --sans:"Seravek","Gill Sans Nova","Avenir Next","Segoe UI",-apple-system,sans-serif;
    --mono:ui-monospace,"SF Mono","JetBrains Mono",Menlo,Consolas,monospace;
    --maxw:1080px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;background:var(--paper);color:var(--ink);
    font-family:var(--sans);font-size:18px;line-height:1.65;
    -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  }
  /* faint paper grain */
  body::before{
    content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.035;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
  }

  /* ---------- top bar (matches landing) ---------- */
  header.bar{
    position:sticky;top:0;z-index:40;
    backdrop-filter:saturate(1.2) blur(8px);
    background:rgba(246,241,231,.82);border-bottom:1px solid var(--line);
  }
  .bar-in{
    max-width:var(--maxw);margin:0 auto;padding:14px 28px;
    display:flex;align-items:center;justify-content:space-between;gap:1rem;
  }
  .mark{line-height:1.1;}
  .mark .name{font-family:var(--serif);font-weight:600;font-size:1.18rem;line-height:1.15;}
  .mark .name a{color:var(--heading);text-decoration:none;}
  .mark .pub{font-family:var(--mono);font-size:.66rem;letter-spacing:.26em;text-transform:uppercase;color:var(--ink-3);margin-top:5px;}

  /* legal cross-nav chips */
  .legal-nav{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;}
  .legal-nav a{
    font-family:var(--mono);font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;
    color:var(--accent);border:1px solid var(--line-2);border-radius:999px;
    padding:.45rem .85rem;background:var(--paper-2);transition:.2s;white-space:nowrap;
  }
  .legal-nav a:hover{border-color:var(--accent);text-decoration:none;}
  .legal-nav a.active{background:var(--accent);color:var(--paper-2);border-color:var(--accent);}
  @media(max-width:620px){
    .bar-in{flex-wrap:wrap;row-gap:.7rem;}
    .legal-nav{width:100%;justify-content:flex-start;}
  }

  /* ---------- legal reading column ---------- */
  .legal{max-width:760px;margin:0 auto;padding:60px 28px 96px;position:relative;z-index:1;}
  .eyebrow{
    font-family:var(--mono);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;
    color:var(--accent);display:inline-flex;align-items:center;gap:.6rem;margin-bottom:1rem;
  }
  .eyebrow::before{content:"";width:26px;height:1px;background:var(--accent);opacity:.6;}
  .legal h1{
    font-family:var(--serif);font-weight:600;letter-spacing:-.01em;line-height:1.12;
    color:var(--heading);font-size:clamp(2.1rem,4.6vw,3.1rem);margin:0 0 .55rem;
  }
  .effective{font-family:var(--mono);font-size:.8rem;letter-spacing:.03em;color:var(--ink-3);margin:0 0 2.4rem;}
  .intro{
    font-size:1.12rem;color:var(--ink);border-left:3px solid var(--accent);
    padding-left:1.15rem;margin:0 0 2.4rem;
  }
  .legal h2{
    font-family:var(--serif);font-weight:600;color:var(--heading);
    font-size:1.42rem;line-height:1.2;margin:2.7rem 0 .85rem;
  }
  .legal h3{
    font-family:var(--serif);font-weight:600;color:var(--heading);
    font-size:1.1rem;line-height:1.25;margin:1.9rem 0 .55rem;
  }
  .legal p{color:var(--ink-2);margin:0 0 1.1rem;}
  .legal ul{margin:0 0 1.2rem;padding:0;list-style:none;}
  .legal li{position:relative;padding:.35rem 0 .35rem 1.6rem;color:var(--ink-2);}
  .legal li::before{content:"";position:absolute;left:0;top:1rem;width:7px;height:7px;border-radius:2px;background:var(--accent);}
  .legal a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px;text-decoration-color:var(--line-2);word-break:break-word;transition:.2s;}
  .legal a:hover{text-decoration-color:var(--accent);}
  .legal strong{color:var(--ink);font-weight:600;}
  .placeholder{
    font-family:var(--mono);font-size:.85em;color:var(--amber);
    background:var(--amber-bg);border:1px solid var(--line-2);border-radius:5px;padding:.04rem .38rem;
  }
  .sub{font-family:var(--mono);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 .2rem;}
  hr.div{border:0;border-top:1px solid var(--line);margin:2.6rem 0;}

  /* ---------- footer (matches landing) ---------- */
  footer{border-top:1px solid var(--line);padding:44px 0 60px;position:relative;z-index:1;}
  .foot-in{max-width:var(--maxw);margin:0 auto;padding:0 28px;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;align-items:flex-end;}
  footer .name{font-family:var(--serif);font-size:1.1rem;color:var(--heading);}
  footer .pub{font-family:var(--mono);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);margin-top:.2rem;}
  footer .copy{font-family:var(--mono);font-size:.72rem;letter-spacing:.04em;color:var(--ink-3);text-align:right;}
  footer .foot-links{margin-top:.5rem;display:flex;gap:.9rem;justify-content:flex-end;flex-wrap:wrap;}
  footer .foot-links a{font-family:var(--mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);text-decoration:none;}
  footer .foot-links a:hover{text-decoration:underline;text-underline-offset:2px;}
