

:root { --ink:#101113; --paper:#eeeae1; --rust:#ad3d2d; --smoke:#777a79; --line:rgba(238,234,225,.22); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--ink); color:var(--paper); font-family:var(--font-sans),Arial,sans-serif; }
a { color:inherit; text-decoration:none; }
.site-header { height:88px; padding:0 5vw; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); position:absolute; inset:0 0 auto; z-index:5; }
.wordmark { font-family:var(--font-display); font-size:2rem; font-weight:600; letter-spacing:-.06em; }.wordmark span,.rust { color:var(--rust); }
nav { display:flex; gap:2.4rem; } nav a,.header-contact { font-family:var(--font-display); text-transform:uppercase; letter-spacing:.12em; font-size:.78rem; } nav a:hover,.header-contact:hover { color:var(--rust); }
.header-contact { border-bottom:1px solid var(--paper); padding-bottom:.25rem; }
.hero { min-height:780px; padding:170px 8vw 90px; display:grid; grid-template-columns:56% 44%; position:relative; overflow:hidden; }
.hero-copy { z-index:2; align-self:center; }.eyebrow { margin:0 0 1.4rem; font-family:var(--font-display); font-size:.72rem; letter-spacing:.22em; text-transform:uppercase; }
h1,h2,h3 { font-family:var(--font-display); text-transform:uppercase; margin:0; line-height:.88; font-weight:500; }
h1 { font-size:clamp(5.8rem,10vw,10rem); letter-spacing:-.055em; } h1 em { color:var(--rust); font-style:normal; }
.hero-deck { max-width:540px; font-size:1.05rem; line-height:1.7; color:#c5c3bc; margin:2.2rem 0 2.6rem; }
.hero-actions { display:flex; align-items:center; gap:2rem; }.button { display:inline-flex; padding:1rem 1.4rem; font-family:var(--font-display); text-transform:uppercase; letter-spacing:.1em; font-size:.78rem; }.button.light { background:var(--paper); color:var(--ink); }.button.dark { background:var(--ink); color:var(--paper); }.button:hover { background:var(--rust); color:white; }
.text-link { font-size:.85rem; border-bottom:1px solid #777; padding-bottom:.4rem; }.text-link span { color:var(--rust); margin-left:.7rem; }
.hero-art { position:absolute; width:48%; height:86%; right:-4%; bottom:-2%; background:linear-gradient(150deg,#292c2d 0 39%,#171819 39% 51%,#7c2e25 51% 52%,#242627 52%); clip-path:polygon(18% 0,100% 0,100% 100%,0 100%); }
.hero-art:after { content:""; position:absolute; inset:0; background:linear-gradient(120deg,transparent 45%,rgba(255,255,255,.08) 46%,transparent 47%); }.road-line { position:absolute; width:2px; height:48%; background:var(--paper); opacity:.65; transform:rotate(23deg); left:56%; top:35%; }
.case-number,.location { position:absolute; font-family:var(--font-display); letter-spacing:.18em; font-size:.62rem; }.case-number { top:9%; right:12%; }.location { right:12%; bottom:8%; line-height:1.7; }.vertical-note { position:absolute; right:2%; top:38%; writing-mode:vertical-rl; font-family:var(--font-display); font-size:.6rem; letter-spacing:.25em; }
.section-label { grid-column:1/-1; display:flex; gap:1rem; align-items:center; border-bottom:1px solid rgba(16,17,19,.25); padding-bottom:1rem; margin-bottom:3rem; }.section-label span { color:var(--rust); }.section-label p { margin:0; text-transform:uppercase; font-family:var(--font-display); letter-spacing:.16em; font-size:.75rem; }
.book-section { background:var(--paper); color:var(--ink); padding:7rem 8vw; display:grid; grid-template-columns:34% 1fr; gap:8vw; }.book-cover { width:min(100%,360px); aspect-ratio:2/3; background:linear-gradient(160deg,#1a1b1d,#343638); color:var(--paper); padding:2rem; display:flex; flex-direction:column; box-shadow:24px 28px 0 #d4cfc4; }.book-cover span,.book-cover i { font-size:.65rem; text-transform:uppercase; letter-spacing:.18em; font-style:normal; }.book-cover strong { margin:auto 0; color:var(--rust); font-family:var(--font-display); font-size:4.5rem; line-height:.78; font-weight:500; }.book-copy { align-self:center; max-width:650px; }.book-copy h2,.about-copy h2,.events-section h2 { font-size:clamp(4rem,7vw,7.2rem); letter-spacing:-.045em; }.book-copy>p:not(.eyebrow),.about-copy>p,.event-empty p { max-width:560px; line-height:1.8; color:#4d4b47; margin:2rem 0; }
.writing-section { padding:7rem 8vw; }.section-heading { display:flex; justify-content:space-between; align-items:end; margin-bottom:4rem; }.section-heading h2 { font-size:clamp(4rem,7vw,7rem); }.section-intro { max-width:410px; line-height:1.7; color:#aaa9a4; }.essay-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); }.essay-card { border-right:1px solid var(--line); }.essay-card:last-child { border:0; }.essay-grid article { min-height:340px; padding:2rem; position:relative; transition:background .2s ease; }.essay-card:first-child article { padding-left:0; }.essay-card:hover article { background:rgba(255,255,255,.035); }.article-no { display:block; color:#666; margin-bottom:4rem; font-family:var(--font-display); }.essay-grid h3 { font-size:2rem; line-height:1.05; margin-bottom:1.4rem; }.essay-grid article>p:last-of-type { color:#777; font-size:.8rem; }.article-arrow { position:absolute; right:2rem; bottom:2rem; color:var(--rust); font-size:1.4rem; }.substack-note { color:#777; font-size:.75rem; margin-top:2rem; }.substack-note a { color:var(--paper); border-bottom:1px solid #555; }
.about-section { background:#d8d3c8; color:var(--ink); padding:7rem 8vw; display:grid; grid-template-columns:42% 1fr; gap:8vw; }.author-portrait { min-height:620px; margin:0; overflow:hidden; background:#242423; clip-path:polygon(0 0,92% 0,100% 100%,8% 100%); }.author-portrait img { width:100%; height:100%; min-height:620px; display:block; object-fit:cover; object-position:50% 35%; filter:saturate(.82) contrast(1.04); }.about-copy { align-self:center; }.about-copy .lead { color:var(--ink); font-size:1.25rem; }.dark-link { border-color:#888; }
.events-section { padding:7rem 8vw; display:grid; grid-template-columns:1fr 1fr; gap:8vw; }.event-empty { border-top:1px solid var(--line); align-self:end; padding-top:2rem; }.event-empty span { font-family:var(--font-display); text-transform:uppercase; letter-spacing:.15em; }.event-empty p { color:#aaa; }.event-empty a { color:var(--rust); font-size:.85rem; }
.contact-section { background:var(--rust); padding:7rem 8vw; text-align:center; }.contact-section h2 { font-size:clamp(4rem,8vw,8rem); }.contact-section>p:not(.eyebrow) { max-width:600px; margin:2rem auto 3rem; line-height:1.7; }.contact-section form { width:min(760px,100%); margin:auto; display:grid; grid-template-columns:1fr 1fr; gap:1.25rem; text-align:left; }.contact-section label { display:grid; gap:.5rem; }.contact-section label span { font-family:var(--font-display); font-size:.7rem; text-transform:uppercase; letter-spacing:.16em; }.contact-section input,.contact-section select,.contact-section textarea { width:100%; background:rgba(16,17,19,.12); border:1px solid rgba(238,234,225,.55); border-radius:0; color:var(--paper); padding:1rem; font:inherit; outline:none; }.contact-section select option { color:var(--ink); }.contact-section input:focus,.contact-section select:focus,.contact-section textarea:focus { border-color:var(--paper); background:rgba(16,17,19,.2); }.contact-section .full { grid-column:1/-1; }.contact-section button { border:0; cursor:pointer; justify-self:start; }.honeypot { position:absolute!important; left:-9999px!important; }.socials { display:flex; gap:.65rem; }.socials span { width:28px; height:28px; border:1px solid #555; border-radius:50%; display:grid; place-items:center; color:var(--paper); text-transform:none; font-size:.72rem; }
footer { padding:2.5rem 5vw; display:grid; grid-template-columns:auto 1fr 1fr auto; align-items:center; gap:2rem; border-top:1px solid var(--line); font-size:.68rem; color:#888; text-transform:uppercase; letter-spacing:.1em; }
@media (max-width:850px) { .site-header nav { display:none; }.hero { min-height:720px; padding:150px 6vw 70px; display:block; }.hero-art { opacity:.42; width:85%; }.vertical-note { display:none; } h1 { font-size:clamp(5rem,20vw,7.5rem); }.hero-deck { max-width:85%; }.book-section,.about-section,.events-section { grid-template-columns:1fr; padding:5rem 6vw; }.book-cover { width:76%; }.section-heading { display:block; }.section-intro { margin-top:1.5rem; }.essay-grid { grid-template-columns:1fr; }.essay-card { border-right:0; border-bottom:1px solid var(--line); }.essay-grid article { padding:2rem 0; min-height:280px; }.author-portrait,.author-portrait img { min-height:460px; }.writing-section,.contact-section { padding:5rem 6vw; } footer { grid-template-columns:1fr 1fr; } }
@media (max-width:520px) { .site-header { height:72px; padding:0 6vw; }.header-contact { font-size:.68rem; }.hero { padding-top:130px; }.hero-actions { align-items:flex-start; flex-direction:column; gap:1.4rem; }.book-cover { width:88%; }.book-copy h2,.about-copy h2,.events-section h2 { font-size:3.8rem; }.contact-section h2 { font-size:3.8rem; }.contact-section form { grid-template-columns:1fr; }.contact-section .full { grid-column:auto; } footer { grid-template-columns:1fr; }.essay-grid h3 { font-size:1.8rem; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

:root{--font-display:'Oswald',Impact,sans-serif;--font-sans:'Inter',Arial,sans-serif}
