/* Rust Jack — the holding page. GENERATED by tools/build-holding.mjs from data/site.json.
   Colour comes from that file's `palette`; nothing here is hand-edited. */

:root {
  --hd-ink: #241d1a;
  --hd-ground: #f2ece4;
  --hd-deep: #3a2a22;
  --hd-accent: #b4552c;
  --hd-rule: #c4a98f;
  --hd-display: "Fraunces", Georgia, "Times New Roman", serif;
  --hd-body: "Inter", -apple-system, system-ui, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }

/* The engine's blocks.css sets body{padding:2rem}, which is right for a demo gallery and wrong for
   a site — it draws a border round the whole page and costs 4rem of a phone screen. Zero it. */
body { margin: 0; padding: 0; background: var(--hd-ground); color: var(--hd-ink);
  font-family: var(--hd-body); line-height: 1.6; }

.qx-container.hd-page { display: flex; flex-direction: column; align-items: center; justify-content: center;
  min-height: 100vh; min-height: 100svh; gap: 1.1rem; text-align: center;
  width: min(44rem, 100% - 2.4rem); margin-inline: auto; padding-block: 3rem; }

.qx-html-content.hd-mark { display: block; line-height: 0; }
.hd-mark-svg { display: block; width: clamp(78px, 16vw, 104px); height: auto; }

.hd-name { font-family: var(--hd-display); font-weight: 700; line-height: 1.05;
  font-size: clamp(2.3rem, 9vw, 4rem); letter-spacing: -.01em; margin: 0; }
.hd-strap { margin: 0; max-width: 38ch; text-wrap: balance; font-size: clamp(1rem, 2.6vw, 1.18rem); color: var(--hd-deep); }

.qx-html-content.hd-rule-host { display: block; line-height: 0; }
.hd-rule { width: 4.5rem; height: 2px; background: var(--hd-rule); border-radius: 2px; }

.hd-line { margin: 0; font-size: .95rem; color: var(--hd-deep); opacity: .85; }
.qx-link.hd-contact { display: inline-flex; align-items: center; min-height: 48px; padding: 0 1.3rem;
  border-radius: 999px; background: var(--hd-deep); color: var(--hd-ground); text-decoration: none;
  font-weight: 600; font-size: .95rem; }
@media (hover: hover) { .qx-link.hd-contact:hover { background: var(--hd-accent); } }
.hd-owner { margin: 0; font-size: .72rem; letter-spacing: .18em; text-transform: uppercase; color: var(--hd-rule); }
