:root { --ink:#202826; --muted:#5f6863; --paper:#f4f1eb; --line:#b8b2a7; --accent:#64786d; }
* { box-sizing:border-box; }
html { background:var(--paper); }
body { margin:0; min-width:320px; color:var(--ink); background:var(--paper); font-family:Georgia, 'Times New Roman', serif; }
.page-shell { width:min(100% - 3rem, 940px); min-height:100svh; margin:auto; padding:clamp(2.25rem, 8vw, 6.8rem) 0 2.5rem; display:flex; flex-direction:column; }
.masthead { border-top:1px solid var(--ink); padding-top:1.1rem; }
.wordmark { margin:0; font-size:clamp(1.75rem, 4vw, 2.7rem); line-height:1; letter-spacing:-.045em; }
.eyebrow, .section-label { margin: .65rem 0 0; color:var(--muted); font-family:Arial, Helvetica, sans-serif; font-size:.68rem; font-weight:600; letter-spacing:.145em; line-height:1.4; text-transform:uppercase; }
.message { max-width:720px; padding:clamp(5.5rem, 13vw, 10rem) 0 clamp(4.75rem, 10vw, 7rem); }
.message h1 { max-width:650px; margin:1rem 0 1.25rem; font-size:clamp(2.65rem, 7.2vw, 5.8rem); font-weight:400; letter-spacing:-.055em; line-height:.96; }
.rule { width:50px; height:1px; margin:2rem 0; background:var(--accent); }
.lede { max-width:575px; margin:0; color:#3d4742; font-size:clamp(1.15rem, 2.2vw, 1.42rem); line-height:1.57; }
.contact { padding-top:2rem; border-top:1px solid var(--line); }
.contact-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; margin-top:1.2rem; }
.contact-item { display:flex; flex-direction:column; gap:.35rem; padding:1.1rem 0; color:var(--ink); text-decoration:none; border-bottom:1px solid var(--line); }
.contact-item span { color:var(--muted); font-family:Arial, Helvetica, sans-serif; font-size:.7rem; letter-spacing:.12em; text-transform:uppercase; }
.contact-item strong { font-size:clamp(1.1rem, 2vw, 1.35rem); font-weight:400; overflow-wrap:anywhere; }
.contact-item:hover strong, .contact-item:focus-visible strong { color:var(--accent); text-decoration:underline; text-underline-offset:.2em; }
footer { margin-top:auto; padding-top:4rem; color:var(--muted); font-size:.97rem; line-height:1.5; }
footer p { margin:.2rem 0; }
@media (max-width:600px) { .page-shell { width:min(100% - 2.25rem, 940px); } .contact-grid { grid-template-columns:1fr; gap:0; } .message { padding-top:4.5rem; } }
