/* CattCut product chrome · tokens, nav and footer shared by /edit and the CattCut legal pages.
   Scoped palette: see DESIGN.md §16 (2026-11-04). Do not reuse on Cattory agency pages. */
:root{
  --ink:#101210; --paper:#fffdf6; --sky:#62bdff; --y:#ffd84d; --pink:#ff8cc6; --green:#3fd07f;
  --orange:#ff9d3c; --purple:#a982ff; --mag:#ff2f9e; --cyan:#1fe0e6;
  --disp:'Space Grotesk','Google Sans Flex',sans-serif; --sans:'Google Sans Flex',sans-serif;
  --mono:ui-monospace,'Cascadia Mono',Consolas,monospace;
  --ease:cubic-bezier(0.22,1,0.36,1); --spring:cubic-bezier(.34,1.56,.64,1);
  --b:2.5px solid var(--ink); --pop:0 5px 0 var(--ink); --r:20px; --gut:clamp(16px,4vw,48px);
}
body{ background:var(--paper); color:var(--ink); font-family:var(--sans); overflow-x:hidden; }
em{ font-style:normal; }
.wrap{ max-width:1200px; margin:0 auto; padding:0 var(--gut); }
.box{ background:#fff; border:var(--b); border-radius:var(--r); box-shadow:var(--pop); }
.pill{ display:inline-flex; align-items:center; gap:8px; font-family:var(--disp); font-weight:700; font-size:15px; line-height:1;
       padding:8px 13px; border-radius:100px; border:2px solid var(--ink); background:var(--y); color:var(--ink); white-space:nowrap; }
.pill--g{ background:var(--green); } .pill--p{ background:var(--pink); } .pill--b{ background:var(--sky); }
.pill--o{ background:var(--orange); } .pill--v{ background:var(--purple); } .pill--w{ background:#fff; }
/* ── PRODUCT NAV + FOOTER ── */
.pnav{ position:fixed; top:14px; left:0; right:0; z-index:60; padding:0 var(--gut); }
.pnav__in{ max-width:1200px; margin:0 auto; display:flex; align-items:center; gap:10px; padding:8px 8px 8px 18px; border-radius:100px; }
.pnav__brand{ display:inline-flex; align-items:center; gap:6px; font-family:var(--disp); font-weight:700; font-size:20px; letter-spacing:-.4px; }
.pnav__logo{ width:26px; height:auto; display:block; }
.pnav__brand .pill{ font-size:15px; padding:6px 11px; transform:rotate(-4deg); }
.pnav__by{ font-size:15px; font-weight:500; margin-left:6px; }
.pnav__lang{ margin-left:auto; display:inline-flex; align-items:center; gap:7px; font-family:var(--disp); font-weight:700; font-size:15px;
             padding:10px 14px; border-radius:100px; border:2px solid var(--ink); }
.pnav__lang svg{ width:16px; height:16px; }
.pnav__btn{ font-family:var(--disp); font-weight:700; font-size:15px; padding:10px 18px; border-radius:100px; border:2px solid var(--ink);
            background:var(--y); box-shadow:0 3px 0 var(--ink); white-space:nowrap; transition:transform .12s, box-shadow .12s; }
.pnav__btn:hover{ transform:translateY(-1px); box-shadow:0 4px 0 var(--ink); }
.pnav__btn--w{ background:#fff; }
.pfoot{ background:var(--paper); border-top:var(--b); padding:36px 0 26px; }
.pfoot__in{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:18px; }
.pfoot__links{ display:flex; flex-wrap:wrap; gap:10px; }
.pfoot__links a{ font-family:var(--disp); font-weight:700; font-size:15px; padding:9px 15px; border-radius:100px; border:2px solid var(--ink); background:#fff; }
.pfoot__links a:hover{ background:var(--y); }
.pfoot__fine{ display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px 24px; margin-top:24px; font-size:14px; font-weight:500; }


/* ── LEGAL PAGES (cattcut-terms / cattcut-privacy) ── */
.legal{ padding:clamp(120px,14vw,160px) 0 clamp(70px,8vw,100px); }
.legal__wrap{ max-width:760px; margin:0 auto; padding:0 var(--gut); font-size:17px; line-height:1.65; }
.legal h1{ font-family:var(--disp); font-weight:700; font-size:clamp(36px,5vw,58px); line-height:1; letter-spacing:-1.6px; margin:0; }
.legal__meta{ font-weight:500; margin:20px 0 34px; }
.legal h2{ font-family:var(--disp); font-weight:700; font-size:clamp(22px,2.4vw,27px); letter-spacing:-.5px; line-height:1.2; margin:44px 0 12px; }
.legal p{ margin:0 0 14px; }
.legal ul, .legal ol{ margin:0 0 14px; padding-left:22px; }
.legal li{ margin:0 0 8px; }
.legal ol.legal__alpha{ list-style:lower-alpha; }
.legal a{ text-decoration:underline; text-underline-offset:3px; }
.legal__table{ overflow-x:auto; margin:0 0 16px; border:var(--b); border-radius:14px; background:#fff; }
.legal table{ width:100%; border-collapse:collapse; font-size:15px; line-height:1.45; min-width:520px; }
.legal th, .legal td{ text-align:left; vertical-align:top; padding:11px 14px; border-bottom:1.5px solid var(--ink); }
.legal tr:last-child td{ border-bottom:0; }
.legal th{ font-family:var(--disp); font-weight:700; background:var(--y); }
.legal__pending{ border:var(--b); border-radius:var(--r); box-shadow:var(--pop); background:var(--y); padding:20px 22px 8px; margin:0 0 16px; }
.legal__pending-t{ font-family:var(--disp); font-weight:700; }
.pfoot__links a[aria-current="page"]{ background:var(--y); }
/* nav responsive on the legal pages (edit.html carries its own copy inside its page CSS) */
@media (max-width:1020px){ .legal-page .pnav__by{ display:none; } }
@media (max-width:540px){
  .legal-page .pnav{ padding:0 10px; } .legal-page .pnav__in{ gap:6px; padding:6px 6px 6px 12px; }
  .legal-page .pnav__brand{ font-size:17px; } .legal-page .pnav__brand .pill{ font-size:13px; padding:5px 8px; }
  .legal-page .pnav__lang{ padding:8px 10px; font-size:14px; } .legal-page .pnav__btn{ font-size:14px; padding:8px 12px; }
  .legal__wrap{ font-size:16px; }
}
