:root {
  --bg: #f6f3ed;
  --paper: #fff;
  --ink: #24221f;
  --muted: #6a655d;
  --line: #ddd6ca;
  --accent: #4a5e48;
  --accent-dark: #334332;
  --tag: #ece8df;
}
* { box-sizing: border-box; }
body {
  margin: 0; font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink); background: var(--bg); line-height: 1.5;
}
.wrap { width: min(1120px, calc(100% - 32px)); margin: 0 auto; }
.site-header { padding: 54px 0 34px; border-bottom: 1px solid var(--line); }
.eyebrow { text-transform: uppercase; letter-spacing: .14em; font-size: .77rem; color: var(--muted); margin: 0 0 4px; }
h1 { font-family: Georgia, serif; font-size: clamp(2.2rem, 5vw, 4.2rem); margin: 0; font-weight: 500; }
.lead { max-width: 760px; color: var(--muted); font-size: 1.1rem; }
.search-panel {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px;
  background: var(--paper); padding: 22px; margin: 28px 0; border: 1px solid var(--line); border-radius: 12px;
}
.field label, .results-head label { display:block; font-size:.84rem; color:var(--muted); margin-bottom:5px; }
input, select, button {
  width: 100%; min-height: 42px; border: 1px solid var(--line); border-radius: 7px; background: #fff; padding: 8px 10px; font: inherit;
}
.check { grid-column: span 2; display:flex; align-items:center; gap:10px; color:var(--muted); }
.check input { width:auto; min-height:0; }
.actions { display:flex; align-items:end; }
button { cursor:pointer; background:var(--tag); }
.results-head { display:flex; align-items:end; justify-content:space-between; gap:20px; margin: 30px 0 12px; }
.results-head h2 { margin:0; font-family: Georgia, serif; font-weight:500; }
.results-head select { min-width:160px; }
.status { padding: 28px 0; color: var(--muted); }
.results { display:grid; gap: 14px; }
.card {
  display:grid; grid-template-columns: 160px 1fr; background:var(--paper); border:1px solid var(--line); border-radius:12px; overflow:hidden;
}
.datebox { padding:20px; border-right:1px solid var(--line); display:flex; flex-direction:column; gap:2px; }
.datebox strong { font-size:1.05rem; }
.datebox span, .datebox small { color:var(--muted); }
.card-main { padding:20px 22px; }
.card h3 { margin:0 0 4px; font-family:Georgia, serif; font-size:1.35rem; font-weight:500; }
.meta { margin:0 0 12px; color:var(--muted); }
.tags { display:flex; flex-wrap:wrap; gap:7px; margin: 8px 0 13px; }
.tags span, .facts span { background:var(--tag); border-radius:999px; padding:4px 9px; font-size:.82rem; }
.facts { display:flex; flex-wrap:wrap; gap:7px; }
.price-detail { color:var(--muted); font-size:.92rem; }
.links { display:flex; gap:12px; align-items:center; margin-top:14px; }
.links a { color:var(--accent-dark); }
.links .primary { background:var(--accent); color:#fff; text-decoration:none; padding:8px 12px; border-radius:7px; }
.footer { color:var(--muted); font-size:.9rem; padding: 32px 0 50px; }
@media (max-width: 760px) {
  .search-panel { grid-template-columns:1fr; }
  .check { grid-column:auto; }
  .card { grid-template-columns:1fr; }
  .datebox { border-right:0; border-bottom:1px solid var(--line); }
  .results-head { align-items:stretch; flex-direction:column; }
}
