/* Ceric's Homestead — 6 x 9 print stylesheet. Sepia plate + B&W diagram companion look. */
@page {
  size: 6in 9in;
  margin: 0.72in 0.6in 0.72in 0.75in;   /* a touch more on the binding (left) side */
}
:root{
  --paper:#f4ecd8; --ink:#3a2b1a; --dim:#7a6a4a; --sepia:#6b4a2b; --sepia2:#8a6436;
  --line:#c9b791; --rule:#b59a68; --box:#efe3c6; --warn:#7a2d1a;
}
*{ box-sizing:border-box; }
html,body{ margin:0; }
body{
  background:var(--paper); color:#3a2b1a;
  font:11.5pt/1.5 "Iowan Old Style","Palatino Linotype",Georgia,serif;
  -webkit-print-color-adjust:exact; print-color-adjust:exact;
}
/* ---- running heads + page numbers (print) ---- */
.page{ page-break-after:always; position:relative; min-height:7.4in; }
.page:last-child{ page-break-after:auto; }
.chaphead{ font:600 9pt/1 "Oswald",Arial,sans-serif; letter-spacing:.18em; text-transform:uppercase;
  color:#8a6436; border-bottom:1px solid #b59a68; padding-bottom:5px; margin-bottom:14px; display:flex; justify-content:space-between; }

/* ---- project entry ---- */
h1.proj{ font:600 23pt/1.08 "Cormorant Garamond","Palatino Linotype",serif; color:#5a3d1f; margin:.1em 0 .05em; }
.tagline{ font-style:italic; color:#7a5a30; font-size:12pt; margin:0 0 12px; }

/* sepia hero plate */
.plate{ border:1.5px solid #6b4a2b; border-radius:3px; background:#ece0c2; padding:10px;
  margin:12px 0 4px; box-shadow:inset 0 0 0 3px #f4ecd8, inset 0 0 0 4px #6b4a2b; }
.plate svg{ display:block; width:100%; height:auto; }
.plate .cap{ text-align:center; font-style:italic; font-size:9pt; color:#6b4a2b; margin-top:6px; letter-spacing:.02em; }

/* art slot: placeholder until ChatGPT's plate/diagram is dropped in */
.art-slot{ border:1.5px dashed #b59a68; background:repeating-linear-gradient(45deg,#efe3c6,#efe3c6 10px,#f4ecd8 10px,#f4ecd8 20px);
  border-radius:3px; min-height:1.9in; display:flex; align-items:center; justify-content:center; text-align:center;
  color:#8a6436; font:600 9pt/1.4 "Oswald",Arial,sans-serif; letter-spacing:.06em; padding:14px; margin:12px 0 4px; }
.art-slot.wide{ min-height:2.4in; }

/* at-a-glance */
.glance{ display:grid; grid-template-columns:repeat(4,1fr); gap:0; border:1px solid #b59a68; border-radius:4px;
  background:#efe3c6; margin:14px 0; overflow:hidden; }
.glance div{ padding:7px 9px; border-right:1px solid #d8c398; }
.glance div:last-child{ border-right:none; }
.glance b{ display:block; font:600 7.5pt/1 "Oswald",Arial,sans-serif; letter-spacing:.12em; text-transform:uppercase; color:#8a6436; margin-bottom:3px; }
.glance span{ font-size:10pt; }

h2{ font:600 13pt/1.2 "Oswald",Arial,sans-serif; letter-spacing:.04em; color:#6b4a2b; margin:18px 0 6px;
  border-bottom:1px solid #d8c398; padding-bottom:3px; }
p{ margin:0 0 9px; text-align:justify; hyphens:auto; }
ul,ol{ margin:0 0 10px; padding-left:20px; }
li{ margin:4px 0; }
ol.steps{ counter-reset:step; list-style:none; padding-left:0; }
ol.steps > li{ counter-increment:step; position:relative; padding-left:30px; margin:8px 0; }
ol.steps > li::before{ content:counter(step); position:absolute; left:0; top:0; width:21px; height:21px;
  background:#6b4a2b; color:#f4ecd8; border-radius:50%; font:700 10pt/21px "Oswald",Arial,sans-serif; text-align:center; }
.cols{ columns:2; column-gap:22px; }
.cols li{ break-inside:avoid; }

/* B&W working diagram */
.diagram{ border:1px solid #111; background:#fff; padding:12px; margin:14px 0 4px; color:#111; }
.diagram svg, .diagram img{ display:block; width:100%; height:auto; }
.plate img{ display:block; width:100%; height:auto; }
.diagram .cap{ text-align:center; font:600 8.5pt/1.2 "Oswald",Arial,sans-serif; letter-spacing:.06em; text-transform:uppercase; color:#111; margin-top:7px; }

/* safety / tips callouts */
.safety{ border-left:4px solid #7a2d1a; background:#f0e2c8; padding:10px 13px; margin:14px 0; font-size:10.5pt; }
.safety b{ color:#7a2d1a; font:700 9pt/1 "Oswald",Arial,sans-serif; letter-spacing:.1em; text-transform:uppercase; display:block; margin-bottom:4px; }
.tips{ border-left:4px solid #6b4a2b; background:#efe3c6; padding:10px 13px; margin:14px 0; font-size:10.5pt; }
.tips b{ color:#6b4a2b; font:700 9pt/1 "Oswald",Arial,sans-serif; letter-spacing:.1em; text-transform:uppercase; display:block; margin-bottom:4px; }

/* front matter / chapter openers */
.title-page{ text-align:center; padding-top:2.2in; }
.title-page h1{ font:600 40pt/1 "Cormorant Garamond",serif; color:#5a3d1f; margin:0; }
.title-page .sub{ font-style:italic; font-size:15pt; color:#7a5a30; margin-top:14px; }
.title-page .by{ margin-top:1.4in; font:600 11pt/1 "Oswald",Arial,sans-serif; letter-spacing:.2em; text-transform:uppercase; color:#6b4a2b; }
.chapter-opener{ text-align:center; padding-top:1.4in; }
.chapter-opener .num{ font:600 12pt/1 "Oswald",Arial,sans-serif; letter-spacing:.3em; color:#8a6436; }
.chapter-opener h1{ font:600 34pt/1.05 "Cormorant Garamond",serif; color:#5a3d1f; margin:.1em 0 .3em; }
.chapter-opener .blurb{ max-width:4.2in; margin:0 auto; font-style:italic; color:#6b4a2b; }
.toc h1{ font:600 26pt/1 "Cormorant Garamond",serif; color:#5a3d1f; }
.toc .row{ display:flex; justify-content:space-between; border-bottom:1px dotted #c9b791; padding:5px 0; }
.toc .row b{ font-weight:600; }
@media screen { body{ max-width:6in; margin:18px auto; box-shadow:0 0 24px rgba(0,0,0,.25); padding:0.72in 0.6in; } }

/* subtle sticky prev/next chapter nav (screen only; hidden in print) */
.booknav{ position:fixed; top:10px; right:12px; z-index:60; display:flex; gap:4px;
  font:600 9.5px/1 "Oswald",Arial,sans-serif; letter-spacing:.08em; text-transform:uppercase; opacity:.42; transition:opacity .2s; }
.booknav:hover{ opacity:1; }
.booknav a{ color:#5a3d1f; background:rgba(244,236,216,.92); border:1px solid var(--line); border-radius:999px;
  padding:5px 10px; text-decoration:none; }
.booknav a:hover{ background:var(--sepia2); color:#2a2010; border-color:var(--sepia2); }
@media print{ .booknav{ display:none !important; } }
