/* Cool Jewelry Store — "jewellery noir": charcoal canvas, warm gold accent,
   high-contrast serif display, jewel-case restraint. */
:root {
  --bg: #14120f; --fg: #f2ece1; --card: #1c1916; --surface: #1c1916;
  --secondary: #232019; --muted-fg: #a89f92;
  --primary: #b8945f; --primary-fg: #14120f; --accent: #d8b878; --accent-soft: #262017;
  --border: #322c24; --danger: #c8553d; --star: #d8b878;
  --radius: 6px; --radius-sm: 6px; --radius-lg: 10px;
  --serif: "Cormorant Garamond", "Playfair Display", ui-serif, Georgia, serif;
}
body { background: #14120f; color: #f2ece1; font-family: var(--sans); }
h1, h2, h3 { font-family: var(--serif); font-weight: 500; letter-spacing: .01em; }
h1 { font-size: clamp(2.4rem, 5vw, 3.6rem); }
.logo { font-family: var(--serif); font-size: 1.35rem; letter-spacing: .04em; }
.logo .mark { background: transparent; border: 1px solid var(--primary); color: var(--primary); }
header.site { background: rgba(20,18,15,.92); border-bottom: 1px solid var(--border); }
nav.main a { color: #d9d1c4; letter-spacing: .06em; text-transform: uppercase; font-size: .78rem; }
nav.main a:hover, nav.main a[aria-current="page"] { background: #232019; color: var(--primary); }
.topbar { background: #0d0c0a; color: #cbbf9f; letter-spacing: .12em; text-transform: uppercase; font-size: .74rem; }
.hero { background: radial-gradient(900px 340px at 90% -10%, #241f18 0%, transparent 60%); border-bottom: 1px solid var(--border); }
.hero .kicker { background: transparent; color: var(--primary); border: 1px solid var(--border); letter-spacing: .18em; }
.hero .lede { color: #cfc6b6; }
.btn { background: transparent; color: var(--primary); border: 1px solid var(--primary); border-radius: 4px;
  letter-spacing: .1em; text-transform: uppercase; font-size: .8rem; font-weight: 600; }
.btn:hover { background: var(--primary); color: var(--primary-fg); }
.btn.ghost { border-color: var(--border); color: #d9d1c4; }
.pcard .btn.small.wide { background: var(--primary); color: var(--primary-fg); border-color: var(--primary); border-radius: 4px; }
.catcard, .postcard, .pcard, .deal, .tool { background: var(--card); border-color: var(--border); border-radius: 6px; }
.pcard .thumb { background: #ffffff; }
.pcard h3 { font-family: var(--sans); font-size: .92rem; letter-spacing: .01em; }
.pcard .price { font-family: var(--serif); font-size: 1.35rem; color: var(--primary); }
.catcard .ico { background: #232019; color: var(--primary); border-radius: 4px; }
.chip, .hero .kicker { background: transparent; }
.chip { border: 1px solid var(--border); color: var(--primary); }
section.tint { background: #191613; }
footer.site { background: #0d0c0a; color: #b3aa9b; }
footer.site h4 { color: var(--primary); letter-spacing: .16em; }
footer.site a { color: #e8e0d2; }
footer.site .logo .mark { background: transparent; border-color: var(--primary); color: var(--primary); }
.searchbox { background: #1c1916; border-color: var(--border); }
.prose { color: #e8e0d2; }
.answer, .callout.info { background: #1c1916; border-color: var(--border); }
.callout.info > strong, .answer strong { color: var(--primary); }
.prose table th { background: #232019; }
details.faq { background: var(--card); border-color: var(--border); }
.prose blockquote { border-left-color: var(--primary); background: #1c1916; }
