/* ---------- kavel — auction house & estate sales (bridge 217) ----------------
   STRUCTURAL MOVE — THE RULED LOT COLUMN: the page is a saleroom catalogue, so
   both list runs (eight numbered lots with estimates, six dated calendar rows)
   are ruled with claret hairlines and the lot numbers hang OUTSIDE the rule, in
   the margin, exactly as a printed catalogue sets them. Everything else stays on
   one even paper ground — the alternating tint is switched off so nothing bands
   the catalogue — and containment is broken exactly once, by the video. ---- */
body.t-kavel.ws-body {
  --bg: #f4f0e8; --fg: #3e3a34; --heading: #141312; --text: #3e3a34; --muted: #857e73;
  --kv-claret: #7d2b33; --kv-line: #ddd6c8; --kv-field: #eae4d8;
  --hero-a: rgba(18, 16, 14, .28); --hero-b: rgba(18, 16, 14, .68);
}
/* the bar is transparent over the hero plate and scrolls away with it */
body.t-kavel .ws-nav { position: absolute; top: 0; left: 0; right: 0; background: transparent; backdrop-filter: none; border-bottom: 0; color: #f4f0e8; }
body.t-kavel .ws-brand { font-size: 16px; font-weight: 600; letter-spacing: .3em; text-transform: uppercase; }
body.t-kavel .ws-nav-links { flex-wrap: nowrap; gap: 20px; }
body.t-kavel .ws-nav-links a { color: rgba(244, 240, 232, .78); font-size: 11px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; white-space: nowrap; opacity: 1; }
body.t-kavel .ws-nav-links a:hover, body.t-kavel .ws-nav-links a.on { color: #f4f0e8; border-bottom-color: #f4f0e8; }
body.t-kavel .ws-hero { min-height: 100vh; }
body.t-kavel .ws-hero h1 { font-weight: 500; font-size: clamp(36px, 6.2vw, 70px); letter-spacing: -.02em; max-width: 16ch; }
/* one even paper ground: the zebra tint would band the two list runs */
body.t-kavel .ws-section:nth-child(even):not(.ws-cta):not(.ws-shoplink) { background: none; }
body.t-kavel .ws-h2 { text-align: left; font-weight: 600; font-size: clamp(19px, 2.4vw, 25px); letter-spacing: .02em; margin-bottom: 22px; }
/* THE LOT COLUMN — claret rule between every row, the number hung in the margin */
body.t-kavel .ws-list { padding-left: 0; margin-left: 2.4em; }
body.t-kavel .ws-list li { border-top: 1px solid var(--kv-claret); margin: 0; padding: 15px 0 15px 4px; font-size: 15.5px; line-height: 1.55; color: var(--heading); }
body.t-kavel .ws-list-number li::marker { color: var(--kv-claret); font-size: 12.5px; font-weight: 700; font-variant-numeric: tabular-nums; }
body.t-kavel .ws-list-bullet { list-style: none; margin-left: 0; }
body.t-kavel .ws-story-media img { border-radius: 0; aspect-ratio: 1; }
/* catalogue plates: three across, two deep, portrait, square-cornered */
body.t-kavel .ws-gallery-grid { grid-template-columns: repeat(3, 1fr); gap: 30px 24px; }
body.t-kavel .ws-gallery-item img { border-radius: 0; aspect-ratio: 4 / 5; }
body.t-kavel .ws-features-grid { grid-template-columns: repeat(3, 1fr); gap: 34px 30px; }
/* the archive stays inside the column — four across, welded, no gutter at all */
body.t-kavel .ws-photogrid-grid { max-width: 1120px; margin: 0 auto; padding: 0 22px; grid-template-columns: repeat(4, 1fr); gap: 0; }
/* the one section that leaves the column: edge to edge, no side margin */
body.t-kavel .ws-video .ws-container { max-width: none; padding: 0; }
body.t-kavel .ws-video-frame { border-radius: 0; box-shadow: none; }
body.t-kavel .btn.brand, body.t-kavel .ws-hero-cta.btn.brand { background: var(--kv-claret); color: #f4f0e8; border-radius: 0; box-shadow: none; text-transform: uppercase; letter-spacing: .1em; font-size: 12.5px; }
body.t-kavel .ws-field input, body.t-kavel .ws-field textarea, body.t-kavel .ws-field select { background: var(--kv-field); border: 1px solid var(--kv-line); border-radius: 0; color: var(--heading); }
@media (max-width: 760px) { body.t-kavel .ws-features-grid, body.t-kavel .ws-gallery-grid, body.t-kavel .ws-photogrid-grid { grid-template-columns: repeat(2, 1fr); } }
/* night — the saleroom after the lights go: paper to near-black, claret holds */
html[data-theme="dark"] body.t-kavel.ws-body {
  --bg: #131211; --fg: #b0a89c; --heading: #f4f0e8; --text: #b0a89c; --muted: #7b746a;
  --kv-claret: #a8404a; --kv-line: #2c2823; --kv-field: #1b1917;
  --hero-a: rgba(9, 8, 7, .32); --hero-b: rgba(9, 8, 7, .74);
}
