/* ============================================================
   FISCUS — legal pages — "PLAIN & PRECISE"
   The legal pages ARE the product's promise made visible: every
   section pairs a big, warm, plain-English summary (left) with
   the exact formal clause (right) — plain language + precision,
   side by side, the way Fiscus explains tax. Off-grid via the
   two-tier column rhythm and the type-scale jump between the
   human line and the fine print. Cream canvas, brass, Fraunces
   for the human voice, General Sans for the record. No logo.
   ============================================================ */
:root{
  --indigo:#1A2052; --indigo-2:#0D1339; --cream:#F8F4EA; --paper:#F1EBDC; --paper-2:#EFE7D5;
  --brass:#B8873B; --brass-lite:#8A5E22; --brass-hover:#C99A4E;
  --line:rgba(26,32,82,.12); --ink-soft:rgba(26,32,82,.62);
  --edge:clamp(1.2rem,5vw,4rem);
}
*{margin:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  background:var(--cream);color:var(--indigo);
  font-family:'General Sans',system-ui,sans-serif;line-height:1.7;min-width:320px;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
a{color:var(--brass-lite);text-underline-offset:3px}
a:hover{color:var(--brass-hover)}
::selection{background:var(--brass);color:var(--indigo-2)}

.doc-back{
  position:fixed;top:1.1rem;right:1.2rem;z-index:20;
  font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--brass-lite);text-decoration:none;background:rgba(248,244,234,.9);backdrop-filter:blur(6px);
  padding:.5rem .85rem;border:1px solid var(--line);border-radius:999px}
.doc-back:hover{color:var(--indigo);border-color:var(--brass)}

/* ---------- masthead ---------- */
.doc-mast{max-width:1200px;margin:0 auto;padding:clamp(3.5rem,12vh,7rem) var(--edge) clamp(2rem,5vw,3.5rem)}
.doc-eyebrow{font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--brass-lite);display:inline-flex;align-items:center;gap:.6rem;margin-bottom:1.2rem}
.doc-eyebrow::before{content:"";width:22px;height:1px;background:var(--brass)}
.doc-mast h1{font-family:'Fraunces',serif;font-weight:400;color:var(--indigo);
  font-size:clamp(2.8rem,11vw,6.5rem);line-height:.92;letter-spacing:-.035em;max-width:13ch}
.doc-mast h1 em{font-style:italic;color:var(--brass-lite)}
.doc-mast-lede{margin-top:1.5rem;font-family:'Fraunces',serif;font-size:clamp(1.05rem,2.4vw,1.4rem);
  line-height:1.5;color:var(--ink-soft);max-width:44ch}
.doc-mast-meta{margin-top:1.4rem;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.06em;
  text-transform:uppercase;color:rgba(26,32,82,.45)}

/* ---------- the two-tier sections ---------- */
.doc{max-width:1200px;margin:0 auto;padding:0 var(--edge) 4rem;counter-reset:sec}
.doc-sec{
  display:grid;
  grid-template-columns:minmax(0,0.82fr) minmax(0,1.18fr);
  gap:clamp(1.4rem,4vw,4rem);
  padding:clamp(2rem,4.5vw,3.2rem) 0;
  border-top:1px solid var(--line);
}
/* LEFT — the plain-English promise */
.sec-plain{counter-increment:sec}
.sec-num{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.12em;color:var(--brass);
  display:block;margin-bottom:.7rem}
.sec-num::before{content:counter(sec,decimal-leading-zero)}
.sec-plain h2{font-family:'Fraunces',serif;font-weight:500;letter-spacing:-.02em;color:var(--indigo);
  font-size:clamp(1.4rem,2.6vw,1.9rem);line-height:1.12;margin-bottom:.85rem}
.sec-short{font-family:'Fraunces',serif;font-weight:400;font-size:clamp(1.02rem,1.6vw,1.18rem);
  line-height:1.5;color:var(--brass-lite)}
.sec-short::before{content:"In short — ";font-style:italic;color:var(--ink-soft)}
/* LEFT column can ride along on tall sections */
@media(min-width:861px){
  .sec-plain{position:sticky;top:2rem;align-self:start}
}

/* RIGHT — the exact formal record */
.sec-precise{max-width:60ch;font-size:.98rem;color:rgba(26,32,82,.9)}
.sec-precise h3{font-family:'General Sans',sans-serif;font-weight:600;color:var(--indigo);font-size:1rem;margin:1.4rem 0 .45rem}
.sec-precise h3:first-child{margin-top:0}
.sec-precise p{margin:0 0 .95rem;overflow-wrap:break-word}
.sec-precise p:last-child{margin-bottom:0}
.sec-precise strong{font-weight:600;color:var(--indigo)}
.sec-precise ul,.sec-precise ol{margin:0 0 .95rem;padding-left:1.3rem}
.sec-precise li{margin:.3rem 0}
.sec-precise li::marker{color:var(--brass)}

/* table */
.table-wrap{overflow-x:auto;margin:.2rem 0 1.1rem;border:1px solid var(--line);border-radius:10px;-webkit-overflow-scrolling:touch}
table{border-collapse:collapse;width:100%;min-width:32rem;font-size:.9rem}
thead th{background:var(--indigo);color:var(--cream);font-weight:600;text-align:left;padding:.65rem .85rem}
tbody td{padding:.65rem .85rem;vertical-align:top;border-top:1px solid var(--line)}
tbody tr:nth-child(even){background:var(--paper)}

.doc-close{max-width:1200px;margin:0 auto;padding:2.4rem var(--edge) 0;border-top:2px solid var(--brass)}
.doc-close p{max-width:52ch;font-family:'Fraunces',serif;font-style:italic;font-size:1.05rem;color:var(--ink-soft)}

/* ---------- footer ---------- */
.doc-foot{background:var(--indigo);color:var(--cream);padding:2.2rem var(--edge);margin-top:3rem}
.doc-foot-inner{max-width:1200px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;
  gap:.8rem 1.4rem;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.doc-foot a{color:var(--cream);opacity:.82;text-decoration:none}
.doc-foot a:hover{opacity:1;color:var(--brass-hover)}
.doc-foot-links{display:flex;gap:1.3rem;flex-wrap:wrap}
.doc-foot-copy{opacity:.55}

/* ---------- mobile: stack plain over precise ---------- */
@media(max-width:860px){
  .doc-sec{grid-template-columns:1fr;gap:1.1rem}
  .sec-precise{max-width:none;padding-top:.2rem;border-top:1px dashed var(--line)}
  .sec-precise{padding-top:1rem}
}
