/* Hallmark · pre-emit critique: P4 H4 E4 S5 R4 V4 */
:root { --paper:#f4f1e8; --ink:#1f2022; --muted:#6b695f; --rule:#c9c1ae; --walnut:#704b32; --orange:#b45f3c; --gold:#c98f2d; --body:Arial,sans-serif; --display:Georgia,serif; --mono:'Courier New',monospace; }
* { box-sizing:border-box; }
html { background:var(--paper); }
body { max-width:78rem; margin:0 auto; padding:0 1.5rem; color:var(--ink); background:var(--paper); font:1rem/1.55 var(--body); }
a { color:inherit; }
img { display:block; width:100%; }
.site-header, footer { display:flex; justify-content:space-between; gap:1rem; padding:1.5rem 0; border-bottom:1px solid var(--rule); font:.72rem var(--mono); }
.site-header a, footer a { text-decoration:none; }
.site-header a:last-child, footer a:last-child { color:var(--walnut); }
.hero { max-width:55rem; padding:clamp(5rem,12vw,10rem) 0 6rem; }
.eyebrow { color:var(--orange); font:.68rem var(--mono); letter-spacing:.17em; text-transform:uppercase; }
h1,h2 { margin:0; font-family:var(--display); font-weight:500; line-height:.98; letter-spacing:-.04em; }
h1 { margin-top:1rem; font-size:clamp(5rem,15vw,12rem); color:var(--walnut); }
.lead { max-width:39rem; margin-top:1.5rem; font:clamp(1.2rem,2.2vw,1.8rem)/1.25 var(--display); }
.note { max-width:28rem; margin-top:2rem; color:var(--muted); }
.journey { padding:2rem 0 7rem; border-top:1px solid var(--rule); }
.section-head { display:grid; grid-template-columns:1fr 2fr; gap:2rem; align-items:end; }
h2 { font-size:clamp(2.2rem,5vw,5rem); }
.journey-hero, .exploded-plate { margin:3rem 0 0; }
.journey-hero img, .exploded-plate img { width:100%; height:auto; }
figcaption { display:flex; gap:.7rem; padding-top:.8rem; font:.72rem var(--mono); text-transform:uppercase; }
.design-study { padding:2rem 0 7rem; border-top:1px solid var(--rule); }
.specs { display:grid; grid-template-columns:1fr 2fr; gap:2rem; margin-top:2.5rem; padding-top:1.5rem; border-top:1px solid var(--rule); }
.specs-intro { max-width:18rem; color:var(--muted); }
.specs dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.2rem 2rem; margin:0; }
.specs dl div { padding-top:.7rem; border-top:1px solid var(--rule); }
.specs dt { color:var(--orange); font:.68rem var(--mono); letter-spacing:.1em; text-transform:uppercase; }
.specs dd { margin:.4rem 0 0; }
.details { display:grid; grid-template-columns:1fr 1fr; gap:3rem; padding:2rem 0 7rem; border-top:1px solid var(--rule); }
.details-copy { max-width:34rem; color:var(--muted); }
.details-copy p + p { margin-top:1.2rem; }
footer { border-top:1px solid var(--rule); border-bottom:0; }
@media (max-width:42rem) { body { padding:0 1rem; } .site-header,footer { flex-direction:column; } .hero { padding-top:4rem; } .section-head,.details,.specs { grid-template-columns:1fr; gap:1rem; } .specs dl { grid-template-columns:1fr; } }
