/* shared tokens for all KOVA variants */
:root{
  --kv-black:#0a0a0a;
  --kv-ink:#0e0e0e;
  --kv-bone:#ece6d8;
  --kv-bone-2:#d8d2c4;
  --kv-paper:#f4efe4;
  --kv-mute:#7a7264;
  --kv-amber:#c8743a;
  --kv-ember:#e85a1c;
  --kv-bottle:#1f3a30;
  --kv-bottle-2:#E83520;
  --kv-line: rgba(236,230,216,.18);
  --kv-line-strong: rgba(236,230,216,.35);
  --kv-grain: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='1.6' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .35 0'/></filter><rect width='100%' height='100%' filter='url(%23n)' opacity='.5'/></svg>");
}
.kv-grain::before{
  content:""; position:absolute; inset:0; pointer-events:none; z-index:2;
  background-image: var(--kv-grain); opacity:.18; mix-blend-mode:overlay;
}
.kv-mono{ font-family: "JetBrains Mono","IBM Plex Mono", ui-monospace, monospace; letter-spacing:.04em; }
.kv-display{ font-family: "Bodoni Moda","Playfair Display", "Times New Roman", serif; font-weight:900; letter-spacing:-.02em; line-height:.86; }
.kv-display-cond{ font-family: "Oswald","Bebas Neue", "Arial Narrow", sans-serif; font-weight:700; letter-spacing:.005em; line-height:.88; }
.kv-grotesk{ font-family: "Inter","Helvetica Neue", Arial, sans-serif; font-weight:400; letter-spacing:0; }
*{ box-sizing:border-box; }
.kv-reset{ margin:0; padding:0; }
.kv-btn{
  display:inline-flex; align-items:center; gap:10px; padding:12px 18px;
  border:1px solid var(--kv-line-strong); border-radius:999px; color:var(--kv-bone);
  text-decoration:none; font-size:11px; letter-spacing:.16em; text-transform:uppercase;
  background: rgba(20,18,14,.4); backdrop-filter: blur(6px);
  transition: background .25s ease, border-color .25s ease, color .25s ease;
}
.kv-btn:hover{ background: var(--kv-bone); color: var(--kv-ink); border-color: var(--kv-bone); }
.kv-btn--solid{ background: var(--kv-bone); color: var(--kv-ink); border-color: var(--kv-bone); }
.kv-btn--solid:hover{ background:transparent; color:var(--kv-bone); border-color:var(--kv-bone); }
.kv-meta{ font-family:"JetBrains Mono", ui-monospace, monospace; font-size:10.5px; letter-spacing:.18em; text-transform:uppercase; color:var(--kv-bone-2); }
.kv-rule{ height:1px; background:var(--kv-line); border:0; margin:0; }
.kv-rule-strong{ height:1px; background:var(--kv-line-strong); border:0; margin:0; }
::selection{ background:var(--kv-amber); color:var(--kv-ink); }
