/* Meat Et v12 prototype - site.css lines 3137-3458 (terms), unchanged. TKT-1580. */
/* ===================== terms ===================== */
:root {
    --wood-900:#2A1C13; --wood-800:#3C2A1D; --wood-700:#51392A; --wood-500:#7A5C45;
    --gold-700:#7E5210; --gold-600:#9C6A18; --gold-500:#C08A2C;
    --gold-400:#D9A64A; --gold-300:#E7C384; --gold-200:#F2DEB8; --gold-100:#FAF0DC;
    --cream-50:#FFFDF8; --cream-100:#FAF5EC; --cream-200:#F2EADB; --cream-300:#E5D9C4;
    --ink-900:#2A1C13; --ink-600:#6B5340; --ink-400:#96806A;

    
    --teal-800:#0A5054; --teal-700:#0E6E73; --teal-600:#13868C; --teal-100:#E3F1F1;

    --leaf:#3D7A4E; --leaf-wash:#E7F0E8;
    --ember:#B04A25; --ember-wash:#FBE7DE;
    --fhrs-blue:#1E4D8C;

    --radius-s:3px; --radius-m:5px; --radius-l:8px; --radius-pill:6px;
    --shell-max:1240px; --header-h:64px;

    --wood-grain:
      repeating-linear-gradient(93deg, rgba(0,0,0,.16) 0 1px, transparent 1px 6px),
      repeating-linear-gradient(90deg, rgba(255,255,255,.022) 0 2px, transparent 2px 13px),
      linear-gradient(158deg, #3E2C1E, #241710);

    --font-display:"Outfit","Trebuchet MS",system-ui,sans-serif;
    --font-body:"Public Sans","Helvetica Neue",Arial,system-ui,sans-serif;

    
    --panel-bg:var(--cream-50); --panel-fg:var(--ink-900);
    --panel-muted:var(--ink-400); --panel-accent:var(--gold-600);
    --panel-border:var(--cream-300);
    --btn-bg:var(--teal-700); --btn-fg:#FFFDF8;
    --btn-bg-hover:var(--teal-600); --btn-bg-active:var(--teal-800);
    --foot-bg:var(--cream-200); --foot-fg:var(--ink-600); --foot-link:var(--ink-600);
    --foot-link-hover:var(--gold-700); --foot-head:var(--gold-700);
    --foot-rule:var(--cream-300); --foot-dim:var(--ink-400);
  }
  :root[data-tone="light"] {
    --panel-bg:var(--gold-100); --panel-muted:var(--gold-700);
    --panel-accent:var(--gold-700); --panel-border:var(--gold-200);
    --foot-bg:var(--wood-grain); --foot-fg:#B29A82; --foot-link:#C7B29A;
    --foot-link-hover:var(--gold-300); --foot-head:var(--gold-400);
    --foot-rule:var(--wood-700); --foot-dim:#8E7863;
  }
  :root[data-tone="walnut"] {
    --panel-bg:var(--wood-grain); --panel-fg:var(--cream-50);
    --panel-muted:#B29A82; --panel-accent:var(--gold-400);
    --panel-border:var(--wood-700);
    --foot-bg:var(--wood-grain); --foot-fg:#B29A82; --foot-link:#C7B29A;
    --foot-link-hover:var(--gold-300); --foot-head:var(--gold-400);
    --foot-rule:var(--wood-700); --foot-dim:#8E7863;
  }
  body[data-page="terms"] * { box-sizing:border-box; }
  body[data-page="terms"] {
    margin:0; background:var(--cream-100); color:var(--ink-900);
    font-family:var(--font-body); font-size:15px; line-height:1.55;
    -webkit-font-smoothing:antialiased;
  }
  body[data-page="terms"] h1,
body[data-page="terms"] h2,
body[data-page="terms"] h3,
body[data-page="terms"] h4 { font-family:var(--font-display); margin:0; text-wrap:balance; letter-spacing:-0.015em; }
  body[data-page="terms"] button { font:inherit; color:inherit; cursor:pointer; border:none; background:none; }
  body[data-page="terms"] a { color:var(--gold-600); }
  body[data-page="terms"] img { max-width:100%; }
  body[data-page="terms"] :focus-visible { outline:3px solid var(--teal-600); outline-offset:2px; border-radius:3px; }
  body[data-page="terms"] .price { font-variant-numeric:tabular-nums; }
  body[data-page="terms"] .wrap { max-width:var(--shell-max); margin:0 auto; padding-inline:20px; }
  body[data-page="terms"] svg.ico {
    width:16px; height:16px; flex:none; display:inline-block; vertical-align:-3px;
    stroke:currentColor; stroke-width:1.9; fill:none;
    stroke-linecap:round; stroke-linejoin:round;
  }
  body[data-page="terms"] svg.ico.solid { fill:currentColor; stroke:none; }
  body[data-page="terms"] svg.ico.lg { width:22px; height:22px; vertical-align:-5px; }
  body[data-page="terms"] svg.ico.sm { width:13px; height:13px; vertical-align:-2px; }
  body[data-page="terms"] .announce {
    background:var(--wood-900); color:var(--gold-300);
    font-size:12.5px; padding:8px 16px; text-align:center;
  }
  body[data-page="terms"] .announce b { color:var(--gold-400); font-weight:700; }
  body[data-page="terms"] .announce .sep { color:var(--wood-500); margin:0 10px; }
  body[data-page="terms"] .site-header {
    position:sticky; top:env(safe-area-inset-top, 0px); z-index:60;
    background:var(--cream-50); border-bottom:1px solid var(--cream-300);
  }
  body[data-page="terms"] .header-inner { display:flex; align-items:center; gap:18px; padding-block:12px; flex-wrap:wrap; }
  body[data-page="terms"] .brand { display:flex; align-items:center; gap:11px; text-decoration:none; margin-right:8px; }
  body[data-page="terms"] .logo-mark { width:40px; height:40px; flex:none; display:block; }
  body[data-page="terms"] .brand-text { display:flex; flex-direction:column; line-height:1.05; }
  body[data-page="terms"] .brand .mark {
    font-family:var(--font-display); font-weight:800; font-size:21px;
    color:var(--wood-900); 
  }
  body[data-page="terms"] .brand .sub {
    font-size:10px; 
    color:var(--gold-600); font-weight:700; margin-top:2px;
  }
  body[data-page="terms"] .head-mid { margin-right:auto; display:flex; align-items:center; gap:9px; font-size:14px; color:var(--ink-600); }
  body[data-page="terms"] .head-mid b { color:var(--ink-900); font-weight:600; }
  body[data-page="terms"] .header-actions { display:flex; align-items:center; gap:8px; }
  body[data-page="terms"] .btn-ghost {
    display:flex; align-items:center; gap:8px;
    padding:10px 15px; border-radius:var(--radius-m); min-height:44px;
    border:1px solid var(--cream-300); background:var(--cream-50);
    color:var(--ink-900); font-size:14px; font-weight:600; text-decoration:none;
  }
  body[data-page="terms"] .btn-ghost:hover { background:var(--cream-200); }
  body[data-page="terms"] .basket-btn {
    background:var(--btn-bg); color:var(--btn-fg);
    padding:10px 17px; border-radius:var(--radius-m); min-height:44px;
    display:flex; align-items:center; gap:9px; font-weight:700; font-size:14px;
    text-decoration:none; transition:background .16s, transform .12s;
  }
  body[data-page="terms"] .basket-btn:hover { background:var(--btn-bg-hover); transform:translateY(-1px); }
  body[data-page="terms"] .basket-btn:active { background:var(--btn-bg-active); transform:translateY(0); }
  body[data-page="terms"] .btn {
    display:inline-flex; align-items:center; justify-content:center; gap:9px;
    background:var(--btn-bg); color:var(--btn-fg);
    font-weight:700; font-size:15px; padding:13px 22px;
    border-radius:var(--radius-m); min-height:48px; text-decoration:none;
    transition:background .16s, transform .12s, box-shadow .16s;
  }
  body[data-page="terms"] .btn:hover:not(:disabled) { background:var(--btn-bg-hover); transform:translateY(-1px); }
  body[data-page="terms"] .btn:active:not(:disabled) { background:var(--btn-bg-active); transform:translateY(0); }
  body[data-page="terms"] .btn:disabled { background:var(--cream-200); color:var(--ink-400); cursor:not-allowed; }
  body[data-page="terms"] .btn.wide { width:100%; }
  body[data-page="terms"] .btn.big { font-size:16.5px; min-height:56px; }
  body[data-page="terms"] .btn-line {
    display:inline-flex; align-items:center; justify-content:center; gap:9px;
    border:1px solid var(--cream-300); background:var(--cream-50); color:var(--ink-900);
    font-weight:600; font-size:14.5px; padding:12px 20px;
    border-radius:var(--radius-m); min-height:46px; text-decoration:none;
    transition:background .16s, border-color .16s;
  }
  body[data-page="terms"] .btn-line:hover { background:var(--cream-200); border-color:var(--teal-600); }
  body[data-page="terms"] .page-head { padding-block:30px 8px; }
  body[data-page="terms"] .crumb {
    display:inline-flex; align-items:center; gap:7px;
    font-size:13.5px; font-weight:600; color:var(--teal-700); text-decoration:none;
  }
  body[data-page="terms"] .crumb:hover { text-decoration:underline; }
  body[data-page="terms"] .page-head h1 { font-size:clamp(26px,3.6vw,36px); font-weight:800; margin-top:12px; }
  body[data-page="terms"] .page-head .lede { font-size:15.5px; color:var(--ink-600); margin:10px 0 0; max-width:62ch; }
  body[data-page="terms"] .panel {
    background:var(--cream-50); border:1px solid var(--cream-300);
    border-radius:var(--radius-m); padding:20px;
  }
  body[data-page="terms"] .panel + .panel { margin-top:16px; }
  body[data-page="terms"] .panel-head { display:flex; align-items:center; gap:11px; margin-bottom:14px; }
  body[data-page="terms"] .panel-head h2 { font-size:18px; font-weight:700; }
  body[data-page="terms"] .step-no {
    width:26px; height:26px; flex:none; border-radius:var(--radius-s);
    background:var(--wood-900); color:var(--gold-400);
    display:grid; place-items:center; font-size:13px; font-weight:700;
    font-family:var(--font-display);
  }
  body[data-page="terms"] label.field { display:block; margin-bottom:12px; }
  body[data-page="terms"] label.field .lbl {
    display:block; font-size:12px; 
    font-weight:700; color:var(--ink-400); margin-bottom:6px;
  }
  body[data-page="terms"] .in {
    width:100%; border:1px solid var(--cream-300); border-radius:var(--radius-s);
    padding:12px 13px; font:inherit; font-size:15px; min-height:48px;
    background:#fff; color:var(--ink-900);
  }
  body[data-page="terms"] .in:disabled { background:var(--cream-200); color:var(--ink-400); cursor:not-allowed; }
  body[data-page="terms"] .in::placeholder { color:var(--ink-400); }
  body[data-page="terms"] .row2 { display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:12px; }
  body[data-page="terms"] .hint { font-size:12px; color:var(--ink-400); margin:6px 0 0; }
  body[data-page="terms"] .pick {
    display:flex; align-items:center; gap:12px;
    padding:13px 14px; border:1px solid var(--cream-300); border-radius:var(--radius-s);
    margin-bottom:9px; cursor:pointer; min-height:52px; background:var(--cream-50);
  }
  body[data-page="terms"] .pick:hover { border-color:var(--teal-600); }
  body[data-page="terms"] .pick:has(input:checked) {
    border-color:var(--teal-700); background:var(--teal-100);
    box-shadow:inset 0 0 0 1px var(--teal-700);
  }
  body[data-page="terms"] .pick input { accent-color:var(--teal-700); width:18px; height:18px; flex:none; }
  body[data-page="terms"] .pick .t { flex:1; }
  body[data-page="terms"] .pick .t b { display:block; font-size:14.5px; font-weight:700; }
  body[data-page="terms"] .pick .t span { font-size:12.5px; color:var(--ink-600); }
  body[data-page="terms"] .pick .amt { font-size:14px; font-weight:700; font-variant-numeric:tabular-nums; }
  body[data-page="terms"] .note-box {
    background:var(--gold-100); border:1px solid var(--gold-200);
    border-radius:var(--radius-s); padding:12px 14px;
    font-size:13px; color:var(--gold-700);
  }
  body[data-page="terms"] .note-box b { color:var(--wood-900); }
  body[data-page="terms"] .warn-box {
    background:var(--ember-wash); border:1px solid #F0CBBB;
    border-radius:var(--radius-s); padding:12px 14px;
    font-size:13px; color:#7E3319;
  }
  body[data-page="terms"] .badge {
    font-size:11px; font-weight:700;
    padding:2.5px 7px; border-radius:2px;
  }
  body[data-page="terms"] .b-halal { background:var(--leaf-wash); color:#26583A; }
  body[data-page="terms"] .b-default { background:var(--teal-100); color:var(--teal-800); }
  body[data-page="terms"] .sum { position:sticky; top:calc(var(--header-h) + 18px); }
  body[data-page="terms"] .sum-card {
    background:var(--cream-50); border:1px solid var(--cream-300);
    border-radius:var(--radius-m); overflow:hidden;
  }
  body[data-page="terms"] .sum-head {
    background:var(--panel-bg); color:var(--panel-fg);
    border-bottom:1px solid var(--panel-border);
    padding:14px 16px; display:flex; align-items:center; justify-content:between;
    justify-content:space-between;
  }
  body[data-page="terms"] .sum-head h2 { font-size:15px; font-weight:700; }
  body[data-page="terms"] .sum-head .cnt { font-size:12px; color:var(--panel-accent); font-weight:600; }
  body[data-page="terms"] .sline { padding:12px 16px; border-bottom:1px solid var(--cream-200); }
  body[data-page="terms"] .sline-top { display:flex; justify-content:space-between; gap:10px; align-items:baseline; }
  body[data-page="terms"] .sline .nm { font-size:13.5px; font-weight:600; }
  body[data-page="terms"] .sline .amt { font-size:13.5px; font-weight:700; }
  body[data-page="terms"] .cfg { margin-top:6px; display:flex; flex-direction:column; gap:4px; }
  body[data-page="terms"] .cfg-row { display:flex; gap:9px; align-items:baseline; }
  body[data-page="terms"] .cfg-row .k {
    flex:none; width:70px; padding-top:1px;
    font-size:10px; font-weight:700;
    color:var(--ink-400);
  }
  body[data-page="terms"] .cfg-row .v { font-size:11.5px; line-height:1.4; color:var(--ink-600); }
  body[data-page="terms"] .cfg-row .up { color:var(--gold-700); font-weight:600; white-space:nowrap; }
  body[data-page="terms"] .cfg-row.note .v { font-style:italic; }
  body[data-page="terms"] .totals { padding:13px 16px; font-size:13.5px; }
  body[data-page="terms"] .trow { display:flex; justify-content:space-between; padding:3px 0; color:var(--ink-600); }
  body[data-page="terms"] .trow .off { color:var(--leaf); font-weight:600; }
  body[data-page="terms"] .trow.grand {
    font-size:18px; font-weight:800; color:var(--ink-900); font-family:var(--font-display);
    padding-top:10px; margin-top:7px; border-top:1px solid var(--cream-300);
  }
  body[data-page="terms"] .saving {
    margin:0 16px 14px; padding:10px 12px;
    background:var(--leaf-wash); border-left:3px solid var(--leaf);
    border-radius:0 var(--radius-s) var(--radius-s) 0;
    font-size:12.5px; color:#26583A;
  }
  body[data-page="terms"] .saving b { font-weight:700; }
  body[data-page="terms"] .saving .fine { display:block; color:#4A7A5C; font-size:10.5px; margin-top:3px; }
  body[data-page="terms"] .vat-note { padding:0 16px 16px; font-size:11px; color:var(--ink-400); text-align:center; }
  body[data-page="terms"] footer {
    background:var(--foot-bg); color:var(--foot-fg); margin-top:44px;
    padding-block:34px calc(26px + env(safe-area-inset-bottom, 0px));
    border-top:3px solid var(--gold-400);
  }
  body[data-page="terms"] .foot-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:26px; }
  body[data-page="terms"] footer h4 { font-size:12px; color:var(--foot-head); margin-bottom:11px; }
  body[data-page="terms"] footer ul { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:7px; font-size:13.5px; }
  body[data-page="terms"] footer a { color:var(--foot-link); text-decoration:none; }
  body[data-page="terms"] footer a:hover { color:var(--foot-link-hover); text-decoration:underline; }
  body[data-page="terms"] .thanks {
    text-align:center; font-family:var(--font-display); font-size:15px;
    color:var(--foot-head); 
    margin-top:24px; font-weight:600;
  }
  body[data-page="terms"] .foot-legal {
    margin-top:20px; padding-top:18px; border-top:1px solid var(--foot-rule);
    font-size:12px; color:var(--foot-dim); display:flex; justify-content:space-between;
    gap:18px; flex-wrap:wrap;
  }
  body[data-page="terms"] .foot-legal .vat { font-variant-numeric:tabular-nums; letter-spacing:0.03em; }
  @media (max-width:900px) {
  body[data-page="terms"] .sum { position:static; } }

  @media (max-width:640px) {
  body[data-page="terms"] .wrap { padding-inline:16px; }
  body[data-page="terms"] .header-inner { gap:10px; padding-block:10px; }
  body[data-page="terms"] .head-mid { order:5; flex-basis:100%; }
  body[data-page="terms"] .btn-ghost .lbl-txt { display:none; }
  }

  @media (prefers-reduced-motion:reduce) {
  body[data-page="terms"] * { animation:none !important; transition:none !important; } }

  body[data-page="terms"] .narrow { max-width:760px; }
  body[data-page="terms"] .prose h2 { font-size:21px; font-weight:700; margin:30px 0 10px; }
  body[data-page="terms"] .prose h3 { font-size:16px; font-weight:700; margin:22px 0 7px; }
  body[data-page="terms"] .prose p,
body[data-page="terms"] .prose li { font-size:15px; color:var(--ink-600); line-height:1.65; }
  body[data-page="terms"] .prose p { margin:0 0 12px; }
  body[data-page="terms"] .prose ul { margin:0 0 14px; padding-left:20px; }
  body[data-page="terms"] .prose li { margin-bottom:6px; }
  body[data-page="terms"] .prose strong { color:var(--ink-900); }
  body[data-page="terms"] .draft {
    background:var(--ember-wash); border:1px solid #F0CBBB;
    border-radius:var(--radius-s); padding:14px 16px;
    font-size:13.5px; color:#7E3319; margin-bottom:22px;
  }
  body[data-page="terms"] .toc { display:flex; gap:8px; flex-wrap:wrap; margin:16px 0 26px; }
  body[data-page="terms"] .toc a {
    font-size:13px; font-weight:600; text-decoration:none; color:var(--teal-700);
    border:1px solid var(--cream-300); border-radius:var(--radius-s);
    padding:7px 12px; min-height:36px; display:inline-flex; align-items:center;
  }
  body[data-page="terms"] .toc a:hover { border-color:var(--teal-600); background:var(--cream-200); }
  body[data-page="terms"] .book-grid { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:26px; align-items:start; }
  @media (max-width:900px) {
  body[data-page="terms"] .book-grid { grid-template-columns:minmax(0,1fr); } }

  body[data-page="terms"] .chips { display:grid; grid-template-columns:repeat(auto-fill,minmax(70px,1fr)); gap:8px; }
  body[data-page="terms"] .chip-b {
    border:1px solid var(--cream-300); border-radius:var(--radius-s);
    padding:11px 6px; min-height:46px; font-size:14px; font-weight:600;
    background:var(--cream-50); color:var(--ink-600);
  }
  body[data-page="terms"] .chip-b:hover { border-color:var(--teal-600); color:var(--ink-900); }
  body[data-page="terms"] .chip-b[aria-pressed="true"] { background:var(--btn-bg); color:var(--btn-fg); border-color:var(--btn-bg); }
  body[data-page="terms"] .chip-b:disabled { opacity:.38; cursor:not-allowed; text-decoration:line-through; }
  body[data-page="terms"] .hours-row { display:flex; justify-content:space-between; gap:16px; padding:8px 0; font-size:14px; }
  body[data-page="terms"] .hours-row + .hours-row { border-top:1px solid var(--cream-200); }
  body[data-page="terms"] .hours-row b { font-weight:600; }
  body[data-page="terms"] .hours-row.today { color:var(--teal-700); font-weight:700; }
  body[data-page="terms"] .story-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:22px; margin-top:8px; }
  body[data-page="terms"] .fact { border-left:3px solid var(--gold-400); padding-left:14px; }
  body[data-page="terms"] .fact b { display:block; font-family:var(--font-display); font-size:25px; font-weight:800; }
  body[data-page="terms"] .fact span { font-size:13.5px; color:var(--ink-600); }

